运筹学实验报告修改版(1)
运筹学实验报告
实验报告运筹学学号:100103155姓名:周李斌专业:工业工程指导教师:周三玲二○一一年六月运筹学(一)实验报告一、实验目的:1)熟练掌握运筹学软件的相关操作2)学会使用软件求解运筹学中常见的数学模型,如线性规划问题、运输问题、目标规划问题、最短路问题、最大流问题等等3)了解线性规划问题在Excel中如何建立,主要是数据单元格、输出单元格、可变单元格和目标单元格的定义以及规划求解宏定义应用设置。
4)熟练掌握Excel规划求解宏定义模块使用。
二、实验仪器设备及材料计算机、Excel软件三、实验任务:Ⅰ、线性规划Ⅱ、目标规划Ⅲ、运输问题Ⅳ、最短路问题Ⅴ、最大流问题四、实验内容记录:问题1模型:Min z = -2X1-X2+3X3-5X4s.t. X1+2X2+4X3-X4<=62X1+3X2-X3+X4<=12X1+ X3+X4<=4X1,X2,X3,X4>=0实验步骤:1.建立问题模型如图所示:2.加载宏,用规划求解来计算3.结果分析:问题2模型:min z= P1d1-+P2d2++P3(5d3-+3d4-)+P4d1+ s.t. x1+x2+d1--d1+=80x1+x2+d2--d2+=90x1+x2+d3--d3+=70x1+x2+d4--d4+=45x1,x2,d i-,d i+≥0,i=1,2,3,4 实验步骤:1.建立问题模型如图所示:2.加载宏,用规划求解来计算3.结果分析问题3模型:求运输问题最优解实验步骤:1.建立问题模型如图所示:2.加载宏,用规划求解来计算3.结果分析问题4模型:求V1到各点的最短路2V2 V32 3 4 61 6V1 V5 V6 V43 4 3 7V7 V81实验步骤:1.建立问题模型如图所示:2.加载宏,用规划求解来计算3.结果分析得到f(v1,v8)=10,其余结果,方法同上。
问题5:求网络最大流V1 (1,1) V4(4,3) (3,2) (4,3 ) (7,6)Vs (3,2) V3 (2,2) Vt (10,4) (3,2) (5,3) (8,3)V2 (4,2) V5实验步骤:1.建立问题模型如图所示:2.加载宏,用规划求解来计算3.结果分析得最大流为V(f)=11,此时S=(Vs,V2),S=(V1,V3,V4,V5,Vf)实验总结(或心得体会)“通过构建、求解数学模型,规划、优化有限资源的合理利用,为科学决策提供量化一句的系统知识体系。
运筹学综合实验报告
运筹学综合实验报告本次实验中,我们使用了运筹学的方法来解决了一个经典的优化问题,即整数线性规划问题(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时取到最优值。
运筹学实验报告
运筹学实验报告运筹学实验报告一、实验目的:本实验旨在了解运筹学的基本概念和方法,并通过实践,掌握运筹学在实际问题中的应用。
二、实验过程:1.确定运筹学的应用领域:本次实验选择了物流配送问题作为运筹学的应用领域。
2.收集数据:我们选择了一个小型企业的物流配送数据进行分析,并将数据录入到计算机中。
3.建立模型:根据所收集的数据,我们建立了一个代表物流配送问题的数学模型。
4.运用运筹学方法进行求解:我们运用了线性规划的方法对物流配送问题进行求解,并得到了最优解。
5.分析结果:通过分析最优解,我们得出了一些有关物流配送问题的结论,并提出了一些优化建议。
三、实验结果:通过运用运筹学方法对物流配送问题进行求解,我们得到了一个最优解,即使得物流成本最低的配送方案。
将最优解与原始的配送方案进行对比,我们发现最优解的物流成本降低了20%,节省了货物运输的时间,减少了仓储成本。
四、实验结论:通过本次实验,我们了解了运筹学的基本概念和方法,并成功应用运筹学方法解决了物流配送问题。
通过分析最优解,我们发现采用最优解可以降低物流成本,提高配送效率。
因此,我们得出结论:运筹学在物流配送问题中的应用具有重要意义,可以帮助企业降低成本、提高效率。
五、实验心得:通过本次实验,我对运筹学有了更深入的了解。
通过实践应用运筹学方法,我明白了运筹学的实用性和价值。
在以后的工作中,我会更加注重运筹学方法的应用,以解决实际问题,提高工作效率。
本次实验不仅增强了我的动手实践能力,也培养了我分析和解决问题的能力。
我将继续学习和探索运筹学的知识,为将来的工作打下坚实的基础。
运筹学实验报告[1]
中南民族大学管理学院学生实验报告课程名称:《管理运筹学》年级:2012级专业:指导教师:胡丹丹学号:姓名:实验地点:管理学院5号楼综合实验室2013学年至2014学年度第2 学期目录实验一线性规划建模及求解实验二运输问题实验三整数规划问题实验四目标规划实验五用lingo求解简单的规划问题实验六用Excel求解线性规划模型要求:(1)每一个实验都要求将软件最后的输出结果进行截图,粘贴在每个实验中,然后根据截图内容回答相应的问题。
(2)将建模、求解结果或是相关分析过程写在实验相应结果中。
(3)实验结果禁止照搬抄袭他人,一旦发现,则无实验分。
(4)实验报告完成后,用B5纸打印。
实验一线性规划建模及求解实验内容:某轮胎厂计划生产甲、乙两种轮胎,这两种轮胎都需要在A、B、C三种不同的设备上加工。
每个轮胎的工时消耗定额、每种设备的生产能力以及每件产品的计划如表所示。
问在计划内应该如何安排生产计划,使总利润最大?(2)使用“管理运筹学”软件求得结果。
根据“管理运筹学”软件结果,回答下列问题:(3)哪些设备的生产能力已使用完?哪些设备的生产能力还没有使用完?其剩余的生产能力为多少?(4)三种设备的对偶价格各为多少?请对此对偶价格的含义给予说明。
(5)保证产品组合不变的前提下,目标函数中的甲产品产量决策变量的目标系数的变化范围是多少?(6)当乙中轮胎的单位售价变成90元时,最优产品的组合是否改变?为什么?(7)如何在A、B、C三台设备中选择一台增加1小时的工作量使得利润增加最多,请说明理由。
(8)若增加设备C的加工时间由180小时增加到200小时,总利润是否变化?为什么?(9)请写出约束条件中常数项的变化范围。
(10)当甲种轮胎的利润由70元增加到80元,乙种轮胎的利润从65元增加到75元,请试用百分之一百法则计算其最优产品组合是否变化?并计算新利润(11)当设备A的加工时间由215降低到200,而设备B的加工时间由205增加到225,设备C的加工时间由180降低到150,请试用百分之一百法则计算原来的生产方案是否变化,并计算新利润。
运筹学实验报告
《运筹学》实验报告河南理工大学经管学院班级:人力11—1班姓名:陈浩学号:311110030120实验一线性规划1.某工厂要用三种原材料C、P、H混合调配出三种不同规格的产品A、B、D,已知产品的规格要求,产品单价,每天能供应的原材料数量及原材料单价分别见下表1和2。
该厂应如何安排生产,使利润收入为最大?表1产品名称规格要求单价(元/kg)原材料C不少于50%50A原材料P不超过25%原材料C不少于25%35B原材料P不超过50%D不限25表2原材料名称每天最多供应量(kg)单价(元/kg)C100 65P 100 25H 60 35解:(1)依题意得到模型:260260150125253550max 321321321≤++≤≤≤++=x x x x x x x x x z(2)建立新问题:(3)解得:实验二运输问题2.设有三个化肥厂(A, B, C)供应四个地区(I, II, III, IV)的农用化肥。
假定等量的化肥在这些地区使用效果相同。
各化肥厂年产量,各地区年需要量及从各化肥厂到各地区运送单位化肥的运价表如下表所示。
试求出总的运费最节省的化肥调拨方案。
需求地区化肥厂I II III IV 产量A B C 1614191313202219231715—506050最低需求最高需求305070703010不限注意:表格中的运价可以填入M(任意大正数)。
解:(1)建立新问题:得:(2)求解问题,观察求解结果:3.人事部门欲安排四人到四个不同岗位工作,每个岗位一个人。
经考核五人在不同岗位的成绩(百分制)如下表所示,如何安排他们的工作使总成绩最好,应淘汰哪一位。
工作人员人力资源物流管理市场营销信息管理甲乙丙丁戊8595828676928783908573787980929095908893解:(1)建立新问题(2)修改各个人名和任务名:(3)得:(4)解得:实验三整数规划4.某厂拟建两种不同类型的冶炼炉。
运筹学实验报告
运筹学实验报告一实验一:线性规划【例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)将电子表格格式转换成标准模型。
运筹学lingo实验报告(一)
运筹学lingo实验报告(一)运筹学lingo实验报告介绍•运筹学是一门研究在给定资源约束下优化决策的学科,广泛应用于管理、工程、金融等领域。
•LINGO是一种常用的运筹学建模和求解软件,具有丰富的功能和高效的求解算法。
实验目的•了解运筹学的基本原理和应用。
•掌握LINGO软件的使用方法。
•运用LINGO进行优化建模和求解实际问题。
实验内容1.使用LINGO进行线性规划的建模和求解。
2.使用LINGO进行整数规划的建模和求解。
3.使用LINGO进行非线性规划的建模和求解。
4.使用LINGO进行多目标规划的建模和求解。
实验步骤1. 线性规划•确定决策变量、目标函数和约束条件。
•使用LINGO进行建模,设定目标函数和约束条件。
•运行LINGO求解线性规划问题。
2. 整数规划•在线性规划的基础上,将决策变量的取值限制为整数。
•使用LINGO进行整数规划的建模和求解。
3. 非线性规划•确定决策变量、目标函数和约束条件。
•使用LINGO进行非线性规划的建模和求解。
4. 多目标规划•确定多个目标函数和相应的权重。
•使用LINGO进行多目标规划的建模和求解。
实验结果•列举各个实验的结果,包括最优解、最优目标函数值等。
结论•运筹学lingo实验是一种有效的学习运筹学和应用LINGO的方法。
•通过本实验能够提高对运筹学概念和方法的理解,并掌握运用LINGO进行优化建模和求解的技能。
讨论与建议•实验过程中是否遇到困难或问题,可以进行讨论和解决。
•提出对于实验内容或方法的建议和改进方案。
参考资料•提供参考书目、文献、教材、网站等资料,以便学生深入学习和研究。
致谢•对与实验指导、帮助或支持的人员表示感谢,如老师、助教或同学等。
以上为运筹学lingo实验报告的基本框架,根据实际情况进行适当调整和补充。
实验报告应简洁明了,清晰表达实验目的、内容、步骤、结果和结论,同时可以加入必要的讨论和建议,以及参考资料和致谢等信息。
物流运筹学实验报告一
实验报告一一、 实验名称:线性规划问题及运输问题 二、 实验目的:通过本实验,能掌握Spreadsheet方法,会熟练应用Spreadsheet 建模与求解方法。
在Excel (或其它)背景下就所需解决的问题进行描述与展平,然后建立线性规划模型,并使用Excel 的命令与功能进行运算与分析。
三、实验设备: 计算机、EXCEL 四、实验内容:1.线性规划问题题目:某厂生产A.B.C 三种产品,其所需劳动力、材料等有关数据见下表。
要求:(1)确定获利最大的产品生产计划;(2)如果设计一种新产品D ,单位劳动力消耗为8单位,材料消耗为2单位,每件可获利3元,问该种产品是否值得生产?解:(1)设C B A ,,各生产321,,x x x 件。
有32143min x x x z ++=⎪⎩⎪⎨⎧=≥≤++≤++)3,2,1(,03054345536321321j x x x x x x x j获利最大的生产计划是C B A ,,各生产5件、0件、3件,最大利润为273453=⨯+⨯=z 元。
( 2 ) 设新产品D 的产量为6x 。
最优计划为D C B A ,,,的产量各为0,0,5,,25最大利润为=⨯+⨯=25354z 2721元。
运用excel 可以求出两题答案,步骤如下: 第(1)题,线性规划问题的步骤:1. 进行问题描述,输入相应数据,如下图2. 建模,输入相关数据,包括:产量(变量),劳动力,材料,约束条件(资源限量),总利润3. 对表格:C11:C13编辑函数:C11 =SUMPRODUCT(C4:E4,$C$9:$E$9); C12 =SUMPRODUCT(C5:E5,$C$9:$E$9);C13 =SUMPRODUCT(C6:E6,C9:E9)4. 按“工具”----“规划求解”,进行求解:目标单元格:“$c$13” 等于“最大值”可变单元格“$C$9:$E$9” 约束“$C$11:$C$12<=$E$11:$E$12”5. 按“选项”按钮,勾选“采用线性模型”和“假定非负”,按“确定”,“求解”“确定”后可求出所需要的解注:中间的步骤很容易落下,要熟记所需的步骤,求解前检查是否有步骤遗漏。
运筹学实验报告1
实验报告项目名称所属课程名称运筹学项目类型实验(实训)日期3月18号班级学号姓名指导教师浙江财经学院教务处制一、实验概述(一)实验目的掌握使用Excel软件求解线性规划问题。
(二)实验要求用Excel软件完成案例求解并进行结果分析。
(三)实验工具Excel软件二、实验内容案例营养配餐问题♦有A、B两种食品,含有每天必须的营养成分C、D,每天至少需要营养成分C和D 分别为2和3个单位。
食品A、B的成分和单价如下表,试做花钱最少的食谱,并求其费用。
(一)线性规划模型♦1、确定决策变量:设A、B两种食品每天的购买量分别为x1,x2单位。
♦2、确定目标函数:min W=0.9x1+0.8x2♦3、确定约束条件:成分C约束:x1+2x2 ≥2成分D约束:3x1+x2 ≥3x1 ≥0,x2 ≥0(二)电子表格模型A购买量0.8B购买量0.6目标函数 1.2成分C约束 2成分D约束 3A购买量0.8B购买量0.6(三)结果分析Microsoft Excel 11.0 运算结果报告工作表[Book1.xls]Sheet1报告的建立: 2012/3/18 18:51:54目标单元格(最小值)单元格名字初值终值$B$5目标函数0 1.2可变单元格单元格名字初值终值$B$2A购买量00.8 $B$3B购买量00.6约束单元格名字单元格值公式状态型数值$B$7成分C约束2$B$7>=2到达限制值$B$8成分D约束3$B$8>=3到达限制值$B$10B购买量0.6$B$10>=0未到限制值0.6$B$9A购买量0.8$B$9>=0未到限制值0.8分析:由上表可知:目标函数的最小值为1.2,当产品A的购买量为0.8,产品B的购买量为0.6时取得最小值。
取得最小值时成分C的含量与成分D的含量均达到最低要求。
Microsoft Excel 11.0 极限值报告工作表 [Book1.xls]极限值报告 1报告的建立: 2012/3/18 18:54:24目标式单元格名字值$B$5 目标函数 1.2变量下限目标式上限目标式单元格名字值极限结果极限结果$B$2 A购买量0.8 0.8 1.2 #N/A #N/A$B$3 B购买量0.6 0.6 1.2 #N/A #N/A分析:有该表可知:产品A购买量下极限为0.8单位,取下极限时目标函数结果为1.2,上极限为无穷大,目标值也为无穷大;产品B购买量下极限为0.6单位,取下极限时目标函数结果为1.2,上极限为无穷大,目标值也为无穷大。
运筹学实验报告(1)
运筹学实验报告一、实验目的:通过实验熟悉单纯形法的原理,掌握matlab循环语句的应用,提高编程的能力和技巧,体会matlab在进行数学求解方面的方便快捷。
二、实验环境:Matlab2012b,计算机三、实验内容(包含参数取值情况):构造单纯形算法解决线性规划问题Min z=cxs.t. Ax=bxj>=0,j=1,…,n函数功能如下:function[S,val]=danchun(A1,C,N)其中,S为最优值,Val为最优解,A1为标准形式LP问题的约束矩阵及最后一列为资源向量(注:资源向量要大于零),A1=[A+b];C是目标函数的系数向量,C=c;N为初始基的下标(注:请按照顺序输入,若没有初始基则定义N=[])。
先输入A1,C,N三个必要参数,然后调用danchun(A1,C,N)进行求解。
在此函数中,首先判断N的长度是否为空,若为空,则flag=1,进入初始解问题的迭代求值,添加辅助问题,构建单纯形表,求g所对应的RHS值,若其>0,则返回该问题无解,若其=0,则返回A1,C,N三个参数,继续构造单纯形表求解。
A1为经过变换后的系数及资源向量,C为单纯形表的第一行,N为经过辅助问题求解之后的基的下标。
否则,直接构建单纯形表,对该问题进行求解,此时flag=2,多次迭代后找到解。
另外,若在大于零的检验数所对应的系数均小于零时,会显示“此问题无界”。
若找到最优解和最优值时,会输出“val”和“S=”以及具体数值。
四、源程序(在matlab中输入edit后回车,写在.M文件中,并保存为danchun.M)function[S,val]=danchun(A1,C,N)if(length(N)==0)gN=zeros(1,length(A1(:,1)));gC=[-C,gN,0];%原文题的检验数的矩阵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,:);endG1=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+x4s.t. -2x1+2x2+x3=43x1+2x+x4=6Xj>=0,j=1,2,3,4在workspace中写入,形式如下:>> A=[-2 2 1 0 43 1 0 1 6]A =-2 2 1 0 43 1 0 1 6>> C=[3 1 1 1]C =3 1 1 1>> N=[3 4]N =3 4>> danchun(A,C,N)已找到最优解和最优值val0 2 0 4ans =6例2:初始解问题Min z=5x1+21x3s.t. x1-x2+6x3-x4=2x1+x2+2x3-x5=1xj>=0,j=1,…,5在workspace中写入,形式如下:>> A=[1 -1 6 -1 0 21 12 0 -1 1]A =1 -1 6 -1 0 21 12 0 -1 1 >> C=[5 0 21 0 0]C =5 0 21 0 0>> N=[]N =[]>> danchun(A,C,N)已找到最优解和最优值val0.5000 0 0.2500 0 0ans =7.7500六、求解实际问题(即解决附件中的实验题目)实验题目列出下列问题的数学模型,并用你自己的单纯形算法程序进行计算,最后给出计算结果。
运筹学实验报告
《运筹学》实验报告指派问题班级:姓名:学号:指导教师:《运筹学》实验报告(一)一.实验目的熟练的掌握整数规划,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。
运筹学实验报告(一)线性规划问题的计算机求解
运筹学实验报告实验课程:运筹学实验日期: 2020年4月4日任课教师:杨小康班级:数学1802 姓名:王超学号:2501180224一、实验名称: 简单线性规划模型的求解与Lingo软件的初步使用二、实验目的:了解Lingo软件的基本功能和简单线性规划模型的求解的输入和输出结果。
熟悉Lingo 软件在运筹学模型求解中的作用,增强自身的动手能力,提高实际应用能力三、实验要求:1、熟悉Lingo软件的用户环境,了解Lingo软件的一般命令2、给出Lingo中的输入,能理解Solution Report中输出的四个部分的结果。
4、能给出最优解和最优值;5、能给出实际问题的数学模型,并利用lingo求出最优解四、报告正文(文挡,数据,模型,程序,图形):1.在Lingo中求解下面的线性规划数学模型;(1)12132412512345 max2543..28,,,,0z x xx xx xs tx x xx x x x x=++=⎧⎪+=⎪⎨++=⎪⎪≥⎩(2)12121212max2343..28,0z x xxxs tx xx x=+≤⎧⎪≤⎪⎨+≤⎪⎪≥⎩(3)12121212max243..28,0z x xxxs tx xx x=+≤⎧⎪≤⎪⎨+≤⎪⎪≥⎩(4)12121212max324 ..3,0z x xx xs t x xx x=+-≤⎧⎪-+≤⎨⎪≥⎩(5)1212121212max102401.530.50,0z x xx xx xs tx xx x=++≤⎧⎪+≤⎪⎨+≥⎪⎪≥⎩2、某工厂利用三种原料生产五种产品,其有关数据如下表。
原料可利用数(千克)每万件产品所用材料数(千克)A B C D E甲10 1 2 1 0 1 乙24 1 0 1 3 2 丙21 1 2 2 2 2 每万件产品的利润(万元)8 20 10 20 21 (l)建立该问题的运筹学模型。
(2)利用lingo 软件求出最优解,得出最优生产计划解:(1)设xi(i=1,2...,5)为所用材料生产的件数则数学模型,,,,21 2222242 3102;212010208max543215 43215431532154321≥≤++++≤+++≤+++++++ =xxxxxx xxxxt xxxx xxxxsxxxxxz (2)结果为220.3:现有15米长的钢管若干,生产某产品需4米、5米、7米长的钢管各为100、150、120根,问如何截取才能使原材料最省?(建立线性规划模型并利用lingo软件求解)解:方案4米5米7米剩余量截取长度1 3 0 0 32 2 1 0 23 2 0 1 04 1 2 0 15 0 3 0 06 0 1 1 37 0 0 2 14人力资源分配问题某昼夜服务的公交线路每天各时间段内所需司机和乘务人员人数如表1所示。
运筹学实验报告1
运筹学实验报告1《运筹学》课程实验报告一学院:专业:班级:姓名:学号:指导老师:实验报告班级学号姓名课程名称运筹学开课实验室实验时间实验项目名称【实验项目一】线性规划综合性实验实验性质验证性()综合性(√)设计性()成绩指导老师签名实验条件:硬件:计算机,软件:lingo11实验目的及要求:使学生掌握线性规划建模的方法以及至少掌握一种线性规划软件的使用,提高学生应用线性规划方法解决实际问题的实践动手能力。
实验内容:熟悉、了解LINGO系统菜单、工具按钮、建模窗口、求解器运行状态窗口以及结果报告窗口等的环境。
实验过程:1.选择合适的线性规划问题可根据自己的建模能力,从本实验指导书提供的参考选题中或从其它途径选择合适的线性规划问题。
2.建立线性规划数学模型针对所选的线性规划问题,运用线性规划建模的方法,建立恰当的线性规划数学模型。
3.用运筹学软件求解线性规划数学模型应用运筹学软件Lingo对已建好的线性规划数学模型进行求解。
4.对求解结果进行应用分析对求解结果进行简单的应用分析。
实验习题计算:使用lingo来求解下列例题1. MAXZ=2X1+2X2X1-X2≥-1-0.5X1+X2≤2X1,X2≥0解:运用软件lingo11求解线性规划例题1如下:由上述运算结果可知:该线性规划问题的解为无界解,X=(2,3)是它的一个基可行解。
2. MINZ=1000X1+800X2X1≥10.8X1+X2≥1.6X1≤2X2≤1.4X1,X2≥0解:运用软件lingo11求解线性规划例题1如下:由上述运算结果可知:该线性规划问题的最优解X=(1,0.8),目标值Z=1640实验总结:例题1可用图解法检验,从图中可以清楚的看出,该问题可行域无界,目标函数值可以增大到无穷大,该题解为无界解;但在其可行域中存在顶点X=(2,3),故X=(2,3)为该线性规划问题的基可行解。
运筹学实训实验报告
一、实验背景运筹学是一门应用数学的分支,它运用数学模型和算法来解决各种优化问题。
随着现代科技的发展,运筹学在各个领域的应用越来越广泛,如生产管理、物流运输、资源分配等。
为了提高学生运用运筹学知识解决实际问题的能力,我们开展了运筹学实训实验。
二、实验目的1. 熟悉运筹学的基本概念和常用方法;2. 掌握线性规划、整数规划、运输问题、目标规划等运筹学模型;3. 学会运用计算机软件解决实际问题;4. 培养学生的团队合作精神和创新意识。
三、实验内容本次实验主要包括以下内容:1. 线性规划:以生产计划问题为例,建立数学模型,并运用Excel规划求解器求解最优解。
2. 整数规划:以人员排班问题为例,建立数学模型,并运用Lingo软件求解最优解。
3. 运输问题:以物流配送问题为例,建立数学模型,并运用Lingo软件求解最优解。
4. 目标规划:以投资组合问题为例,建立数学模型,并运用Lingo软件求解最优解。
四、实验步骤1. 线性规划实验(1)问题分析:某企业需要生产甲、乙两种产品,已知生产甲、乙两种产品所需的原料、劳动力及设备等资源消耗量,以及产品的售价和利润。
(2)模型建立:根据问题分析,建立线性规划模型,目标函数为最大化利润,约束条件为资源消耗量不超过限制。
(3)求解:运用Excel规划求解器求解最优解。
2. 整数规划实验(1)问题分析:某公司需要安排员工值班,要求每天至少有3名员工值班,且员工值班时间不能超过一周。
(2)模型建立:根据问题分析,建立整数规划模型,目标函数为最小化员工值班成本,约束条件为员工值班时间不超过限制。
(3)求解:运用Lingo软件求解最优解。
3. 运输问题实验(1)问题分析:某物流公司需要将货物从A、B两个仓库运送到C、D两个销售点,已知各仓库的货物量、各销售点的需求量以及运输成本。
(2)模型建立:根据问题分析,建立运输问题模型,目标函数为最小化运输成本,约束条件为各仓库的货物量不超过需求量。
运筹学实验报告
实验一:线性规划问题1、实验目的:①学习建立数学模型的方法,并懂得区别运筹学中不同分支的数学模型的特点。
②掌握利用计算机软件求解线性规划最优解的方法。
2、实验任务①结合已学过的理论知识,建立正确的数学模型;②应用运筹学软件求解数学模型的最优解③解读计算机运行结果,结合所学知识给出文字定性结论3、实验仪器设备:计算机4、实验步骤:(1)在主菜单中选择线性规划模型,在屏幕上就会出现线性规划页面,如图所示。
(2)在点击“新建”按钮以后,按软件的要求输入目标函数个数和约束条件个数,输入目标函数及约束条件的各变量的系数和b值,并选择好“≥”、“≤”或“=”号,如图所示。
(3)当约束条件输入完毕后,请点击“解决”按钮,屏幕上将显现线性规划问题的结果,如图所示。
例题一:例题二:例题三:例题四:例题五5、试验体会或心得运筹学是一门实用的学科,学习运筹学,结合生活实际运用运筹学,我们可以将资源最大化利用。
学习理论的目的就是为了解决实际问题。
线性规划的理论对我们的实际生活指导意义很大。
当我们遇到一个问题,需要认真考察该问题。
如果它适合线性规划的条件,那么我们就利用线性规划的理论解决该问题。
线性规划指的是在资源有限的条件下,为达到预期目标最优,而寻找资源消耗最少的方案。
其数学模型有目标函数和约束条件组成。
一个问题要满足一下条件时才能归结为线性规划的模型:⑴要求解的问题的目标能用效益指标度量大小,并能用线性函数描述目标的要求;⑵为达到这个目标存在很多种方案;⑶要到达的目标是在一定约束条件下实现的,这些条件可以用线性等式或者不等式描述。
所以,通过这次实验,不仅对运筹学的有关知识有了进一步的掌握,同时对在自己的计算机操作水准也有了很大的提高。
这次实验让我懂得了运筹学在电脑的应用,让我对运输与数学相结合的应用理解更深了。
实验二:整数规划与运输问题1、实验目的:①学习建立数学模型的方法,并懂得区别运筹学中不同分支的数学模型的特点。
运筹学实验报告(一)线性规划问题的计算机求解-(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)。
年运筹学实验报告修改版
————————————————————————————————作者:————————————————————————————————日期:
实验报告
《运筹学》
学院(部)管理学院
指导教师李宗伟
班级代号
姓名/学号孙瑞康/031112121 同组人无
提交时间2014.4.30
成绩评定
实验目的:
加强学生分析问题的能力,锻炼数学建模的能力。
掌握WinQSB 软件中线性规划、灵敏度问题的求解和分析。
用 WORD 书写实验报告:包括详细规划模型、试验步骤和结果分析。
实验内容:
题1:
某厂的一个车间有1B ,2B 两个工段可以生产123,,A A A 三种产品,各工段开工一天生产三种产品的数量和成本,以及合同对三种产品的每周最低需求量由表1给出。
问每周各工段对该生产任务应开工几天,可使生产合同的要求得到满足,并使成本最低。
建立模型。
表1
生产定额(吨/天)
工段B
生产合同每周最低需求量
(吨)
i
b i
A 产品
1A 2A 3
A 1
B 2
B 1131131000
2000
599
成本(元/天)
建立模型:
WinQSB 录入模型界面:
运行结果界面:
结果分析:成本最低需要7000元,产品A1在工段B1每天生产3吨,在B2每天生产2吨,产品A2在工段B1每天生产9吨,在B2每天生产2吨,产品A3在工段B1每天生产3吨,在B2每天生产6吨
题2:
明兴公司面临一个是外包协作还是自行生产的问题。
该公司生产甲、乙、丙三种产品,这三种产品都要经过铸造、机加工和装配三个车间。
甲、乙两种产品的铸件可以外包协作,亦可以自行生产,但产品丙必须本厂铸造才能保证质量。
有关情况见表2;公司中可利用的总工
时为:铸造8000小时,机加工12000小时和装配10000小时。
表2
工时与成本甲乙丙
每件铸造工时(小时) 5 10 7
每件机加工工时(小时) 6 4 8
每件装配工时(小时) 3 2 2
自产铸件每件成本(元) 3 5 4
外协铸件每件成本(元) 5 6
机加工每件成本(元) 2 1 3
装配每件成本(元) 3 2 2
每件产品售价(元) 23 18 16
(1) 公司为了获得最大利润,甲、乙、丙三种产品各生产多少件?甲、乙两种产品的铸造应多少由本公司铸造?应多少由外包协作?
(2) 为了提高生产效率,公司中可利用的总工时减为:铸造7000小时,机加工11000小时和装配9000小时,描述解的变化,求最优解。
(3) 为了适应市场需求,甲、乙、丙产品售价要下调,在保持最优解不变时,求甲、乙、丙各产品售价调整的范围。
(1)
建立模型:
WinQSB录入模型界面:
运行结果界面:
结果分析:最大利润29400元,甲自产1600件,外包0件,乙自产0件,外包600件,丙生产0件。
(2) WinQSB录入模型界面:
运行结果界面:
结果分析:最优解利润最大值26850,甲自产1400件,外包0件,乙自产0件,外包650件,丙生产0件
(3)
结果分析:甲在自产时,售价的范围是(22,M),甲在外包时,售价的范围是(-M,23.5),所以甲售价的变动范围是(22,23.5)
乙在自产时,售价的范围是(-M,20),乙在外包时,售价的范围是(17.667,19),所以乙售价的变动范围是(17.667,19)。
丙售价的变动范围是(-M,29.1)
题3 已知运输问题的产销平衡表与单位运价表如表所示,问怎样调配使总运费最小?试建立模型并进行求解。
建立模型:
WinQSB录入模型界面:
销地
产地
B1B2B3B4 产量
A1
A2
A3
3 11 3 10
1 9
2 8
7 4 10 5
7
4
9
销量 3 6 5 6
运行结果界面:
结果分析:A1向B1运3份,运费6,向B3运5份,运费15,A2向B1运1份,运费1,向B4运3份,运费24,A3向B2运6份,运费24,向B4运3份,运费15。
所需要的最小运费是85。
题4:(选做)
某工厂生产A 、B 两种产品,单位产品所消耗的资源和利润见下表:
A B 现有资源数
原 料
劳动量(工时)
设 备
4 10 7 6 16 6 400 420 800 利润(千元) 4 9 —
如果原料不可以补充,而且A 、B 的产量计划指标分别为40台、50台,要求确定恰当的生产方案,使其满足以下指标:
P 1:产品数量尽量不超过计划指标; P 2:加班时间要尽量达到最小;
P 3:利润尽量达到最高指标510千元; P 4:尽量充分利用生产设备指标。
试建立其目标规划模型并用WinQSB 求解。
建立模型:
解:假设生产A 产品1x 件,B 产品2x 件,则本题的数学模型为:
()()1122334455min ..Z P d d P d P d P d d +++-+-
=+++++
1211122212331244125512410400405076420
49510
166800,,,0(1,2,3,4,5)
j j x x x d d x d d x x d d x x d d x x d d x x d d j -
+-+-
+-+-+-
++≤⎧
⎪+-=⎪
⎪+-=⎪++-=⎨⎪++-=⎪
⎪++-=⎪≥=⎩ WinQSB 录入模型界面:
运行结果界面:
结果分析:
最优解X1=39.13,X2=24.35,所以A生产40件,B生产25件。
实验心得:
通过这次实验,我知道了如何运用WinQSB软件,学会了对其中的线性规划、灵敏度问题的求解和分析。
WinQSB是一个很实用很小巧的软件,对于我们今后的学习和生活会有很大的帮助,运输问题、目标项目等一系列的问题,都可以通过这个WinQSB的软件得到轻松的解答,能够很大程度上减轻我们的工作量,从而提高工作效率。