manbet体育手机客户端
古罗比例子的列表
我们建议您从阅读示例的概述开始下一节).但是,如果您想直接研究一个特定的示例,下面是由基本函数组织的Gurobi分布中包含的所有示例的列表。示例的源代码可以通过提供的链接找到,或者在例子
古罗比分布目录。
从文件中读取模型
- lp-一个非常简单的例子,从文件中读取一个连续模型,对其进行优化,并将解决方案写入文件。如果模型不可行,则编写不可约不一致子系统(IIS)。C,c++,c#,Java,Python,R,VB.
- mip2—从文件中读取MIP模型,对其进行优化,然后求解MIP模型的固定版本。C,c++,c#,Java,Python,VB.
构建一个简单的模型
- mip1-建立一个简单的MIP模型,求解它,并打印解决方案。C,c++,c#,Java,MATLAB,Python,R,VB.
- qp-建立一个简单的QP模型,求解它,将其转换为MIQP模型,然后再次求解。C,c++,c#,Java,MATLAB,Python,R,VB.
- qcp-建立并解决一个简单的QCP模型。C,c++,c#,Java,MATLAB,Python,R,VB.
- 双线性-建立和解决一个平凡的双线性模型。C,c++,c#,Java,MATLAB,Python,R,VB.
- 紧急求救信号-建立和解决一个简单的SOS模型。C,c++,c#,Java,MATLAB,Python,R,VB.
- 密集的-求解使用密集矩阵存储的模型。我们不建议使用密集矩阵,但如果您的数据已经是这种格式,那么这个示例可能会有所帮助。C,c++,c#,Java,Python,VB.
- genconstr-演示了简单的通用约束的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
- matrix1-仅用于Python的示例,说明了面向矩阵的Python接口。matrix1.py.
- multiobj演示了多目标优化的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
- 分段-演示分段线性目标函数的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
- gc_pwl-演示分段线性约束的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
- gc_pwl_func-演示函数约束的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
- poolsearch—演示解决方案池的使用。C,c++,c#,Java,MATLAB,Python,R,VB.
一些简单的应用程序
- 饮食-建立和解决经典的饮食问题。演示了模型构建和简单的模型修改——在初始模型求解之后,添加了一个约束来限制乳制品的量。C,c++,c#,Java,MATLAB,Python,R,VB.
- 饮食2,饮食3,饮食4,饮食模型-说明模型数据分离的饮食示例的仅python变体。diet2.py,diet3.py,diet4.py,dietmodel.py.
- 设施-简单的工厂选址模型:给定一组工厂和一组仓库,考虑它们之间的运输成本,本例找到最便宜的工厂以满足产品需求。这个示例演示了MIP启动的使用——该示例计算一个初始的启发式解决方案,并将该解决方案传递给MIP求解器。手机万博登录C,c++,c#,Java,MATLAB,Python,R,VB.
- matrix2-仅用于Python的示例,使用面向矩阵的Python接口解决n-queens问题。matrix2.py.
- netflow-一个只使用python的例子,解决了一个多商品网络流模型。它演示了几种Python建模构造的使用,包括字典、元组、tupledict和tuplelist对象。netflow.py.
- 投资组合-一个仅使用python的示例,解决了一个金融投资组合优化模型,其中使用pandas包存储历史回报数据,使用matplotlib包绘制结果。它演示了pandas、NumPy和Matplotlib与Gurobi的结合使用。portfolio.py.
- 数独-从文件中读取数独谜题数据集,构建MIP模型来求解该模型,求解它,并打印解决方案。C,c++,c#,Java,MATLAB,Python,R,VB.
- workforce1制定和解决劳动力调度模型。如果模型不可行,则示例计算并打印不可约不一致子系统(IIS)。C,c++,c#,Java,MATLAB,Python,R,VB.
- workforce2-加强
workforce1
.这个例子解决了相同的劳动力调度模型,但是如果模型不可行,它将计算IIS,从模型中删除一个相关约束,并重新求解。这个过程不断重复,直到模型变得可行为止。演示约束移除。C,c++,c#,Java,MATLAB,Python,R,VB. - workforce3-一个不同的增强
workforce1
.这个例子解决了相同的劳动力调度模型,但是如果模型不可行,它会在每个约束中添加人工变量,并最小化人工变量的总和。这对应于找到使模型可行所需的右侧向量的最小总变化。演示变量加法。C,c++,c#,Java,MATLAB,Python,R,VB. - workforce4-加强
workforce3
.这个例子解决了相同的劳动力调度模型,但是它从每个约束中的人工变量开始。它首先最小化人工变量的和。然后,引入了一个新的二次目标来平衡工人之间的工作量。演示了多目标函数的优化。C,c++,c#,Java,MATLAB,Python,R,VB. - workforce5-可选的增强
workforce3
.这个例子解决了相同的劳动力调度模型,但是它从每个约束中的人工变量开始。它制定了一个多目标模型,其中主要目标是最小化人工变量的总和(未覆盖的轮班),次要目标是最小化任何一对工人之间的最大轮班数差异。演示了多目标优化。C,c++,c#,Java,MATLAB,Python,R,VB.
说明具体特征
- feasopt-从文件中读取MIP模型,添加人工松弛变量来放松每个约束,然后最小化人工变量的和。函数计算相同的松弛可行性放松特性。该示例通过添加松弛变量演示了简单的模型修改。并给出了可行性松弛特征。C,c++,c#,Java,MATLAB,Python,R,VB.
- lpmethod-演示不同LP算法的使用。从文件中读取一个连续模型,并使用多种算法求解它,报告哪种算法对该模型最快。C,c++,c#,Java,MATLAB,Python,R,VB.
- lpmod演示了LP中高级启动的使用。从文件中读取一个连续模型,求解它,然后修改一个变量边界。然后以两种不同的方式求解得到的模型:从原始模型的解开始,或者从头开始。C,c++,c#,Java,MATLAB,Python,R,VB.
- 参数个数-演示Gurobi参数的使用。从文件中读取MIP模型,然后用四个不同值中的每一个花5秒钟求解模型
MIPFocus
参数。它比较了四种不同运行的最优性差距,并继续使用MIPFocus
产生最小差距的值。C,c++,c#,Java,MATLAB,Python,R,VB. - 灵敏度—MIP敏感性分析。读取一个MIP模型,求解它,然后计算将模型中的每个二进制变量固定为0或1的客观影响。演示多场景特性。C,c++,c#,Java,MATLAB,Python,R,VB.
- 调优—使用参数调优工具搜索已改进的模型参数设置。C,c++,c#,Java,Python,VB.
- fixanddive实现了一个简单的MIP启发式。它从文件中读取MIP模型,放松完整性条件,然后解决放松问题。然后,它选择一组整数变量,这些变量在松弛中取整数或接近整数的值,将它们固定为最近的整数,并再次求解松弛。这个过程不断重复,直到松弛是整数可行或线性不可行的。这个例子演示了不同类型的模型修改(放松完整性条件,改变变量边界,等等)。C,c++,c#,Java,MATLAB,Python,R,VB.
- multiscenario-简单的工厂选址模型:给定一组工厂和一组仓库,考虑它们之间的运输成本,本例找到最便宜的工厂以满足产品需求。由于工厂固定成本和仓库需求是不确定的,因此需要创建多个场景来获取不同的可能值。构建并求解多场景模型,检索并显示不同场景的解。C,c++,c#,Java,Python,VB.
- batchmode-演示批量优化的使用。C,c++,c#,Java,Python,VB.
- workforce_batchmode-仅python的例子,它制定了一个劳动力调度模型。该模型采用批量优化求解。VTag属性用于标识一组变量,这些变量的解决方案信息需要构造调度。workforce_batchmode.py.
更高级的功能