问题标签 [convex-optimization]
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.
python - CVXPY 中的元素乘法
我正在尝试在目标函数中的 CVXPY 中进行逐元素乘法。这是否允许作为凸问题的一部分?
X
是 anx 1 变量。
V
是anxn 常数。
我想做相当于 的np.multiply(X, V*X)
,它返回一个 nx 1 向量。
python - 使用 CVXOPT 进行 Python 二次规划
我正在寻找关于制定具有二次约束的 CVXOPT 二次规划问题的权威指南。这里提供了很好的文件:
我正在处理的问题陈述与这里的问题相同:
矩阵G应该是什么样的?我已经制定了一个线性方程组,但是看看例子这似乎不正确?
我找到的最好的资源是https://courses.csail.mit.edu/6.867/wiki/images/a/a7/Qp-cvxopt.pdf,但最后的链接已经死了,无法阅读。
我有一个 ipython 笔记本试图使用这种编程方法,但它不断失败:https ://gist.github.com/jaredvacanti/62010beda0ccfc20d2eac3c900858e50
编辑:我已经编辑了笔记本中的数据源文件,以提供对该优化问题中使用的真实数据的访问。
python - Why does CVXOPT give a rank error for this nonlinear network flow optimisation?
I'm considering using cvxopt to solve some nonlinear network flow optimisation problems. In order to understand the basics, I am trying it with a very simple test network with just 4 vertices and 5 edges.
My network looks like this. The blue and red nodes are a source and sink respectively.
The cost on each edge is:
where x is the vector containing the flow on each edge, and alpha is some coefficient. My optimisation problem is then:
where E is the edge-arc incidence matrix and b is the vector containing sources and sinks. The matrix-vector equation Ex = b should therefore just enforce Kirchoff's laws (i.e. conservation of flow at each node).
My python script to do this is:
The error I get is:
I am unsure how to proceed from here. I assumed this optimisation problem would be soluble with cvxopt, since it is simple enough to find the optimal flow by hand. I would appreciate it if somebody could tell me how to rectify this code, or else tell me why this type of problem is not suitable for this software.
Thanks in advance.
python - 不能对 PICOS 优化中的矩阵变量施加半正定约束
我正在尝试使用 Picos 包解决以下半定程序。实际上,这是解决 3 个子图情况下的 maxcut 问题的 SDP 松弛。
我得到以下输出:
问题是,虽然我要求 Y 是半正定maxcut.add_constraint(Y>>0)
的,但当我检查它的特征值时,并不是所有的特征值都是非负的。
当我删除对角线 ( 上的约束时maxcut.add_constraint(pic.tools.diag_vect(Y)==1)
,这个问题就解决了。但是,我确实需要这个约束。
如果您能建议我的代码有什么问题,那就太好了...提前谢谢您!
python - 约束不遵循 CVXPY 中的 DCP 规则
我想使用 CVXPY 解决这个问题,但我不知道为什么会收到以下错误消息:
DCPError:问题不遵循 DCP 规则。
我想我的约束不是 DCP。有没有办法在 DCP 中对此进行建模?
machine-learning - 在 C 中实现 LASSO
我试图了解线性回归的 LASSO 算法。我已经使用朴素的坐标下降法实现了算法进行优化。但是,我从代码中获得的系数与从 R 中 LASSO 的“glmnet”包获得的系数不匹配。我想了解如何使算法更准确,以便系数与从R. 我认为他们也使用坐标下降。
注意:我生成了一些带有 11 个观察值和 6 个特征(x,x^2,x^3,...,x^6)的玩具数据。最后一列包含从虚拟函数 (e^(-x^2)) 生成的 y 值。我想用 LASSO 来估计这个函数。另外,我随机选择了初始权重向量,多次交叉检查我的结果。
这是我的代码:
伪代码:
mathematical-optimization - 用于凸优化的 CVXOPT 不收敛
我正在尝试解决以下形式的非线性凸优化问题,并c'x + f(x)
受到一些仿射约束。在此之前,我想确保我可以在没有f(x)
. 由于我有问题的分析一阶和二阶导数,我想用它们来获得更快的结果。我正在尝试使用 cvxopt 来解决问题。我为这个问题编写了以下代码。
但我无法使用 cvxopt 实现此问题的最佳解决方案。如果我使用 cvxopt 的建模功能,我可以轻松解决它。但不幸的是,我不确定我是否可以使用它提供分析一阶和二阶导数。
这是问题的代码
我可能在这段代码中犯了一些错误。任何帮助或指导将不胜感激。
python - 如何计算权重以最小化方差?
给定几个向量:
我想找到每个项目的权重 w1、w2、w3,并得到每个向量的加权和:yi = w1*i1 + w2*i2 + w3*i3
。例如,y1 = 3*w1 + 4*w2 + 6*w3
使这些值(y1,y2,y3,y4)的方差最小化。
注意:w1、w2、w3 应该 > 0,并且w1 + w2 + w3 = 1
不知道应该是什么问题……用python或者matlab怎么解决?
r - Quadprog 违反约束
您好,我正在尝试使用 R 中的 Quadprog 包解决二次约束优化问题。但是,非负约束正在被违反
然而,输出是负面的