给定一个输入值和输出值之间的转换,描述一个数学函数F,优化过程,从若干组可用的备选项中产生和选择一个最优解,在一个允许的**中系统地选择输入值,计算输出函数,在记录过程中找到最佳输出值。很多实际问题都可以用这种方式建模。例如,输入可以是电机的设计参数,输出可以是功耗,或者输入可以是业务选择,输出可以是获得的利润。
优化问题,在这种情况下是最小化问题,可以用以下方式表示。
给定:一个函数f: a {\displaystyle \to}\to R,从**A到实数。
搜索:a中的一个元素x0,使得f(x0)≤f(x)对于a中的所有x。
在连续优化中,A是欧几里德空 Rn的子集,通常由A的成员必须满足的一组约束、等式或不等式来指定。在组合优化中,A是离散空之间的子集,如二进制串、排列或整数集。
优化软件的使用要求函数F用适当的编程语言定义,并在编译或运行时连接到优化软件。优化软件将在A中提供输入值,实现F的软件模块将提供计算值f(x),在某些情况下,它还将提供关于函数的附加信息,如导数。
以这种方式,获得了关注点的明确分离:不同的优化软件模块可以容易地在相同的函数F上测试,或者给定的优化软件可以用于不同的函数F
下表提供了按许可证和业务模型类型组织的值得注意的优化软件列表。
自由和开源软件
应用程序
软件库
专有软件
目标优化建模系统,包括GUI构造工具。
ALGLIB有双许可(GPL/commercial)约束二次和非线性优化库,有c++和c#接口。
牛郎星超研究-实验设计和多学科设计优化。
AMPL是一种用于大规模线性、混合整数和非线性优化的建模语言。
安提戈涅,一个确定性的全局优化MINLP求解器。
一种建模语言和优化套件,用于大规模、非线性、混合整数、微分和代数方程,具有MATLAB、Python和Julia接口。
连续整数规划和混合整数规划的大规模非线性优化。
用于发射、再入和一般空间问题的ASTOS空间轨道优化软件。
BARON代数非线性和混合整数非线性问题的优化。
COMSOL Multiphysics-用于有限元分析、求解和多物理模拟的跨平台软件。
整数、线性和二次规划。
FEA GUI工具箱的FEATool Multiphysics函数multiphysics-MATLAB
整数,线性,二次和非线性规划。
整数、线性和二次规划。
随机规划。
通用代数建模系统。
整数、线性和二次规划。
heemdo-多学科设计优化使用SHERPA、混合和自适应优化算法。
IMSL数值库-线性,二次,非线性和稀疏QP和LP优化算法,由标准编程语言C,Java,c#实现。net,Fortran和Python。
基于自组织的IOSO间接优化是一种多目标多维非线性优化技术。
Kimeme多目标优化和多学科设计优化的开放平台。
LINDO(线性、交互式和离散优化器)软件包,用于线性规划、整数规划、非线性规划、随机规划和全局优化。“什么最好!”Excel加载项使用LINDO执行线性、整数和非线性优化。
lion solver——一款集成软件,用于数据挖掘、分析、建模学习、智能优化和反应式商业智能方法。
mode frontier——多目标多学科优化的集成平台,与第三方工程工具无缝耦合,实现设计和仿真过程的自动化,方便分析和决策。
线性,二次,非线性,连续和整数优化。无拘无束。全局优化和附件工具箱。
MATLAB-优化工具箱中的线性、整数、二次和非线性问题;多极大值、多极极小值和非光滑最优化问题;模型参数的估计和优化。
MIDACO是一个基于进化计算的单目标和多目标优化的轻量级软件工具。用C/ c++和Fortran编写,有Excel、VBA、Java、Python、Matlab、Octave、R、c#和Julia等**。
大规模多变量约束和无约束,线性和非线性,连续和整数优化。
模型中心——集成、自动化和设计优化的图形环境。
莫塞克线性,二次,圆锥和凸非线性,连续和整数优化。
NAG线性、二次、非线性、线性或非线性函数的平方和;线性、稀疏线性、非线性、有界或无约束;以及局部和全局优化;或者连续整数问题。
线性规划,二次规划和非线性规划。
OptimJ基于java的建模语言。高级版包括对Gurobi、Mosek和CPLEX解决方案的支持。
Optimus platform-由noesis solutions开发的流程集成和优化设计平台。
optis lang-基于cae的灵敏度分析、优化和稳健性评估软件解决方案。
OptiY-一个设计环境,为不确定性、可靠性、鲁棒性、敏感性分析、数据挖掘和元建模提供现代优化策略和最先进的概率算法。
OptiStruct屡获殊荣的CAE技术用于概念设计综合和结构优化。
potters wheel-常微分方程的参数估计(MATLAB工具箱,学术免费)。
pSeven & # 8211DATADVANCE公司开发的工程模拟分析自动化、多学科优化和数据挖掘软件平台。
SAS-由SAS高级分析研究所开发的软件套件(统计、预测、机器学习、优化等。)、商业智能、客户智能、数据管理、风险管理等。
S*rtDO智能多学科全局设计优化,专门从事计算机辅助工程(CAE)。使用直接全局搜索方法。
大规模优化问题。
解读器X-产品配方和过程优化软件。
TOMLAB支持全局优化,整数规划,各种最小二乘,线性,二次,无约束MATLAB编程。TOMLAB支持gu、CPLEX、SNOPT、KNITRO和MIDACO等解决方案。
VisSim——用于动态系统模拟和优化的可视化框图语言。
WORHP是用于连续非线性优化的大规模稀疏求解器。
免费软件/免费用于学术用途
高级集成多维建模软件
AMPL
APMonitor-免费学术和商业使用,集成了Julia,Python和MATLAB。
阿斯妥斯
CPLEX
couenne——Eclipse公共许可证下授权的MINLPs确定性全局优化的开源解决方案。
FICO Xpress
加拉哈德图书馆
壁虎蟒
古罗比
LIONsolver
MIDACO是一个基于进化计算的数值优化软件包。
MINTO用分枝定界算法解决整数规划问题;个人使用的免费软件。
MOSEK——大型优化软件。解决线性、二次、二次曲线和凸非线性、连续和整数优化问题。
OptimJ基于java的建模语言;免费版包括对lp_solve、GlpK和LP或MPS文件格式的支持。
PottersWheel-常微分方程的参数估计(学术用免费MATLAB工具箱)。
SCIP-免费提供给非商业和学术机构的成员用于研究目的。
沃赫普