运筹学实验报告范例
运筹学综合实验报告
运筹学综合实验报告本次实验中,我们使用了运筹学的方法来解决了一个经典的优化问题,即整数线性规划问题(Integer Linear Programming,简称ILP)。
一、实验目的本次实验的主要目的是熟悉ILP的求解过程,了解ILP在实际问题中的应用,以及掌握使用现代优化软件Gurobi来求解ILP的方法。
二、实验原理1. 整数线性规划问题整数线性规划问题是在所有线性规划问题中的一个非常重要的子集。
它将优化目标函数的线性组合与整数限制相结合。
一个典型的ILP问题可以被描述为:最大化(或最小化)目标函数:\max(\min) \sum_{j=1}^{n}c_j x_j满足如下的约束条件:\sum_{j=1}^{n}a_{ij} x_j \leq b_i,\ i=1,2,\cdots,mx_j \geq 0,\ j=1,2,\cdots,nx_j \in Z,\ j=1,2,\cdots,nx_j表示自变量,c_j表示目标函数中的系数,a_{ij}表示第i个约束条件中x的系数,b_i表示约束条件的右侧常数,m表示约束条件的数量,n表示变量的数量。
最后两个约束条件要求自变量只能是整数。
2. Gurobi优化软件Gurobi是一个商业优化软件,经过多年的发展,已成为当前最流行的数学优化软件之一。
Gurobi支持多种数学优化方法,包括线性规划、非线性规划、混合整数规划、二次规划等。
Gurobi使用了现代算法来实现高效的求解效果,是工业和学术界备受推崇的优化软件。
三、实验内容1. 利用Gurobi求解整数线性规划问题我们使用Gurobi来求解如下的整数线性规划问题:\max\ \ 2x_1 + 3x_2 + 7x_3满足如下的约束条件:x_1 + x_2 + x_3 \leq 6x_1 - x_2 + x_3 \leq 4x_1, x_2, x_3 \in Z,\ x_1 \geq 0,\ x_2 \geq 0,\ x_3 \geq 0我们使用Python代码来实现该问题的求解过程:```pythonimport gurobipy as gbmodel = gb.Model("integer linear programming")# Create variablesx1 = model.addVar(vtype=gb.GRB.INTEGER, name="x1")x2 = model.addVar(vtype=gb.GRB.INTEGER, name="x2")x3 = model.addVar(vtype=gb.GRB.INTEGER, name="x3")# Set objectivemodel.setObjective(2*x1 + 3*x2 + 7*x3, gb.GRB.MAXIMIZE)# Add constraintsmodel.addConstr(x1 + x2 + x3 <= 6)model.addConstr(x1 - x2 + x3 <= 4)# Optimize modelmodel.optimize()# Print resultsprint(f"Maximum value: {model.objVal}")print(f"x1 = {x1.x}")print(f"x2 = {x2.x}")print(f"x3 = {x3.x}")```运行该代码,得到的输出结果为:```Optimize a model with 2 rows, 3 columns and 6 nonzerosVariable types: 0 continuous, 3 integer (0 binary)Coefficient statistics:Matrix range [1e+00, 1e+00]Objective range [2e+00, 7e+00]Bounds range [0e+00, 0e+00]RHS range [4e+00, 6e+00]Found heuristic solution: objective 9.0000000Presolve time: 0.00sPresolved: 2 rows, 3 columns, 6 nonzerosVariable types: 0 continuous, 3 integer (0 binary)Root relaxation: objective 1.500000e+01, 2 iterations, 0.00 secondsNodes | Current Node | Objective Bounds | WorkExpl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time0 0 15.00000 0 1 9.00000 15.00000 66.7% - 0sH 0 0 14.0000000 15.00000 7.14% - 0s0 0 15.00000 0 1 14.00000 15.00000 7.14% - 0sExplored 1 nodes (2 simplex iterations) in 0.03 secondsThread count was 4 (of 4 available processors)Solution count 2: 14 9Optimal solution found (tolerance 1.00e-04)Best objective 1.400000000000e+01, best bound 1.400000000000e+01, gap 0.0000%Maximum value: 14.0x1 = 2.0x2 = 4.0x3 = 0.0```经过Gurobi的求解,我们得到了最大值为14,同时x_1=2, x_2=4, x_3=0时取到最优值。
运筹学实验报告----向市场运送木材问题
运筹学实验报告----向市场运送木材问题一、实验目的:在用MATLAB 程序设计语言完成单纯形算法求解线性规划问题的基础上,设计程序并建立数学模型,解决现实生活中实际问题。
二、问题陈述:阿拉巴马大西洋公司(Alabama Atlantic )是一个拥有三个木材资源区和五个需要供应的市场的木材公司。
木材资源区1、2、3每年所能够生产的木材量分别为15、20、1500万板英尺(board feet )。
每年市场1、2、3、4、5能够销售的木材量分别为11、12、9、10、800万板英尺。
过去,这个公司通过火车来运输木材。
然而,由于使用火车的运输成本已经上升了,所以可以考虑使用水运的方式来运输其中的一部分木材。
但是这种方式却需要公司要在水运方面进行投资。
使用火车运输的单位成本(单位:1千美元) 使用轮船运输的单位成本(单位:1千美元)出发地 对于向市场运输木材的轮船的单位资金投入(单位:1千美元)1 2 3 4 5 1 275 303 238 ----- 285 2 293 318 270 250 265 3-----283275268240考虑到轮船的预计使用期限(大约30年)和货币的时间价值,年金成本大约是当年投入资金的十分之一。
公司的目标是要制订出一个全面运输计划,使总年金成本最小(包括运输成本)。
1 2 3 4 5 1 31 28 24 ---- 35 2 31 43 28 24 31 3----333632261 2 3 4 5 1 61 72 45 55 66 2 69 78 60 49 56 35966636147现在,如果你是公司管理科学小组的负责人。
那么所需要做的工作是根据下面所给出的三种选择分别制订出这种能够使得年金成本最小的运输计划。
选择l :继续使用火车来运输木材,并仅使用这一种方式。
选择2 :仅使用轮船运输木材(只能使用火车的地方除外)。
选择3 :根据在每一条特定的路线上哪种方式的运输成本比较低来选择使用火车还是轮船来运输木材。
运筹学实践教学报告范文(3篇)
第1篇一、引言运筹学作为一门应用数学分支,广泛应用于经济管理、工程技术、军事决策等领域。
本报告旨在通过运筹学实践教学,验证理论知识在实际问题中的应用效果,提高学生的实践能力和创新能力。
以下是对本次实践教学的总结和反思。
二、实践教学内容1. 线性规划问题本次实践教学选择了线性规划问题作为研究对象。
通过建立线性规划模型,我们尝试解决生产计划、资源分配等实际问题。
- 案例一:生产计划问题某公司生产A、B两种产品,每单位A产品需消耗2小时机器时间和3小时人工时间,每单位B产品需消耗1小时机器时间和2小时人工时间。
公司每天可利用机器时间为8小时,人工时间为10小时。
假设A、B产品的利润分别为50元和30元,请问如何安排生产计划以获得最大利润?- 建模:设A产品生产量为x,B产品生产量为y,目标函数为最大化利润Z = 50x + 30y,约束条件为:\[\begin{cases}2x + y \leq 8 \\3x + 2y \leq 10 \\x, y \geq 0\end{cases}\]- 求解:利用单纯形法求解该线性规划问题,得到最优解为x = 3,y = 2,最大利润为240元。
- 案例二:资源分配问题某项目需要分配三种资源:人力、物力和财力。
人力为50人,物力为100台设备,财力为500万元。
根据项目需求,每种资源的需求量如下:- 人力:研发阶段需20人,生产阶段需30人;- 物力:研发阶段需30台设备,生产阶段需50台设备;- 财力:研发阶段需100万元,生产阶段需200万元。
请问如何合理分配资源以满足项目需求?- 建模:设人力分配量为x,物力分配量为y,财力分配量为z,目标函数为最大化总效用U = x + y + z,约束条件为:\[\begin{cases}x \leq 20 \\y \leq 30 \\z \leq 100 \\x + y + z \leq 500\end{cases}\]- 求解:利用线性规划软件求解该问题,得到最优解为x = 20,y = 30,z = 100,总效用为150。
运筹学实验报告
运筹学实验报告一实验一:线性规划【例l】某制药厂用甲、乙两台机器生产A、B两种药物。
每种药物要经过两道工序,在甲机器上搅拌,在乙机器上包装。
生产每千克药物所需的加工时间以及机器1周可用于加工的总时间如下表1所示。
已知生产每千克药物A的利润是30元,B是25元,问应如何安排1周的生产计划才能使工厂获利最大?表 1 两种药物在各机器上所需加工时间及各机器可用于加工的总时间(1)写出数学模型,建立新问题、输入选项(电子表格、变量取非负连续)、输入数据、存盘、求解模型、结果存盘、观察结果。
(2)将电子表格格式转换成标准模型。
(3)将结果复制到Excel或Word文档中。
(4)分析结果。
解:(1)从已知条件写出该问题的数学模型:max Z=30x1+25x2;2x1+4x2<=40;3x1+2x2<=30;x1>=0,x2>=0.建立新问题、输入选项(电子表格、变量取非负连续)、输入数据、存盘、求解模型、结果存盘、观察结果:求解模型过程Simplex Tableau -- Iteration 1X1 X2 Slack_C1 Slack_C2Basis C(j) 30.0000 25.0000 0 0 R. H. S. RatioSlack_C1 0 2.0000 4.0000 1.0000 0 40.0000 20.0000Slack_C2 0 3.0000 2.0000 0 1.0000 30.0000 10.0000C(j)-Z(j) 30.0000 25.0000 0 0 0Simplex Tableau -- Iteration 1X1 X2 Slack_C1 Slack_C2Basis C(j) 30.0000 25.0000 0 0 R. H. S. RatioSlack_C1 0 2.0000 4.0000 1.0000 0 40.0000 20.0000Slack_C2 0 3.0000 2.0000 0 1.0000 30.0000 10.0000C(j)-Z(j) 30.0000 25.0000 0 0 0Simplex Tableau -- Iteration 3X1 X2 Slack_C1 Slack_C2Basis C(j) 30.0000 25.0000 0 0 R. H. S. RatioX2 25.0000 0 1.0000 0.3750 -0.2500 7.5000X1 30.0000 1.0000 0 -0.2500 0.5000 5.0000C(j)-Z(j) 0 0 -1.8750 -8.7500 337.5000(2)将电子表格格式转换成标准模型。
大学生运筹学实训报告范文
一、引言运筹学是一门应用数学的分支,它运用数学模型、统计方法和计算机技术等工具,对复杂系统进行优化和决策。
为了更好地理解和掌握运筹学的理论和方法,提高实际操作能力,我们开展了大学生运筹学实训。
以下是本次实训的报告。
二、实训目的1. 理解运筹学的基本概念、原理和方法;2. 学会运用运筹学解决实际问题;3. 提高团队协作和沟通能力;4. 培养独立思考和创新能力。
三、实训内容1. 线性规划(1)实训目的:通过线性规划实训,掌握线性规划问题的建模、求解和结果分析。
(2)实训内容:以生产问题为例,建立线性规划模型,运用单纯形法求解最优解。
2. 整数规划(1)实训目的:通过整数规划实训,掌握整数规划问题的建模、求解和结果分析。
(2)实训内容:以背包问题为例,建立整数规划模型,运用分支定界法求解最优解。
3. 非线性规划(1)实训目的:通过非线性规划实训,掌握非线性规划问题的建模、求解和结果分析。
(2)实训内容:以旅行商问题为例,建立非线性规划模型,运用序列二次规划法求解最优解。
4. 网络流(1)实训目的:通过网络流实训,掌握网络流问题的建模、求解和结果分析。
(2)实训内容:以运输问题为例,建立网络流模型,运用最大流最小割定理求解最优解。
5. 概率论与数理统计(1)实训目的:通过概率论与数理统计实训,掌握概率论与数理统计的基本概念、原理和方法。
(2)实训内容:以排队论为例,建立概率模型,运用排队论公式求解系统性能指标。
四、实训过程1. 组建团队,明确分工;2. 针对每个实训内容,查阅相关资料,了解理论背景;3. 根据实际问题,建立数学模型;4. 选择合适的算法,进行编程实现;5. 对结果进行分析,总结经验教训。
五、实训成果1. 理解了运筹学的基本概念、原理和方法;2. 掌握了线性规划、整数规划、非线性规划、网络流和概率论与数理统计等运筹学工具;3. 提高了团队协作和沟通能力;4. 培养了独立思考和创新能力。
六、实训心得1. 运筹学是一门实用性很强的学科,它可以帮助我们解决实际问题,提高工作效率;2. 在实训过程中,我们要注重理论联系实际,将所学知识应用于实际问题的解决;3. 团队协作和沟通能力在实训过程中至关重要,要学会与团队成员共同进步;4. 实训过程中,我们要敢于尝试,勇于创新,不断提高自己的实践能力。
运筹学实验报告
1、实验目的和任务训练建模能力.应用EXCEL建模及求解的方法应用;通过实验进一步掌握运筹学有关方法原理、求解过程,提高学生分析问题和解决问题能力。
2、实验仪器、设备及材料计算机、Excel3、实验内容、炼油厂的生产计划问题例一炼油厂的生产计划某炼油厂的工艺流程图如图 1-1所示。
炼油厂输入两种原油(原油 1和原油2)。
原油先进入蒸馏装置,每桶原油经蒸馏后的产品及份额见表1-1,其中轻、中、重石脑油的辛烷值分别为90、80和70。
石脑油部分直接用于发动机油混合,部分输入重整装置,得辛烷值为115的重整汽油。
1桶轻、中、重石脑油经重整后得到的重整汽油分别为、、桶。
蒸馏得到的轻油和重油,一部分直接用于煤油和燃料油的混合,一部分经裂解装置得到裂解汽油和裂解油。
裂解汽油的辛烷值为105。
1桶轻油经裂解后得桶裂解油和桶裂桶汽油;1桶重油裂解后得桶裂解油和桶裂解汽油。
其中裂解汽油用于发动机油混合,裂解油用于煤油和燃料油的混合。
渣油可直接用于煤油和燃料油的混合,或用于生产润滑油。
1桶渣油经处理后可得桶润滑油。
混合成的高档发动机油的辛烷值应不低于 94,普通的发动机油辛烷值不低于84。
混合物的辛烷值按混合前各油料辛烷值和所占比例线性加权计算。
规定煤油的气压不准超过 1kg/cm2,而轻油、重油、裂解油和渣油的气压分别为、、和0.05kg/cm 2。
而气压的计算按各混合成分的气压和比例线性加权计算。
燃料油中,轻油、重油、裂解油和渣油的比例应为 10:3:4:1。
已知每天可供原油1为20000桶,原油2为30000桶。
蒸馏装置能力每天最大为45000桶,重整装置每天最多重整10000桶石脑油,裂化装置能力每天最大为8000桶。
润滑油每天产量就在500~1000桶之间,高档发动机油产量应不低于普通发动机油的40%。
又知最终产品的利润(元 /桶)分别为:高档发动机油700,普通发动机油600,煤油400,燃料油350,润滑油150,试为该炼油厂制定一个使总盈利为最大的计划。
运筹学实验报告
运筹学实验报告实验目的:了解及掌握运筹学一些常用软件,如excel,WinQsb:实验步骤1用Excel求解数学规划例:求max=2x1+x2+x34x1+2x2+2x2≥42x1+4x2≤204x1+8x2+2x3≤4步骤:1.输入模型数据制E3的公式到E4-E6:3.从“工具”菜单中选择“规划求解”,将弹出的“规划求解参数”窗口中的目标单元格设为$E$3,可变单元格设为$B$2:$D$2,目标为求最大值: 4.添加约束:由于本例的约束条件类型分别为<=、>=和=,因此要分3次设置,每次设置完毕后都要单击“添加”按钮,如下图。
添加完成后选择“确定”返回。
5.单击“选项”按钮,将“规划求解选项”窗口中的“采用线性模型”和“假定非负”两项选中后点“确定”返回,设置好参数的界面如下图:6.单击“求解”按钮,得到问题的最优解为:x1 =1,x2=0,x3=0,max Z=2。
2.winQSB求解线性规划及整数规划[例]求解线性规划问题:Minz=2x1—x2+2x32x1+2x2+x3=43x1+x2+x4=6第1步:生成表格选择“程序,生成对话框:第2步:输入数据单击“OK”,生成表格并输入数据如下第3步:求解):x1,x2,x3决策变量(Decision Variable最优解:x1=2,x2=0,x3=0目标系数:c1=2,c2= -1,c3=2最优值:4;其中x1贡献4、x2,x3贡献0;检验数(Reduced Cost):0,0,1.75。
目标系数的允许减量(Allowable Min.c[j])和允许增量(Allowable Max.c[j]):目标系数在此范围变量时,最优基不变。
约束条件(Constraint):C1、C2;左端(Left Hand Side):4,6右端(Right Hand Side):4,6松驰变量或剩余变量(Slack or Surplus):该值等于约束左端与约束右端之差。
运筹学实验报告(14p)
工商管理学院2019-2020学年第二学期《管理运筹学》课程实验报告专业班级:工商管理1402学号:2019年6月30日【实验1:线性规划】(1) 对以下问题进行求解:12121212212max 32262+812,0z x x x x x x x x x x x =++≤⎧⎪≤⎪⎪-+≤⎨⎪≤⎪≥⎪⎩************************************************************************求解结果:结果分析:(1) 该问题的最优解为: 当x1=3.3333,x2=1.3333时, 此问题有最有解,max z=12.6667(2) 4个约束条件的右端项分别在什么范围变化,问题最优基不变: 当问题最优基不变时,4.0000>=b1<=7.0000 6.0000>=b2<=12.0000 -2.0000>=b3<=M1.3333>=b4<=M完成时间:2020/6/30 8:30:39************************************************************************(2)通过对以下问题的分析,建立线性规划模型,并求解:某工厂要用三种原材料C、P、H混合调配出三种不同规格的产品A、B、D。
已知产品的规格要求,产品单价,每天能供应的原材料数量及原材料单价分别见下表1和2。
该厂应如何安排生产,使利润收入为最大?************************************************************************建立的线性规划模型为:用i=1,2,3分别代表原材料C,P,H,用j=1,2,3分别代表A,B,C三种产品,设xij为生产第j 种产品使用的第i种原材料的质量。
Maxz=50*(x11+x21+x31)+35*(x12+x22+x32)+25*(x13+x23+x33)-65*(x11+x12+x13)-25*(x21+x22+x23)-35*(x31+x32+x33)x11>=0.5*(x11+x21+x31)x21<=0.25*(x11+x21+x31)x12>=0.25*(x12+x22+x32)x22<=0.5*(x12+x22+x32)xij>=0(i=1,2,3,j=1,2,3)生产A 种产品用C 0.5千克,P 0.25千克,H为60千克,B种产品用C 0. 25千克,P 0.5千克,H 0千克,不生产C产品时利润最大为903.7500元完成时间:2020/6/30 09:11************************************************************************【实验2:运输问题与指派问题】(1)对以下运输问题进行求解:************************************************************************ 求解结果与分析:完成时间:2020/6/30************************************************************************(2)对以下运输问题进行求解:设有三个化肥厂(A, B, C)供应四个地区(I, II, III, IV)的农用化肥。
运筹学实验报告
《运筹学》实验报告指派问题班级:姓名:学号:指导教师:《运筹学》实验报告(一)一.实验目的熟练的掌握整数规划,0-1规划问题的数学模型的建立于求解和数据分析二.实验要求利用EXCEL软件求解整数规划和0-1规划模型三.实验准备Pc486微机、Windows环境、Excel软件四.实验内容及步骤实验内容:某公司面临5项任务,计划派甲、乙、丙、丁、戊分别去做。
由于戊临时被公司派往国外,因此公司只有让甲、乙、丙、丁中的一个人同时担任两项任务,其他三人仍旧单独完成一项任务。
各人完成相应任务时间如下表。
请为公司制定一个总工时最小的指派方案。
实验内容分析:本题中研究的是制定一个总工时最小的工作任务分配方案即本题是一个0-1规划问题。
又本题中是四个员工五个任务的不平衡的分配任务,所以可以有增加虚拟人物的方式来解决不平衡问题也可以直接用抽屉原则来解决不平衡问题。
方法一:(虚拟人物法)建立数学模型:变量:甲员工做A任务为X11,甲员工做B任务为X12,甲员工做C任务为X13,甲员工做D任务为X14,甲员工做E任务为X15,乙员工做A任务为X21,乙员工做B任务为X22,乙员工做C任务为X23,乙员工做D任务为X24,乙员工做E任务为X25,丙员工做A 任务为X31,丙员工做B任务为X32,丙员工做C任务为X33,丙员工做D任务为X34,丙员工做E任务为X35,丁员工做A任务为X41,丁员工做B任务为X42,丁员工做C任务为X43,丁员工做D任务为X44,丁员工做E任务为X45,虚拟员工做A任务为X51,虚拟员工做B任务为X52,虚拟员工做C任务为X53,虚拟员工做D任务为X54 ,虚拟员工做E任务为X55目标:总工时最小的人员安排方法约束:每人(包括虚拟人物)只能做一项任务即决策变量的0-1约束。
规划模型如下:MINZ(x)=25X11+29X12+31X13+42X14+37X15+39X21+38X22+26X23+20X24 +33X25+34X31+27X32+28X33+40X34+32X35+24X41+42X42+36X43+23X44+45X45+24X51+27X52+26X53+20X54+32X55X11+ X21+ X31+ X41+ X51=1X12+ X22+ X32+ X42+ X52=1X13+ X23+ X33+ X34+ X35=1X14+ X24+ X34+ X44+ X45=1X15+ X25+ X35+ X45+ X55=1 s.t. X11+ X12+ X13+ X14+ X15=1X21+ X22+ X23+ X24+ X25=1X31+ X32+ X33+ X34+ X35=1X41+ X42+ X43+ X44+ X45=1X51+ X52+ X53+ X54+ X55=1X ij=0或1(i=0-5,j=0-5)用EXCEL求解上式,过程如下:输入效率矩阵、方案矩阵和约束条件单元格公式:求解参数对话框如图所示:最终结果为:最小总工时131甲做A任务乙做C任务和D任务丙做E任务丁做B任务方法二:(抽屉原则法)建立数学模型:设甲员工做A任务为X11,甲员工做B任务为X12,甲员工做C任务为X13,甲员工做D任务为X14,甲员工做E任务为X15,乙员工做A任务为X21,乙员工做B任务为X22,乙员工做C任务为X23,乙员工做D任务为X24,乙员工做E任务为X25,丙员工做A任务为X31,丙员工做B任务为X32,丙员工做C任务为X33,丙员工做D任务为X34,丙员工做E任务为X35,丁员工做A任务为X41,丁员工做B任务为X42,丁员工做C任务为X43,丁员工做D任务为X44,丁员工做E任务为X45。
运筹学实验报告_7
运筹学实验(注: 此代码还有一些未完善的地方, 仅供参考, 此实验报告纯属个人意见, 同样仅供参考。
话说一样的内容多了老师会发现的)一、实验目的通过实验熟悉单纯形法的原理, 掌握matlab循环语句的应用, 提高编程的能力和技巧, 体会matlab在进行数学求解方面的方便快捷。
二、实验环境Matlab2012b,计算机三、实验内容(包含参数取值情况)构造单纯形算法解决线性规划问题Min z=cxs.t. Ax=bxj>=0,j=1,…,nfunction[S,val]=danchun(A1,C,N)S为最优值;Val为最优解;A1为标准形式LP问题的约束矩阵及最后一列为资源向量(注: 资源向量要大于零);A1=[A+b]C是目标函数的系数向量;C=cN为初始基的下标(注: 请按照顺序输入, 若没有初始基则定义N=[]):先输入A1,C,N三个必要参数,然后调用danchun(A,C,N)进行求解。
在此函数中,首先判断N的长度是否为空,若为空,则flag=1, 进入初始解问题的迭代求值,添加辅助问题, 构建单纯形表, 求g所对应的RHS值,若其>0,则返回该问题无解若其=0, 则返回A1,Z,N三个参数, 继续构造单纯形表求解A1为经过变换后的系数及资源向量Z为单纯形表的第一行N为经过辅助问题求解之后的基的下标否则,直接构建单纯形表, 对该问题进行求解, 此时flag=2,多次迭代后找到解。
另外,若在大于零的检验数所对应的系数均小于零时, 会显示“此问题无界”若找到最优解和最优值时, 会输出“val”和“S=”以及具体数值。
四、源程序function[S,val]=danchun(A1,C,N)if(length(N)==0)gN=zeros(1,length(A1(:,1)));gC=[-C,gN,0];%原文题的检验数的矩阵Z=gC;G=[zeros(1,length(C)),-ones(1,length(gN)),0];val=zeros(1,length(C));%val为最优解;for i=(length(C)+1):length(C)+length(A1(:,1))%生成基变量gN(i-length(C))=i;endNn=gN;%%%%%%%ll=zeros(1,length(N));%比值最小原则%生成除了最上端两行的表的矩阵gb=A1(:,length(C)+1);A1(:,length(C)+1)=[];l=zeros(length(gN),length(gN));gA=[A1,l,gb];for i=1:length(gb)gA(i,gN(i))=1;endfor i=1:length(gN)%J为基本可行基所对应的检验数J(i)=G(gN(i));endfor i=1:length(gN)%找到基本可行基的检验数, 将其赋值为0 if(J(i)~=0)G=G-(J(i)/gA(i,gN(i)))*gA(i,:);endendflag=1;elseflag=2;A=A1;Z=[-C,0];%单纯形表的第一行val=zeros(1,length(C));%val为最优解;ll=zeros(1,length(N));%比值最小原则end%%初始解问题while flag==1for i=1:length(gN)%J为基本可行基所对应的G的检验数J(i)=G(gN(i));JZ(i)=Z(gN(i));%JZ为基本可行基所对应的Z的检验数endfor i=1:length(gN)%找到基本可行基的检验数, 将其赋值为0 if(J(i)~=0)G=G-(J(i)/gA(i,gN(i)))*gA(i,:);Z=Z-(JZ(i)/gA(i,gN(i)))*gA(i,:);endendG1=G;%G1为检验数G1(:,length(G1))=[];D=max(G1);%找到检验数的最大值if(D<=0)%检验数都小于0if(G(length(G))>=1)disp('此情况无解');flag=0;elseif(G(length(G))>=0)for i=1:length(gN)if(max(gN)<=length(A1(1,:)));flag=2;for j=1:length(Nn)a=Nn(1);gA(:,a)=[];Z(a)=[];endA=gA;N=gN;break;endendendendelse%检验数大于0for i=1:length(G)if(G(i)==D)%找到最大的那个检验数所对应的元素for j=1:length(gN)if(gA(j,i)>0)ll(j)=gA(j,length(G))/gA(j,i);%求比值elsell(j)=10000;endendd=min(ll);for k=1:length(ll)%找到进基和离基if(ll(k)==d)gN(k)=i;gA(k,:)=gA(k,:)/gA(k,i);for m=1:k-1gA(m,:)=-(gA(m,i)/gA(k,i))*gA(k,:)+gA(m,:);endfor n=k+1:length(ll)gA(n,:)=-(gA(n,i)/gA(k,i))*gA(k,:)+gA(n,:);endbreak;endendendendendendwhile(flag==2)for i=1:length(N)%J为基本可行基所对应的检验数J(i)=Z(N(i));endfor i=1:length(N)%找到基本可行基的检验数, 将其赋值为0if(J(i)~=0)Z=Z-(J(i)/A(i,N(i)))*A(i,:);endendZ1=Z;%Z1为检验数Z1(:,length(Z1))=[];D=max(Z1);%找到检验数的最大值if(D<=0)%检验数都小于0disp('已找到最优解和最优值')for i=1:length(N)val(N(i))=A(i,length(Z));endS=Z(length(Z));disp('val');disp(val);flag=0;else%检验数大于0for i=1:length(Z)if(Z(i)==D)%找到最大的那个检验数所对应的元素for j=1:length(N)if(A(j,i)>0)ll(j)=A(j,length(Z))/A(j,i);%求比值elsell(j)=10000;endendd=min(ll);if(d==10000)disp('此问题无界')flag=0;break;endfor k=1:length(ll)%找到进基和离基if(ll(k)==d)N(k)=i;A(k,:)=A(k,:)/A(k,i);for m=1:k-1A(m,:)=-(A(m,i)/A(k,i))*A(k,:)+A(m,:);endfor n=k+1:length(ll)A(n,:)=-(A(n,i)/A(k,i))*A(k,:)+A(n,:);endbreakendendendendendend五、运行结果与数据测试参考例题:例1:Min z=3x1+x2+x3+x4 s.t. -2x1+2x2+x3=43x1+2x+x4=6Xj>=0,j=1,2,3,4例2: 初始解问题Min z=5x1+21x3 s.t. x1-x2+6x3-x4=2x1+x2+2x3-x5=1 xj>=0,j=1,…,5六、求解实际问题(即解决附件中的实验题目)实验题目列出下列问题的数学模型, 并用你自己的单纯形算法程序进行计算, 最后给出计算结果。
运筹学实验报告六综合类问题
2018-2019学年第一学期《运筹学》实验报告(六)班级:交通运输171学号:1700000000女姓名: *****日期:2018.12.26实验一:一、问题重述一汽车厂生产小、中、大三种类型的汽车,已知各类型每辆车对钢材、劳动时间的需求、利润以及每月工厂钢材、劳动时间的现有量如下表所示。
试问如何制定月生产计划,使工厂的利润最大。
优的生产计划应作何改变?二、模型假设及符号说明模型一:设该汽车厂生产小、中、大型的汽车数量分别为X1, X2, X3;记总利润为z;模型二:在模型一的符号假设基础上增设y i, y2, y3,分别表示是否生产小、中、大型的汽车,若生产,则为1,若不生产,则为0;三、数学模型模型一:max z 2x1 3x2 4x31.5x i 3x2 5x3 600乩* 280x1250x2400x360000.x2,x30,且均为整数模型二:max z 2x1 3x2 4x3f1 .5 x1 3 x 2 5 x 3600280 x! 250 x 2400 x 360000S.t. x i 1000 y ix i 80 y ii x i均为整数,y j 0或1,i 1,2 ,3四、模型求解及结果分析根据模型一运行结果分析可得:当生产小型车64辆、中型车168辆时,该汽车厂所得利润最大,此时为632万元;根据模型二运行结果分析可分:当生产小型车80辆、中型车150辆时,该汽车厂在该前提下所得利润最大,此时为610万元。
五、附录(程序)模型一运行程序:max=2*x1+3*x2+4*x3; 1.5*x1+3*x2+5*x3<=600;280*x1+250*x2+400*x3<=60000; @gin (x1); @gin (x2); @gin (x3); end模型一运行结果:Global optimal soluti on found. Objective value: Objective bound: In feasibilities:Exte nded solver steps: Total solver iteratio ns:VariableValue Reduced Cost X1 64.00000 -2.000000 X2168.0000 -3.000000 X30.000000-4.000000Row Slack or Surplus Dual Price1632.0000 1.000000 2 0.000000 0.000000 380.00000 0.000000模型二运行程序:max=2*x1+3*x2+4*x3; 1.5*x1+3*x2+5*x3<=600; 280*x1+250*x2+400*x3<=60000; x1>=80*y1; x1<=1000*y1; x2>=80*y2; x2<=1000*y2; x3>=80*y3; x3<=1000*y3;@gi n (x1); @gi n (x2); @gi n (x3); @bin (y1); @bin (y2);@bin (y3);End模型二运行结果:Global optimal soluti on found. Objective value: 610.0000 Objective bou nd: 610.0000 In feasibilities:0.000000632.0000 632.0000 0.000000《运筹学》实验报告Variable Value Reduced Cost X1 80.00000 -2.000000 X2 150.0000 -3.000000 X3 0.000000 -4.000000 Y1 1.000000 0.000000 Y2 1.000000 0.000000 Y30.0000000.000000Row Slack or Surplus DualPrice 1 610.0000 1.000000 2 30.00000 0.000000 3 100.0000 0.000000 4 0.000000 0.000000 5 920.0000 0.000000 6 70.00000 0.000000 7 850.0000 0.000000 8 0.000000 0.000000 90.0000000.000000Exte nded solver steps:Total solver iteratio ns:0 15实验二:一、问题重述某架货机有三个货舱:前舱、中舱、后场。
哈工大运筹学实验报告实验
哈工大运筹学实验报告实验实验一:货物运输问题的数学建模与求解实验目的:1.了解货物运输问题的数学建模方法;2.掌握货物运输问题的线性规划求解方法;3.学会使用运筹学软件求解货物运输问题。
实验原理:货物运输问题属于线性规划问题的一种,其目标是在满足供需平衡和运输容量限制的前提下,使运输成本最小化。
实验内容:1.问题描述:公司有m个供应点和n个需求点,其中每个供应点的供应量为si (i=1,2,…,m),每个需求点的需求量为dj (j=1,2,…,n)。
公司希望通过运输将货物从供应点送到需求点,各供应点到需求点的单位运输成本为aij (i=1,2,…,m; j=1,2,…,n)。
公司希望确定每个供应点与需求点之间的货物运输量xij,以及总运输成本C,使总运输成本最小。
2.数学建模:设xij表示从第i个供应点到第j个需求点的货物运输量,C表示总运输成本,则该问题的数学模型可以描述为:min C = ∑(i=1 to m) ∑(j=1 to n) aij * xijsubject to:∑(j=1 to n) xij = si, i=1,2,…,m∑(i=1 to m) xij = dj, j=1,2,…,nxij ≥ 0, i=1,2,…,m; j=1,2,…,n3.求解方法:利用运筹学软件求解上述线性规划问题,得到最优解。
实验步骤:1.在运筹学软件中新建一个线性规划模型;2.设定决策变量、目标函数和约束条件,并输入相应参数;3.运行求解算法,得到最优解。
实验结果:根据实验步骤,通过运筹学软件求解货物运输问题,得到最优解如下:供应点1到需求点1的运输量为x11=200;供应点1到需求点2的运输量为x12=150;供应点2到需求点1的运输量为x21=100;供应点2到需求点2的运输量为x22=250;总运输成本最小为C=900。
实验总结:通过本次实验,我了解了货物运输问题的数学建模方法,并掌握了线性规划求解的基本步骤。
运筹学综合性实验报告
ni 200 ( xi1 xi 2 ) 2 x ik 0, i 1,2,3,4,5,6; k 1,2
(二)用 LINGO 中来求解线性规划问题 打开 LINGO,创建一个新文件,输入以下代码[备注:其中@gin 中是对变量进行整数约束] :
max=30*(y1+y2+y3+y4+y5+y6)-1500*(p1+p2+p3+p4+p5+p6)-1000*(d1+d2+d3+d4+d5+d6)-5*(kc 1+kc2+kc3+kc4+kc5+kc6)-2000*(x1+x2+x3+x4+x5+x6); x0=4; p1-d1=x1-x0; p2-d2=x2-x1; p3-d3=x3-x2; p4-d4=x4-x3; p5-d5=x5-x4; p6-d6=x6-x5; kc0=0; kc1=y1+kc0-500; kc2=y2+kc1-600; kc3=y3+kc2-300; kc4=y4+kc3-400; kc5=y5+kc4-500; kc6=y6+kc5-800; y1<=100*x1;y2<=100*x2;y3<=100*x3;y4<=100*x4;y5<=100*x5;y6<=100*x6;y1+y2+y3+y4+y5+y 6<=3100; @gin(y1);@gin(y2);@gin(y3);@gin(y4);@gin(y5);@gin(y6);@gin(x1);@gin(x2);@gin(x3);@ gin(x4);@gin(x5);@gin(x6);
运筹学实践教学报告模板(3篇)
第1篇一、引言运筹学作为一门应用广泛的学科,其核心在于运用数学模型和算法解决实际问题。
为了更好地理解和掌握运筹学的理论和方法,本次实践教学报告以XX项目为例,详细阐述运筹学在实际问题中的应用过程。
二、项目背景与目标1. 项目背景XX项目是XX公司为提高生产效率、降低成本而提出的一个优化问题。
公司现有生产线,由于设备老旧、工艺流程不合理等原因,导致生产效率低下,成本较高。
为了解决这一问题,公司决定运用运筹学方法进行生产线优化。
2. 项目目标通过运筹学方法,对XX项目生产线进行优化,实现以下目标:- 提高生产效率,降低生产周期;- 降低生产成本,提高企业经济效益;- 优化生产线布局,提高生产线柔性。
三、运筹学方法选择与应用1. 方法选择针对XX项目的特点,本次实践选择了以下运筹学方法:- 线性规划(Linear Programming,LP)- 整数规划(Integer Programming,IP)- 模拟退火算法(Simulated Annealing,SA)2. 方法应用(1)线性规划首先,根据XX项目实际情况,建立了线性规划模型。
模型中包含决策变量、目标函数和约束条件。
通过求解线性规划模型,得到了最优的生产方案,包括各设备的生产能力分配、生产顺序安排等。
(2)整数规划由于部分设备的生产能力为整数,因此采用整数规划方法对模型进行改进。
通过求解整数规划模型,进一步优化了生产方案,使得设备利用率达到最大化。
(3)模拟退火算法为了提高生产方案的鲁棒性,采用模拟退火算法对优化后的生产方案进行全局搜索。
通过模拟退火算法,得到了一组更加优化的生产方案,提高了生产线的柔性。
四、结果与分析1. 结果经过运筹学方法的应用,XX项目生产线优化取得了以下成果:- 生产效率提高了XX%;- 生产周期缩短了XX天;- 生产成本降低了XX%;- 生产线柔性得到了显著提高。
2. 分析(1)线性规划方法的应用使得生产线设备利用率得到最大化,从而提高了生产效率;(2)整数规划方法的应用确保了设备生产能力的合理分配,避免了生产过程中的资源浪费;(3)模拟退火算法的应用使得生产方案具有更好的鲁棒性,提高了生产线的柔性。
运筹实验报告--样板
实验一线性规划-生产计划1.1实验目的·理解线性规划的概念。
·建立线性规划问题的数学模型。
·把线性规划数学模型转化为ILOG OPL模型进行求解。
1.2实验指导1.2.1案例内容派公司是一个生产高尔夫器材的小型公司,公司决定生产高中价位的高尔夫袋。
分销商对新产品十分感兴趣,并且同意买进派公司下3个月内的全部产品。
在对整个高尔夫袋生产步骤进行了详细的调查以后,管理阶层明确了高尔夫袋的生产过程:(1)切割并印染原材料(2)缝合(3)成型(插入支撑架、球棒分离装置等)(4)检测和包装生产制定者详细分析生产过程的每一步,得出以下结论,生产一个标准高尔夫袋需要用:0.7小时完成切割并印染原材料,用0.5小时完成缝合,用1小时完成成型,用0.1小时检测和包装。
生产高级袋则需要:用1小时完成切割和印染,用0.8小时完成缝合,用0.7小时完成成型,用0.25小时检测和包装。
生产信息列于下表:表1.1 生产每个高尔夫袋所需要的时间生产耗时部门标准袋高档袋切割并印染原材料0.7 1缝合0.5 0.8成型 1 0.7检测和包装0.1 0.25派公司的生产还受各个部门生产能力的限制。
经过对整个生产部门工作量的研究。
生产制定者分析得出,3个月内每个部门的最大生产时间分别是:切割印染630小时,缝合600小时,成型708小时,检测包装135小时。
会计部门经过对生产数据、各种生产成本的分析得出了以下的结论,生产一个标准袋的利润是10美元,生产一个高级袋的利润是9美元。
问:派公司如何制定生产计划,使公司获得最大利润(不考虑产量是否是整数)。
1.2.2问题分析目标本题的目标就是使产品的利润最大。
约束条件对于生产时间来说,一共有4个约束条件,它们制约着两种高尔夫袋的生产。
约束条件 1 用于切割和印染的总时间必须小于等于切割和印染部所能承受的最大工作时间。
约束条件2 用于缝合的总时间必须小于等于缝合部所能承受的最大工作时间。
运筹学案例分析报告示例
食油生产问题(案例一)分析报告一、模型构造1.1 变量设置设两种硬质油代号分别为HD1、HD2(HD代表Hard),三种软质油代号分别为SF1、SF2、SF3(SF代表Soft)。
每种油的采购(Buy)、耗用(Use)和储存(Store)量分别在油品的代号前加B、U和S表示。
1—6月份5种油品的采购、耗用和储存量分别在油品代号后面加1—6表示。
总产量用PROD(Product)表示。
第一种硬质油六个月的采购量、耗用量、月末储存量共有17变量,其中,六月末的存储量为500吨。
BHD11,BHD12,BHD13,BHD14,BHD15,BHD16;UHD11,UHD12,UHD13,UHD14,UHD15,UHD16;SHD11,SHD12,SHD13,SHD14,SHD15;第二种硬质油六个月的采购量、耗用量、月末储存量共有17变量,其中,六月末的存储量为500吨。
BHD21,BHD22,BHD23,BHD24,BHD25,BHD26;UHD21,UHD22,UHD23,UHD24,UHD25,UHD26;SHD21,SHD22,SHD23,SHD24,SHD25;第一种软质油六个月的采购量、耗用量、月末储存量共有17变量,其中,六月末的存储量为500吨。
BSF11,BSF12,BSF13,BSF14,BSF15,BSF16;USF11,USF12,USF13,USF14,USF15,USF16;SSF11,SSF12,SSF13,SSF14,SSF15;第二种软质油六个月的采购量、耗用量、月末储存量共有17变量,其中,六月末的存储量为500吨。
BSF21,BSF22,BSF23,BSF24,BSF25,BSF26;USF21,USF22,USF23,USF24,USF25,USF26;SSF21,SSF22,SSF23,SSF24,SSF25;第三种软质油六个月的采购量、耗用量、月末储存量共有17变量,其中,六月末的存储量为500吨。
运筹学线性规划方案实验报告
运筹学线性规划方案实验报告一早起床,我就知道今天要写一份运筹学线性规划方案实验报告。
这个题目听起来就有点头疼,不过没关系,我已经有10年的方案写作经验了,这就好比家常便饭,慢慢来,一点一点梳理。
得给这个实验报告起个响亮的名字,我已经想好了——“最优解寻迹之旅”。
咱们就直接进入主题吧。
1.实验背景这次实验的背景是我国一家生产多种产品的企业。
这家企业生产的产品有A、B、C三种,分别需要经过甲、乙、丙三个车间进行加工。
每个车间都有一定的生产能力和生产成本,而企业的目标是最大化利润。
这就需要我们运用线性规划的方法,找出最优的生产方案。
2.实验目的本次实验的目的就是通过线性规划方法,为企业制定出最优的生产方案,使得企业在现有的生产条件下,实现利润最大化。
3.实验方法线性规划,听起来高大上,其实原理很简单。
就是用一组线性方程,来描述各种约束条件,然后找到一个目标函数,使得这个目标函数在满足约束条件的情况下达到最大值或最小值。
甲车间:A产品需要1小时,B产品需要2小时,C产品需要3小时,总时间为8小时;乙车间:A产品需要2小时,B产品需要1小时,C产品需要2小时,总时间为10小时;丙车间:A产品需要3小时,B产品需要2小时,C产品需要1小时,总时间为12小时。
然后,我们需要确定目标函数。
企业的目标是最大化利润,所以我们的目标函数就是:f(A,B,C)=10A+15B+20C其中,A、B、C分别表示三种产品的产量。
就是求解这个线性规划问题。
我们可以使用单纯形法、内点法等算法求解。
这里,我们选择使用单纯形法。
4.实验步骤(1)列出约束条件方程组;(2)确定目标函数;(3)使用单纯形法求解线性规划问题;(4)分析求解结果,确定最优生产方案。
5.实验结果A产品产量:4件B产品产量:3件C产品产量:2件将这个结果代入目标函数,我们可以得到最大利润为:f(4,3,2)=104+153+202=110所以,最优生产方案是生产4件A产品、3件B产品和2件C产品,最大利润为110。
运筹学实验报告(一)线性规划问题的计算机求解-(1)
运筹学实验报告(一)线性规划问题的计算机求解-(1)-CAL-FENGHAI.-(YICAI)-Company One1运筹学实验报告实验课程:运筹学实验日期: 任课教师:王挺第五种方案0 3 0 0第六种方案0 1 1 3第七种方案0 0 2 1设:第i种方案需要的钢管为Xi根(其中i=1,2...6),可得:minz=X1+X2+X3+X4+X5+X6+X7解:model:min= X1+X2+X3+X4+X5+X6+X7;3*X1+2*X2+2*X3+X4>=100;X2+2*X4+3*X5+X6>=150;X3+X6+2*X7>=120;endObjective value: 135.0000Infeasibilities: 0.000000Total solver iterations: 2Variable Value Reduced CostX1 0.000000 0.2500000X2 0.000000 0.1666667X3 50.00000 0.000000X4 0.000000 0.8333333E-01X5 50.00000 0.000000X6 0.000000 0.1666667X7 35.00000 0.0000004人力资源分配问题某昼夜服务的公交线路每天各时间段内所需司机和乘务人员人数如表1所示。
班次时间所需人数班次时间所需人数1 6:00~10:00 60 4 18:00~22:00 502 10:00~14:00 70 5 22:00~2:00 203 14:00~18:00 60 6 2:00~6:00 30设司机和乘务人员分别在各时间段开始时上班,并连续工作8小时,问该公交线路应怎样安排司机和乘务人员,既能满足工作需要,又使配备司机和乘务人员的人数最少?5投资计划问题某地区在今后三年内有四种投资机会,第一种是在3年内每年年初投资,年底可获利润20%,并可将本金收回。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
吉林工程技术师范学院应用理学院
运筹学实验报告
整数线性规划
专业:数学与应用数学专业
班级: 0941班
姓名:张国钢丁雪晴赵海迪
郑权水程龙闫杰
学号: 25 02 08 22 23 14 指导教师:王忠文
应用理学院数学与应用数学专业
2011-12-6
实验目录
一、实验目的 (3)
二、实验要求 (3)
三、实验类型 (3)
四、需用仪器设备 (3)
五、实验步骤 (3)
实验一LINGO软件包的使用方法 ............................................................. 错误!未定义书签。
实验二MA TLAB优化工具箱使用方法 ..................................................... 错误!未定义书签。
实验三线性规划问题实例........................................................................... 错误!未定义书签。
实验四整数线性规划问题实例.. (4)
实验五非线性规划问题实例....................................................................... 错误!未定义书签。
六、实验总结 (5)
一、实验目的
掌握建立线性规划、整数规划问题、非线性规划问题数学模型的方法;
熟练地使用LINDO软件包及MATLAB求规划问题。
二、实验要求
1.利用LINGO软件求解简单的线性规划、整数规划、非线性规划模型。
2.利用MA TLAB求解简单的线性规划、整数规划、非线性规划模型。
三、实验类型
综合性实验
四、需用仪器设备
pc 486微机、windows环境、LINGO软件、MA TLAB软件。
五、实验步骤
1.通过教材所附光盘的使用说明文件的第二章、第三章、第四章的实例,学习LINGO软件或MATLAB软件基本操作。
2.建立教材80页第2题数学模型,并利用LINGO软件或MA TLAB软件求解。
3.建立教材100页第2题数学模型,并利用LINGO软件或MA TLAB软件求解。
4.建立教材155页第2题数学模型,并利用LINGO软件或MA TLAB软件求解。
本章, 我们介绍三种解决整数线性规划问题的软件:
第一种: MATLAB中的optimization toolbox中的若干程序;
第二种: LINDO软件;
第二种: LINGO软件.
实验二 整数线性规划问题实例
1. MATLAB 程序说明
程序名: intprogram, L01p_e, L01p_ie, transdetobi, biprogram
intprogram 是利用分支定界法解决整数规划问题, 是全部的整数规划问题;
L01p_e 是利用枚举法解决0-1规划问题, 变量要求全部为0或者1;
L01p_ie 是利用隐枚举法解决0-1规划问题, 变量要求全部为0或者1;
Transdetobi 是枚举法和隐枚举法中利用到的将十进制数转化为二进制数的函数;
Biprogram 是MATLAB6.5以上版本中有的求解0-1规划的函数的程序.
intprogram 执行实例1:
12
121212max 2010s.t.5424
2513
,0, f x x x x x x x x =++≤+≤≥ 且为整数
在命令窗口的程序执行过程和结果如下:
>> c=[-20,-10]; %将最大转化为最小;
>> a=[5,4;2,5];
>> b=[24;13];
>> [x,f]=intprogram(c,a,b,[0;0],[inf;inf],[],0,0.0001) % c,a,b 之后
[0;0] is the value of low bound;[inf;inf] is the value of up bound;[] is the initialization;0 is the number of the equation constraints; 0.0001 is the concise rate.
x =
4.0000
1.0000
f =
-90
2.LINDO 程序说明
LINDO 也提供了解决全整数规划、混合整数规划以及0-1规划的方法.
2.1 解决全整数规划问题
程序名: intlpall
intlpall 执行实例:
min 1110s.t.212
31
,0, x y
x y x y x y ++<->> 且为整数
在命令窗口键入以下内容:
max 11x+10y
st
2x+y<12
x-3y>1
end
gin x ! the general integer statement – GIN 将变量约束为整数
gin y ! the general integer statement – GIN 将变量约束为整数
按solve 键在reports window 出现:
LP OPTIMUM FOUND AT STEP 7
OBJECTIVE VALUE = 72.4285736
NEW INTEGER SOLUTION OF 66.0000000 AT BRANCH 0 PIVOT 12
BOUND ON OPTIMUM: 66.00000
ENUMERATION COMPLETE. BRANCHES= 0 PIVOTS= 12
LAST INTEGER SOLUTION IS THE BEST FOUND
RE-INSTALLING BEST SOLUTION...
OBJECTIVE FUNCTION VALUE
1) 66.00000
VARIABLE VALUE REDUCED COST
X 6.000000 -11.000000
Y 0.000000 -10.000000
ROW SLACK OR SURPLUS DUAL PRICES
2) 0.000000 0.000000
3) 5.000000 0.000000
NO. ITERATIONS= 12
BRANCHES= 0 DETERM.= 1.000E 0]
3. LINGO 程序说明
除了特别说明, LINGO 默认变量是非负的以及连续的, 但是可用以下命令使得变量满足要求:
@GIN restricts a variable to being an integer value,
@BIN makes a variable binary (i.e., 0 or 1),
@FREE allows a variable to assume any real value, positive or negative
@BND limits a variable to fall within a finite range 等.
程序名: intlp (该程序主要是解决整数线性规划问题的, 用上述命令赋予变量属性.)
intlp 执行实例:
max 100150s.t.2160
100
120
,0, x y
x y x y x y ++<≤≤> 且为整数
在模型命令窗口键入以下内容:
max=100*x+150*y;
x<=100;
y<=120;
x+2*y<=160;
@gin(x);@gin(y);!若要只限制x,只要限制x即可.
按运行按钮在solution report 窗口得到以下结果:
Global optimal solution found at iteration: 2
Objective value: 14500.00
Variable Value Reduced Cost X 100.0000 -100.0000 Y 30.00000 -150.0000
Row Slack or Surplus Dual Price
1 14500.00 1.000000
2 0.000000 0.000000
3 90.00000 0.000000
4 0.000000 0.000000。