问题标签 [convex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6292 浏览

matlab - Matlab中的凸优化

我想解决以下优化问题:

非乳胶:给定 x 和 mu,找到

argmin_p ||xp||_2 st ||p||_2 < 亩。

乳胶:

给定$\mathbf{x}$and $\mu$,找到

这是一个凸集上的凸函数。我一直在使用 Matlab fmincon,但它太慢了。到目前为止,搜索引擎结果给我带来了比我正在寻找的更具理论性的材料。我不是第一个想要解决这个问题的人,而是希望找到一个现有的高效的 Matlab 实现。

0 投票
1 回答
901 浏览

algorithm - 确定点相对于给定 3D 表面的位置

我正在尝试实现用于计算 3D 凸包的快速壳算法。问题是我需要知道一个点是否可以“看到”给定的表面。

该表面具有顺时针或逆时针方向。

我写了一个opengl小程序,以图形方式说明算法操作。

我尝试了我看到其他算法使用的各种方程(归一化叉积,点到平面的距离)

它们都导致在算法中采取了错误的步骤。这意味着他们决定从该点可以看到某个表面(您可以通过图形看到它不是)

表面或“面”的示例。

假设我有两个点,我想知道它们位于表面的哪一侧。

p1 = -1, -1, -1 p2 = 1, 1, 1

任何帮助将非常感激。

0 投票
3 回答
668 浏览

c++ - 检查由 3 个点定义的角度是内角还是外角

给定一组折线,我发现检测角度类型(无论是内部还是外部轴的原点)存在问题。我发现了几十个非常相似的问题,但没有一个能解决我的问题,所以我把它放在这里,希望能有结果。

角度分类

我所拥有的只是一组折线。我需要找到角度(具有接近矩形的给定公差),并将它们分类为内部外部

对于每条折线,我将顶点 3 乘以 3,并且我能够识别中心是否是角度,并将其值测量为 0 到 180 度之间的数字。

现在我需要给这个角度一个方向(比如说一个符号,如果锐角远离原点,则为负,如果指向中心,则为正),我想我会用以下两种方法之一来实现它,但他们都没有工作。

1)只是“二维叉积的符号”(我知道这不是数学上正确的术语):

但它似乎只在左下象限有效,在右上角的工作方式正好相反,而它在其他象限中起作用,我不明白为什么。

2)比较顶点的范数

这仅适用于基本情况,并且总体上没有穿过轴的折线(包含原点)。我可以检查所有情况,但我宁愿避免这种情况。

显然,有更安全的方法,例如检查顶点是否在原点的同一侧,而不是通过位于 2 个向量上的 2 个邻居之间的线。但我需要尽可能优化它。

0 投票
0 回答
126 浏览

optimization - 在线凸编程软件

我正在寻找一种以在线学习方式进行凸优化的软件。当我有新的观察时,我不想从一开始就运行优化程序,而是根据新的观察更新当前模型。关于这个问题的调查可以在http://www.cs.huji.ac.il/~shais/papers/OLsurvey.pdf找到

是否有任何实施良好的软件可以做到这一点?

谢谢,

0 投票
1 回答
788 浏览

math - 将逆时针多边形转换为顺时针多边形

如果我有以下多边形顶点的数组结构(多边形既可以是凸的也可以是凹的):

我可以很容易地判断多边形是顺时针还是逆时针。但是我该如何转换呢?如果我反转数组,它适用于我能想到的示例,但它适用于每个多边形吗?

0 投票
1 回答
971 浏览

algorithm - 为 2d 凸包选择点

我每天做一个算法,最近没有完成这个。

我有一组要绘制的点,现在我想选择成对在它们之间画线,以便完成后它们将形成一个凸包。

我的想法是从 y 坐标最低的那个开始,然后按 CCW 顺序进行,但我不确定如何编写一个好的算法来选择对。

这个问题其实很简单,只是我是初学者:)

0 投票
3 回答
4374 浏览

javascript - 在多边形中找到凸角和凹角

我试图检测任意多边形中的角是凹的还是凸的。我制作了下面的函数来计算所有边对之间的角度。但是,人们永远不知道它返回的是内角还是外角。我不知道该怎么做。任何帮助表示赞赏!!!!

问题

0 投票
1 回答
806 浏览

python - 动态和/或静态直线/正交/XY凸包

我正在寻找一种有效的算法来处理 2D 动态直线凸包

我编写了一个静态算法,虽然它在大多数情况下都有效,但它根本不起作用,所以我也在寻找关于静态直线凸包的资源。维基百科有一些关于算法的研究论文,但我无法访问它们。所以寻找其他来源或帮助编写代码。

任何帮助将不胜感激,Python中的算法,非常感谢。

当前静态代码:

0 投票
3 回答
2758 浏览

c++ - 多边形C++的凸性?

我如何通过知道多边形的点及其在 C++ 中的坐标来测试多边形是否是凸的?

0 投票
2 回答
3778 浏览

c++ - 如何判断三角形网格是否凹?

给定一个三维三角形网格,我怎样才能知道它是凸的还是凹的?有算法可以检查吗?如果是这样,定义公差范围以忽略小凹面将很有用。

凹凸图

图片来源:http ://www.rustycode.com/tutorials/convex.html