问题标签 [cvxpy]

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 回答
1318 浏览

python - 在 CVXPY 中动态生成约束列表

我正在使用 CVXPY 研究 Python 中的最小方差优化问题,该问题接受以下形式的约束

形式w

为了更有效地运行它,我想根据我将存储我的设置的文件动态地创建我的约束列表。读入和创建约束列表工作正常,并使用

表明

但看看它包含的实际条目

而我的是这种格式

用于读取数据的代码是

有谁知道如何做到这一点?问题是在可以使用之前以 CVXPY 的变量格式获取 w。

0 投票
1 回答
741 浏览

python - 使用 CVXPY 最大化斜率

我正在尝试使用 CVXPY 来最大化股票投资组合的夏普比率。

变量 w 是投资组合权重向量,Sigma 是 nxn 相关矩阵,mu - 是每个投资组合股票的平均收益,rf - 无风险利率(标量值)。

起初,我尝试将问题构造为:Maximise((ret-rf)/(sqrt(risk))),这引发了 TypeError: Can only 除以一个标量常数。我尝试通过记录我试图最大化的值来绕过这个问题,但是现在我得到了由“prob.solve()”引发的“无效语法”。我很确定最大化公式引起的问题,但我不确定它是什么。

(我已经尝试了两个 CVXPY 对数公式,即 log_det() 和 log_sum_exp())

下面是代码:

0 投票
1 回答
314 浏览

python - 如何在 CVXPY 中获取变量列表的 2 范数?

我想采用变量列表的 2 范数。如何将序列转换为与 CVXPY 兼容的变量“列表”?有没有办法处理这个?提前致谢。例如,

0 投票
0 回答
987 浏览

python - 安装 CVXpy:编译失败,错误代码 1

我正在尝试在 Ubuntu 14.04 上安装 CVXpy,使用 python 2.7.6,pip 1.5.4。我尝试了这里提出的方式: http ://www.cvxpy.org/en/latest/install/index.html

它运行顺利,直到:我得到错误的nosetests cvxpy:

ImportError:没有名为 canonInterface 的模块

所以我尝试安装包 CVXcanon 但命令 pip install CVXcanon 给出以下错误:

你对如何解决这个问题有什么建议吗?谢谢你。

0 投票
1 回答
625 浏览

python - CVXPY 的最小燃油控制

我想使用 CVXPY 在离散时间解决最小燃料最优控制问题。在连续时间线性系统上使用零阶保持,可以将问题转化为具有凸控制约束的线性程序。我已经使用 Yalmip 和 CVX 等 Matlab 环境完成了这个问题的基本公式,但我无法在 CVXPY 中使用它。我遇到的问题是,即使问题似乎可以编译并完全解决,但输出值显然不满足边界条件,并且在绘制输出时,结果为空。

我附上了代码。问题应该是双积分器的最小燃料控制;我想要一个严格正向和负向的控制信号,每个信号的取值都在 0 和 umax 之间。

这是定义双积分器矩阵的类:

这是主要代码:

非常感谢您的帮助!

0 投票
1 回答
791 浏览

python - 在向量上使用 norm 会导致 CVXPY 中的错误

我现在正在努力处理一些代码。我正在尝试对 2D 轨迹进行凸优化,并尝试将速度差异最小化。问题是当前速度的计算(通过在时间步长 t-1 和 t+1 中使用我的解向量 x),但是当我尝试创建一个使用凸范数方法的新向量时会出现问题

我得到:

任何想法/提示?非常感谢提前

0 投票
1 回答
363 浏览

mathematical-optimization - 使用 CVXPY 的熵最大化无界/不可行

我正在尝试使用 CVXPY 以数值方式解决熵最大化问题。即使问题通过了DCP检查,我仍然得到无限的结果,并且问题状态如不可行和 unbounded_inaccurate(取决于我为参数选择的值)。我设法使用 R 中的 Alabama 等非线性约束优化器解决了同样的问题。下面是一个重现该问题的小示例。

我不太明白为什么 CVX 比其他不是为凸编程问题设计的算法更难解决这个问题。我在编写约束的方式上是否忽略了某些东西?

* 编辑 *

至今没有得到答复,我也会在CVXPY 谷歌群上问这个问题。我会相应地更新这个线程。

0 投票
1 回答
91 浏览

python - 如何设置依赖于临时最小化函数的约束?

我正在尝试设置一个取决于最小化函数值的约束。

我遇到的问题具有以下性质:

fmin = 最小化 (d1x1 +d2x2 ... +d5x5)

我想在以下约束条件下进行优化:

在这种情况下,y1.. yn 是标量常数。

所以我需要以某种方式定义:

x1d1/fmin = y1 作为约束之一。

这里的最优值向量将是 (d1 .. dn)。但是,这也必须满足约束 d1/minimized(d1.. dn) = y1 作为示例。

我应该如何设置?我使用什么样的优化器?

我可以使用 excel 求解器很容易地做到这一点——但现在我想用 python 编写代码。我正在尝试使用 scipy.linprog 但我不确定这是否是线性编程问题或者我是否需要使用另一种方法。我想不出一种方法来为这个问题在 linprog 中设置约束。谁能帮我 ?

0 投票
0 回答
123 浏览

python - 无法运行由 Pyinstaller 编译的 CVXPy 代码的 exe 文件

我编写了一个使用CVXPy库解决优化问题的简单代码。

我想使用PyInstaller创建一个 exe 文件,我的版本是 3.1.1。附上编译过程的日志。编译过程成功完成。

当我尝试执行编译文件时,我收到以下错误消息:

任何人都可以提供一些建议吗?我发现这篇文章可能与该主题相关。

0 投票
1 回答
1787 浏览

python - 如何将 CVXPY 结果转换为 numpy

我在 cvxpy 中定义了一个优化问题,但之后想在 numpy 中处理我的代码中的结果 - 如何将它从 cvxpy 转换为 numpy?

它是类型

如果我想绘制它以查看结果,matplotlib 只显示一个蓝色区域。