问题标签 [cvxopt]
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.
java - 需要帮助解决一些已知值的最小稀疏线性
我有下面描述的问题
我需要找到 x1'、x2'、x3'、x4'、x5' 的值
(x1-x1')^2+(x2-x2')^2+(x3-x3')^2+(x4-x4')^2+(x5-x5')^2 = 最小值
和
x1' + x2' + x3' + x4' + x5' = 1
x1 + x2 + x3 + x4 + x5 = 1
注意:我们知道a、b、c、d、e、x1、x2、x3、x4、x5的值
在这种情况下有人会帮助我吗?
我曾尝试使用google/or-tools库,但无法添加条件来查找最小值。
python - CVXOPT 要求被忽略
我正在尝试解决 cvxopt 中的二次问题,但似乎忽略了其中一项要求
我想解决这组方程:
这是代码:
但我得到这样的结果:
所以不满足 x <= 20 的要求。可能是什么原因?
python - 用于最小方差优化的 CVXPY 国家/部门/行业等约束
我正在尝试实施一个投资组合优化,它使用约束来定义例如对国家/部门/行业等的最大敞口。我已经实现了下面的代码,其中我传入一个“非洲”向量以将股票映射到非洲国家,在我的然后,我将这些约束限制为总体权重不超过 40%。我设法实现它的唯一方法是在 africa = 1 的索引上使用 sum_weights。我也尝试使用 Parameter 函数但没有成功。希望有一种更优雅的方式来应用这些约束。任何建议表示赞赏。此外,如果有人知道一个显示使用跟踪误差约束、周转约束或波动性约束的示例,那么这些也是我仍在努力解决的问题。
python - Python cvxopt glpk ilp 返回第一个可行解
我正在使用 cvxopt.glpk.ilp 来解决一个非常复杂的混合整数程序。我想知道是否有办法让程序在找到第一个解决方案后终止?这需要很长时间,一个可行的解决方案对我的目的来说可以很好地工作。
python - 如何选择包来解决 Python 中的这种凸优化?
我的问题定义如下,
minΣ(||xi-Xci||^2+ λ||ci||),
st cii = 0,
其中 X 是形状为 d * n 的矩阵,C 是形状为 n * n 的矩阵,xi 和 ci 分别表示 X 和 C 的列。
X在这里是已知的,基于X我们想找到C。
我现在有几个选择,我已经有了 tensorflow 中的版本,它使用AdamOptimizer
. 我只是想知道,有没有什么方法可以更有效地解决这个问题?会cvxpy
或cvxopt
更好地解决这个问题吗?
如果你们中的任何人能给我一个除 tensorflow 之外的任何一种方法的实现,我将不胜感激。
python - 如何在 Windows 10 上安装 CVXOPT for Python 2.7?
最终,我正在尝试为 Python 2.7 安装CVXPY。CVXPY 有一些要求,包括CVXOPT。我尝试了两种方法,从 Gohlke 的网站安装,他在其中托管用于 Python 扩展的 Windows 二进制文件:http ://www.lfd.uci.edu/~gohlke/pythonlibs/并自己从源代码构建。
使用 Gohlke 提供的二进制文件时,尝试在 python 中导入时出现以下错误:
我已检查该base.pyd
文件是否存在于cvxopt/
从源代码构建时,我按照站点的说明进行操作,最终构建 CVXOPT 时python setup.py build --compiler=mingw32
出现以下错误:
我对此进行了一些研究,error: storage size of 't' isn't known
但我无法确定是 CVXOPT 的问题还是 Windows 的问题?
我在 Windows 10 上使用 Python2.7。任何关于其中一些问题的建议或澄清都会很棒。就像我提到的,只是试图让 CVXPY 工作,但似乎挂在 CVXOPT 上。谢谢!
更新
通过卸载我拥有的当前 numpy 版本并从http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy下载/安装 numpy-mkl whl,我能够获得 CVXOPT 的有效安装。然后我也从该站点安装了 CVXOPT 和 CVXPY。最后能够成功导入 cvxpy 而没有 cvxopt.base DLL 错误。
仍然会对我遇到的编译错误感到好奇。
python-2.7 - CVXOPT 中的整数线性规划 (ILP) 函数返回非整数
我想使用 Python 中的 CVXOPT 和 GLPK 实现的 ILP 来优化一个函数。我写了这段代码,但它给了我非整数解,尤其是 0.5。有人可以帮我吗?
python - “病态”凸函数的快速优化
我有一个简单的凸问题,我试图加快解决速度。我正在解决 argmin ( theta )
其中theta和rt是Nx1。
我可以很容易地解决这个问题cvxpy
但是对于更大的R
,这太慢了,所以我正在尝试使用scipy
's 的基于渐变的方法fmin_cg
:
goalfun
是一个scipy.minimize
友好的函数,它返回函数值和梯度。
确保函数和梯度正确:
但是解决这个问题只会产生垃圾,不管method
, 迭代等。(唯一产生的东西Optimization terminated successfully
是 ifx0
实际上等于最佳theta)
即这个看似无害的问题可以cvxpy
轻松处理,但对于非凸求解器来说是完全病态的。这个问题真的那么讨厌,还是我错过了什么?有什么办法可以加快速度?
python - Python 中的 CVXOPT GLPK 绑定
我在 Mac OS X El Capitan 上。brew install GLPK
我已经通过 Anaconda安装了 GLPK 。因为我想要 CVXOPT 的 GLPK 绑定,所以我手动安装它而不是通过condo install
. 我在这里得到了安装程序:http ://cvxopt.org/download/index.html
一旦我得到了安装程序,我就按照这个页面上的说明进行操作:http:
//lecueguillaume.github.io/2016/02/27/cvxopt -glpk-basis-pursuit/
修改 setup.py 文件。我做了一些额外的改变。首先,我注释掉了环境变量,以排除它选择它们而不是我放入文件中的变量的可能性:
接下来我设置了这些变量:
- 如果您正在安装 glpk 模块,请设置为 1。
BUILD_GLPK = 1
- 目录包含
libglpk
(仅在 时使用BUILD_GLPK = 1
)。GLPK_LIB_DIR = '/usr/local/Cellar/glpk/4.57/lib'
- 目录包含
glpk.h
(仅在 时使用BUILD_GLPK = 1
)。GLPK_INC_DIR = '/usr/local/Cellar/glpk/4.57/include'
我的 brew install 给了我 gulp 4.57 而不是教程中的那个,所以我在上面修改了这些版本号。
最后,为了确保它正在运行,我添加了这个:
if BUILD_GLPK
已经在那里,我添加了打印行。
然后我继续跑python setup.py install
看起来很棒:
然而,当我在 python 中运行它时:
我尝试了几种不同的方式卸载和重新安装。这似乎是最有希望的,但我仍然没有运气。有什么建议吗?