小编emu*_*ing的帖子

Python中的热启动线性编程?

我正在研究一个中等大小的线性程序(70k x 10k稀疏约束矩阵)并且需要运行大量场景,在我当前的解决时间需要大约2,000个CPU小时.因为变化相对较小(最多改变目标函数的约10%,即c矩阵),使用热启动可以显着加快求解时间,但我无法找到快速热启动LP求解器蟒蛇.

我一直linprog在使用Matlab和Python中的CVXOPT lp求解器,使用CVXOPT中的GLPK单纯形求解器获得最佳性能.但是,即使使用GLPK可以进行热启动,GLPK的CXVOPT包装也不会实现热启动.虽然CVXOPT在其原生求解器中支持热启动,但这明显慢于GLPK中的冷启动.我无法在PuLP中找到热启动选项或在Python模块中找到热启动的其他参考.conelp

有没有人有经验适应/修补CVXOPT用GLPK做热启动,或者可以展示如何在其他Python优化包中做一个热门的开始?

在这里这里已经提出类似的问题,但没有足够的细节来产生有用的答案.

python matlab mathematical-optimization glpk cvxopt

9
推荐指数
0
解决办法
842
查看次数

查找 Javascript 集中的最大/最小值

我正在开发一个 Javascript 和 d3.js 应用程序,我想在其中跟踪上传的数据集中的唯一值。使用新的 Javascript Set 对象之一似乎很有吸引力,但我无法找到一种提取集合的最大值和最小值的好方法。我的代码:

var mySet = new Set();
mySet.add(5);
mySet.add(10);
mySet.add(20);
console.log( d3.max(mySet) );
Run Code Online (Sandbox Code Playgroud)

这产生undefined的不是 20。

我尝试过.elements(),.values().keys()Set 函数,它们将 SetIterator 对象传递给d3.max(),但也返回undefinedArray.fromChrome 目前似乎不支持使用。

有什么建议么?我意识到,随着 Set 对象的推出,这可能是特定于浏览器的;我正在 Chrome v44 上进行开发。我还考虑过使用对象对象作为字典,但也无法找出一种简洁的方法来让 max/min 与该结构一起使用。

编辑:我最初使用数组和数字的混合作为集合元素来问这个问题。仅使用元素时,该问题在 Chrome 中仍然出现,如上所述

javascript d3.js

7
推荐指数
2
解决办法
9559
查看次数