首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

「精挑细选」精选优化软件清单

ALGLIB 具有c++和c#接口的双重许可(GPL/commercial)约束二次和非线性优化库。 Altair HyperStudy-实验设计和多学科设计优化。...APMonitor -面向大规模、非线性、混合整数、微分和代数方程的建模语言和优化套件,具有MATLAB、Python和Julia接口。...modeFRONTIER -一个多目标、多学科优化的集成平台,与第三方工程工具无缝耦合,实现设计仿真过程的自动化,便于分析决策。 Maple -线性,二次,非线性,连续和整数优化。约束和无约束。...MOSEK 线性,二次,圆锥和凸非线性,连续和整数优化。 NAG 线性、二次、非线性、线性或非线性函数的平方和;线性、稀疏线性、非线性、有界或无约束;局部和全局优化;连续或整数问题。...The Unscrambler X -产品配方和工艺优化软件。 TOMLAB 支持全局优化,整数规划,所有类型的最小二乘,线性,二次和无约束的MATLAB编程。

5.8K20

【优化1】线性优化

概览 线性化的必要性 非线性条件线性化 绝对值约束 最大最小约束 比例约束 总结 Julia优化例子 Knapsack Diet 概览 线性优化,指的是目标函数和约束条件都是线性的优化问题。...本系列使用的编程语言以及solver如下: 编程语言Julia:是一个由MIT学生开发的高性能动态编程语言,有很多包可以添加来扩充其功能。 优化库JuMP:是Julia的一个包,用于建立优化问题。...solver:Jump支持很多开源与商业的solver,这些solver用于求解优化问题。常用的solver有COIN Clp, COIN Cbc, Gurobi等。...\end{equation} 最大最小约束 最大最小约束(或最小最大约束),可以将优化目标用一个自变量代替,然后补充满足条件的自变量的约束条件即可。...\end{equation} 总结 大部分情况下,非线性的目标函数或者约束都不可以直接转化成线性,只有下面三种除外: 绝对值约束 最大最小约束 比例约束 Julia优化例子 Knapsack using

