问题标签 [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.
matlab - Matlab中的凸优化
我想解决以下优化问题:
非乳胶:给定 x 和 mu,找到
argmin_p ||xp||_2 st ||p||_2 < 亩。
乳胶:
给定$\mathbf{x}$
and $\mu$
,找到
这是一个凸集上的凸函数。我一直在使用 Matlab fmincon
,但它太慢了。到目前为止,搜索引擎结果给我带来了比我正在寻找的更具理论性的材料。我不是第一个想要解决这个问题的人,而是希望找到一个现有的高效的 Matlab 实现。
algorithm - 确定点相对于给定 3D 表面的位置
我正在尝试实现用于计算 3D 凸包的快速壳算法。问题是我需要知道一个点是否可以“看到”给定的表面。
该表面具有顺时针或逆时针方向。
我写了一个opengl小程序,以图形方式说明算法操作。
我尝试了我看到其他算法使用的各种方程(归一化叉积,点到平面的距离)
它们都导致在算法中采取了错误的步骤。这意味着他们决定从该点可以看到某个表面(您可以通过图形看到它不是)
表面或“面”的示例。
假设我有两个点,我想知道它们位于表面的哪一侧。
p1 = -1, -1, -1 p2 = 1, 1, 1
任何帮助将非常感激。
c++ - 检查由 3 个点定义的角度是内角还是外角
给定一组折线,我发现检测角度类型(无论是内部还是外部轴的原点)存在问题。我发现了几十个非常相似的问题,但没有一个能解决我的问题,所以我把它放在这里,希望能有结果。
我所拥有的只是一组折线。我需要找到角度(具有接近矩形的给定公差),并将它们分类为内部或外部。
对于每条折线,我将顶点 3 乘以 3,并且我能够识别中心是否是角度,并将其值测量为 0 到 180 度之间的数字。
现在我需要给这个角度一个方向(比如说一个符号,如果锐角远离原点,则为负,如果指向中心,则为正),我想我会用以下两种方法之一来实现它,但他们都没有工作。
1)只是“二维叉积的符号”(我知道这不是数学上正确的术语):
但它似乎只在左下象限有效,在右上角的工作方式正好相反,而它在其他象限中起作用,我不明白为什么。
2)比较顶点的范数
这仅适用于基本情况,并且总体上没有穿过轴的折线(包含原点)。我可以检查所有情况,但我宁愿避免这种情况。
显然,有更安全的方法,例如检查顶点是否在原点的同一侧,而不是通过位于 2 个向量上的 2 个邻居之间的线。但我需要尽可能优化它。
optimization - 在线凸编程软件
我正在寻找一种以在线学习方式进行凸优化的软件。当我有新的观察时,我不想从一开始就运行优化程序,而是根据新的观察更新当前模型。关于这个问题的调查可以在http://www.cs.huji.ac.il/~shais/papers/OLsurvey.pdf找到
是否有任何实施良好的软件可以做到这一点?
谢谢,
math - 将逆时针多边形转换为顺时针多边形
如果我有以下多边形顶点的数组结构(多边形既可以是凸的也可以是凹的):
我可以很容易地判断多边形是顺时针还是逆时针。但是我该如何转换呢?如果我反转数组,它适用于我能想到的示例,但它适用于每个多边形吗?
algorithm - 为 2d 凸包选择点
我每天做一个算法,最近没有完成这个。
我有一组要绘制的点,现在我想选择成对在它们之间画线,以便完成后它们将形成一个凸包。
我的想法是从 y 坐标最低的那个开始,然后按 CCW 顺序进行,但我不确定如何编写一个好的算法来选择对。
这个问题其实很简单,只是我是初学者:)
javascript - 在多边形中找到凸角和凹角
我试图检测任意多边形中的角是凹的还是凸的。我制作了下面的函数来计算所有边对之间的角度。但是,人们永远不知道它返回的是内角还是外角。我不知道该怎么做。任何帮助表示赞赏!!!!
python - 动态和/或静态直线/正交/XY凸包
我正在寻找一种有效的算法来处理 2D 动态直线凸包。
我编写了一个静态算法,虽然它在大多数情况下都有效,但它根本不起作用,所以我也在寻找关于静态直线凸包的资源。维基百科有一些关于算法的研究论文,但我无法访问它们。所以寻找其他来源或帮助编写代码。
任何帮助将不胜感激,Python中的算法,非常感谢。
当前静态代码:
c++ - 多边形C++的凸性?
我如何通过知道多边形的点及其在 C++ 中的坐标来测试多边形是否是凸的?
c++ - 如何判断三角形网格是否凹?
给定一个三维三角形网格,我怎样才能知道它是凸的还是凹的?有算法可以检查吗?如果是这样,定义公差范围以忽略小凹面将很有用。