2.1K90
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    干货 | 运筹学、数学规划、离散优化求解器大PK,总有一款适合你

    支持模型: 该优化引擎用来求解线性规划(LP)、二次规划(QP)、带约束的二次规划(QCQP)、二阶锥规划(SOCP)等四类基本问题,以及相应的混合整数规划(MIP)问题。...支持模型: Gurobi 可以解决的数学问题: l 线性问题(Linear problems) l 二次型目标问题(Quadratic problems) l 混合整数线性和二次型问题(Mixed...二次和锥优化求解器则会以团队已有的DSDP求解器为基础进行二次开发。...开源的求解器国际知名的约有五六个,尤其以德国的SCIP和美国的Coin-OR为线性和整数规划代表,二次规划里Sedumi,SDPT3和DSDP比较优秀。...商业求解器最有名的有四个,美国IBM的CPLEX,Gurobi,英国的Xpress,三家的线性和整数规划求解器基本上从速度和稳定性一直稳居世界前三,丹麦的MOSEK在二次规划和锥优化优势明显。

    26.3K71

    数学规划求解器性能测试之VRPTW

    随着CLPEX、Gurobi等各种求解器的出现和求解性能的不断提升,它们在一定程度上已经成为了部分企业乃至学者的偏爱。 但是,求解器真的有这么厉害吗? 小编认为,求解器还是存在着明显的局限性的。...在基本车辆路线问题(VRP)的基础上,车辆路线问题在学术研究和实际应用上产生了许多不同的延伸和变化型态,包括时窗限制车辆路线问题(vehicle routing problems with time windows...由于VRP问题的持续发展,考虑需求点对于车辆到达的时间有所要求之下,在车辆途程问题之中加入时窗的限制,便成为带时间窗车辆路径问题(VRP with Time Windows, VRPTW)。...带时间窗车辆路径问题(VRPTW)是在VRP上加上了客户的被访问的时间窗约束。在VRPTW问题中,除了行驶成本之外, 成本函数还要包括由于早到某个客户而引起的等待时间和客户需要的服务时间。...Gurobi在两个小时内能成功求解的算例规模只有120-130个点,并没有我们想象中的那么大。在企业应用中,更大规模的VRPTW并不少见,但其求解所需时间却不能在企业所能忍受的范围内。

    3.3K43

    Julia(面向对象)

    但是,我们几乎一直不知不觉地使用了多种调度和方法:与上述+函数一样,Julia的所有标准函数和运算符都有许多方法可以根据参数类型和计数的各种可能组合来定义其行为。...在没有带有类型声明的情况下,默认情况下::方法参数的类型是Any默认的,这意味着它不受约束,因为Julia中的所有值都是抽象类型的实例Any。...> mytypeof(1) Int64 julia> mytypeof(1.0) Float64 正如您可以在类型声明中将子类型约束放置在类型参数上一样(请参见Parametric Types),您也可以约束方法的类型参数...重新定义方法 重新定义方法或添加新方法时,重要的是要意识到这些更改不会立即生效。这是Julia能够静态推断和编译代码以快速运行的能力的关键,而无需通常的JIT技巧和开销。...在这里,g很可能需要后备定义 g(x::A) = x 一个相关的策略,利用promote带x和y通用类型: f(x::T, y::T) where {T} = ... f(x, y) = f(promote

    4.5K40

    课程ENGR108 | 从数学到应用,斯坦福这门课把线性代数彻底讲明白了(附下载)

    书的质量很高,亚马逊和豆瓣都能拿到四星半,评价也有很多赞美之声(亚马逊原价50多刀,美国买书可真是不便宜啊( ̄m ̄) 两位作者分别是美国Stanford和UCLA大学的教授,在学校教授线性代数课程,...神奇的是,书的电子版免费发布在教授的课程页面里了!不仅如此,课件、视频、Julia实现代码等配套学习资源也特别到位。...除此之外,课程还面向全网,开放了全套课程资料: 课件 Slides 视频 Lecture Videos Julia代码 附加习题 还有比这更适合学习的么!...不同于定理证明、矩阵运算的传统内容,这门课程更直观,用非常多的例子和图标,来表示向量、矩阵与复杂世界的关系,并能够解决现实问题。...48-VMLS linear quadrt ctrl L17.2- 线性二次约束 Lecture 49-VMLS lin quadrt st est L17.3- 线性二次约束状态预估 Lecture

    1.2K21

    AI for Science:清华团队提出使用低维优化求解器求解高维大规模优化问题的高效方法

    梯度决策树和大邻域搜索策略的大规模整数规划问题的求解方法,该方法可以有效利用当前免费、开源和低维的学术优化求解器(SCIP)和商用优化求解器(Gurobi免费版)实现对于大规模整数规划问题的高效求解。...实验表明,该框架可以仅使用原问题规模30%大小的求解器解决百万级别的整数规划问题,并且在相同的运行时间下能够得到比商用优化求解器Gurobi和学术优化求解器SCIP更好的结果。...(组合拍卖(CA)、最大独立集(MIS)、最小点覆盖(MVC)和集合覆盖(SC))以及真实互联网领域的实际问题(IP)上进行了测试,学术求解器SCIP 和商用求解器 Gurobi 作为对比的大规模基线求解算法...实验一:相同运算时间下,与SCIP、Gurobi的计算结果对比 实验二:相同优化目标下,与SCIP、Gurobi的计算时间对比 实验三:相同计算时间下,与SCIP、Gurobi的小规模问题求解结果对比...(4)未来在超大规模、多目标、动态、非线性约束等为特征的优化难题上具有高效求解的潜力和应用价值。 合作联络:xuhua@tsinghua.edu.cn 版权声明 版权属于原作者,仅用于学术分享

    1.1K30

    Julia

    但是有一个叫Julia的新成员承诺在不影响数据科学家编写代码和与数据交互的情况下拥有c一样的性能。 我将R与Julia进行了比较,展示了Julia是如何为数据科学社区带来全新的编程思维方式的。...为了评估R,Python和Julia中的不同实现,我生成了一个数据集,该数据集包含1.000.000范围从1到2.000.000的唯一整数,并执行了1.000个从1到1.000的所有整数的搜索。...然而,当转向循环方法时,原生领先了一个数量级……通过使用Numba包添加JIT编译,我给了NumPy第二次机会。...实现 在Julia中,我添加了另外两种风格,以展示本地可用功能的多样性和性能。...Numba仍然在您的Python代码上施加了约束,这使该选项成为一种折衷; 在Python中,最好在原生列表和NumPy数组之间以及何时使用Numba之间进行选择:对于经验不足的人来说,最好的数据结构(

    2.4K20

    开源线性规划求解器(Linear Programming solver)LP_Solve和CLP的PK

    CPLEX可不是open-source的哦,这里主要是作为baseline,这样就可以看看lp_solve和Clp跟目前state of the art commercial solver的差距了。...18.04,lp_solve和clp用的是python调用,而CPLEX还是用Java调用的(别问,问就是使起来顺手),反正这些平台只是起到一个调用的作用,应该不会影响求解的时间(I think so...关于表格一些列的说明: variable: 模型中变量的个数。 constraint: 模型中约束的个数。 non_zero: 约束Ax=b中,矩阵A中非0元素的个数。...clp比lpsolve更稳定一点,得出的所有结果和cplex一致,时间上也低于lpsolve。 不同的地方在表格中已经加粗了。...一些有趣的现象 对于E226.SIF这个case,对比了几个solver,求解结果分别如下: 官方报告的optimal: -18.7519 cplex, gurobi, clp: -11.64 matlab

    7.6K10

    MOSEK,一个专注而卓越的优化求解器(一)

    目前,市面上知名的求解器有IBM旗下的CPLEX、FICO旗下的Xpress、Gurobi、MOSEK等。...其中,丹麦MOSEK ApS公司开发的数学优化求解器MOSEK在求解二次规划、二阶锥和半正定规划等优化问题中,显示出强大的生命力。...MOSEK可以解的数学优化问题非常宽泛(如下表格所示),其中最擅长求解的是二次规划、二阶锥和半正定规划问题,在金融、保险、能源等领域均有应用。...但在二次规划、二阶锥和半正定规划领域,MOSEK能做得比别人好,同时这个市场也给予MOSEK足够的回馈。...这是为何MOSEK对比其他通用商业求解器CPLEX、Gurobi和Xpress以及专项金融求解器Barra、ITG、Axioma,在求解锥优化问题方面效果更突出的重要原因之一。

    7.6K30

    为程序员和新手准备的8大 Python 工具

    而在所有的分支版本中,scikit-learn是最有名的,是开源的,任何人都可以免费地使用这个库或者进行二次开发。...Theano是一个较为老牌和稳定的机器学习python库之一。...你还可以集成 Junit 和 TestNG 等铀工具来管理测试用例并生成报告。 5) Test complete ? 它是支持 Web、移动和桌面自动化测试的自动化比较好的Python 工具之一。...线性规划是研究线性约束条件下线性目标函数的极值问题的数学理论和方法。Python中有许多第三方的工具可以解决这类问题,这里介绍常用的pulp工具包。...而且puLP可以生成 LP 文件,并调用高度优化的solvers、GLPK、COIN CLP/CBC、CPLEX 和 GUROBI 来解决这些线性问题。

    70220

    机器人相关学术速递

    特别是,防御者被指派使用混合整数二次规划(MIQP)拦截攻击者:1)最小化防御者在时间最优控制下捕获攻击者所花费的时间总和,2)帮助消除或延迟防御者在最优轨迹上可能发生的未来冲突。...,该系统在动态空间模型中表示工业室内环境,旨在简化基于位置的服务的开发和提供。...RAIL通过统一的接口集成来自不同传感器模式的数据和其他上下文信息。对其他领域的环境建模方法进行了审查和分析,以确定其是否适合我们目标领域的要求;内部物流和生产。...随后提出了一种新的室内空间数据建模方法和软件系统的体系结构。...在模拟中,我们演示了我们的方法如何有效地近似和评估Gridworld、Cartpole和Reacher环境中一系列策略的性能。

    27210

    用神经网络解决NP-hard的MIP问题

    一个节点有选定变量的域,该域会被约束为大于或等于其父节点处的 LP 松弛值的上限。另一个节点将所选变量的域约束为小于或等于其 LP 松弛值的下限。树被更新,过程再次开始。...n 个变量的集合 {x1,...,xn} 和 m 个约束的集合 {δ1,...,δm} 形成了二部图的两组节点。系数被编码为节点和边的特征。...该方向的大量研究与工程投入都集中在了开发实用求解器上,比如 SCIP、CPLEX、Gurobi 和 Xpress。这些求解器都是使用复杂的启发式算法来指导求解 MIP 的搜索过程。...他们已经在两个数据集上对 Gurobi 与 Neural Diving 进行了部分比较,其中 Gurobi 作为 sub-MIP 的求解器。...对比原始差距在一组保留实例上的平均值,具有并行 sub-MIP 求解的 Neural Diving 在两个数据集上达到 1% 的平均原始间隔比 Gurobi 的时间少 3 倍和 3.6 倍。

    84010

    Julia(数字原语)

    整数和浮点值是算术和计算的基本构建块。这种值的内置表示形式称为数字原语,而整数和浮点数的表示形式作为代码中的立即值称为数字文字。...-bit system: julia> Sys.WORD_SIZE 32 # 64-bit system: julia> Sys.WORD_SIZE 64 Julia还定义了类型Int和UInt,分别是系统的有符号和无符号本机整数类型的别名...数值文字也可以作为括号表达式的系数: julia> 2(x-1)^2 - 3(x-1) + 1 3 此外,带括号的表达式可以用作变量的系数,这意味着表达式与变量相乘: julia> (x-1)x 6 但是...,两个带括号的表达式并列,或者在带括号的表达式之前放置变量都不能用来表示乘法: julia> (x-1)(x+1) ERROR: MethodError: objects of type Int64 are...文字零和一 Julia提供的函数将返回与指定类型或给定变量类型相对应的文字0和1。 类型x或变量类型的文字零x 这些函数在数值比较中很有用,可避免不必要的类型转换带来的开销。

    2K10

    解决中国“卡脖子”问题:研究求解器的少数者

    无论是 SAT 求解器,还是整数规划求解器,都是经典的离散约束算法问题。 求解器在工业发展中的意义非凡。...但随着布尔变元和约束的条件越来越多,SAT 的求解就会越来越难,需要借助算法来进行推理与计算。...只是,在现实生活中,问题建模可能不是线性方程,而是二次方程、三次方程、对数、指数、根号等等,x与y的取值也不仅仅是0或1,可以是任意数,包括整数、正数、实数…… 图 / SAT与混合整数规划(MIP...)、约束整数规划(CIP)及约束规划(CP)的关系 葛冬冬是运筹学出身。...GUROBI 的唯一业务就是开发求解器,他们十分注重这一块,很快超过了CPLEX。随着 IBM 的越发衰落,CPLEX也随之慢慢衰落,美国商用求解器成了 GUROBI 的天下。

    2.8K10

    直观理解:如何推导出KKT条件?

    看图理解 拉格朗日乘子法 里面提到了半正定二次型为什么会出现在凸优化中,以及为什么会有拉格朗日乘子法,主要参考瑞典皇家理工学院非常棒的PPT, 瑞典皇家理工学院:拉格朗日乘子法和KKT条件 PPT下载...- 如何推导得出KKT条件 - 正是在求解凸优化的含不等式约束时,推导出了KKT条件,下面通过图形和符号一步一步推导。 带求解问题 ? ?...f(x) 最小值为 0 ,如下图,同时给出了带约束极小值与无约束一致需要满足的两个条件(第二个条件正是正定二次型) ? 以上情况,我们称此约束失效(not active),如下图所示: ?...为了让以上约束生效,重新定义目标函数: ? 即等同于圆心位置移动: ? 容易看出,如果不带约束,目标函数的最小值位于圆心处取得,但是此处不能满足约束: ?...上式等式正是支持向量机中为什么真正只有两个点起到分类作用的原因 5)半正定二次型约束,等价于凸优化 以上,KKT条件一种直观的推导和理解方法。如果文章觉得有帮助,欢迎点赞。

    3.8K61

    Julia(函数)

    简短,简单的函数定义在Julia中很常见。因此,短函数语法非常惯用,大大减少了打字和视觉噪音。...运算符就是功能 在Julia中,大多数运算符只是支持特殊语法的函数。(例外是具有特殊评估语义的运算符,例如&&和||。...因此,您也可以使用带括号的参数列表来应用它们,就像您将执行其他任何功能: julia> 1 + 2 + 3 6 julia> +(1,2,3) 6 中缀形式与功能应用程序形式完全等效-实际上,前者被解析为内部产生函数调用...这也意味着您可以像使用其他函数值一样分配和传递诸如+()和的运算符*(): julia> f = +; julia> f(1,2,3) 6 但是f,该函数不支持名称前缀。...可以限制作为变量参数传递的值的数量。稍后将在参数约束Varargs方法中对此进行讨论。 另一方面,将可迭代集合中包含的值作为单独的参数“拼接”到函数调用中通常很方便。

    2.8K20

    【综述笔记】一些弱监督语义分割论文

    提出约束到边界损失的损失, 鼓励尊重图像的空间和颜色结构的分割(CRF制作标签). 总的loss为: DCNN是, 是包括背景的所有类集合, 是i图片中存在的类的集合....以网络输出和CRF输出之间的KL散度, 作为边界约束损失: 为了计算全连接的CRF的梯度(从而能正常反馈学习), 作者采用中的代码 思考: 该方法能作为GAP和GMP之间的缓冲区, 是通过排序,幂函数实现的...MIQP)问题, 可以找到全局最优解 目标是让子图内尽可能相似, 同时考虑突出实例的intrinsic properties内在属性....这称为混合整数二次规划(MIQP,mixed integer quadratic program)问题 具体实现方法看原论文....使用IBM-CPLEX来解决图划分过程中的MIQP问题 实验表示整个数据集中的全局对象关系信息在标签分配中很有用,噪声过滤机制进一步提高了分割性能 思考: 文中采用提取出未知类别的实体的mask和边界框

    1.8K20

    Julia(类型系统)

    由于使用了多种语言的通用编程和参数类型种类繁多,我们甚至不会尝试将Julia的参数类型与其他语言进行比较,而是将重点放在自行解释Julia的系统上。...例如,我们可以通过以下方式定义Polar对象的带格式的HTML显示:上标和斜体 julia> Base.show{T}(io::IO, ::MIME"text/html", z::Polar{T}) =...假设我们有一个函数,可以使用二次公式来计算二次方程的两个实根中的较大者: julia> root(a::Real, b::Real, c::Real) = (-b + √(b^2 - 4a*c)) /...2a root (generic function with 1 method) 正如我们期望的那样,我们可以验证的结果root(1, -9, 20)是5.0,因为它5.0是二次方程的两个实根中的较大者...现在假设我们想找到一个二次方程的最大实根,其中系数可能缺少值。数据集中缺少值是现实数据中的常见现象,因此能够处理它们很重要。但是,如果我们不知道所有系数,就无法找到方程式的根。

    5.5K10

    DeepMind用神经网络自动构建启发式算法,求解MIP问题

    人们在研究和工程上的大量努力也研发出了 SCIP、CPLEX、Gurobi 和 Xpress 等实用的求解器。...设 GCN 的输入为图 ,其中 V 为节点集合、ε为边集合、A 为图邻接矩阵。对于 MIP 二部图,V 是 n 个变量节点和 m 个约束节点的并集,大小 N := |V| = n + m。...在 MIP 和 GCN 体系架构中二部图表示的两个关键性质是:(1)网络输出对变量和约束的排列是不变的(2)可以使用同一组参数应用于不同大小的 MIP。...这两个性质很重要,因为变量和约束可能没有任何规范顺序,而且同一应用程序中的不同实例可能具有不同数量的变量和约束。...求解器进行结合:该研究以同样的方式分配变量,但使用 Gurobi 而不是 SCIP 来解决剩下的问题。

    1.3K20
    领券