运筹学实验报告4(运输问题的编程求解)
更新时间:2023-10-01 05:14:01 阅读量: 综合文库 文档下载
运筹学实验报告
实验课程:运筹学 实验日期: 6月9日 任课教师: 杨小康 班级:信息与计算科学 姓名:刘静 学号0202110123 一、实验名称: 线性规划模型的编程求解(2) 二、实验目的: 1.掌握Lingo软件中变量定界函数,集合循环函数和@IF(条件,true结果,false结果) 2. 熟悉运输问题的数学模型,掌握简单运输问题数学模型的Lingo软件编程求解的方法,掌握解报告的内容 3. 掌握整数规划、0-1规划和指派问题的计算机求解方法。 三、实验要求: 1.给出所求解问题的数学模型; 2.给出Lingo中的编程程序; 3.能给出最优解和最优值; 四、报告正文(文挡,数据,模型,程序,图形): 1.利用lingo软件求解下面运输问题的最优解。 单 位 销地 运 B1 B2 价 产地 A1 A2 A3 销量 3 1 7 3 11 9 4 6 B3 B4 产量 3 2 10 5 10 8 5 6 7 4 9 程序: model: sets: AH/A1..A3/:A; BD/B1..B4/:B; link(AH,BD):C,X; endsets data: A=7,4,9; B=3,6,5,6; C=3 11 3 10 1 9 2 8 7 4 10 5; enddata min=@sum(link:c*x); @for(AH(i):@sum(BD(j):x(i,j))<=A(i)); @for(BD(j):@sum(AH(i):x(i,j))=B(j)); @for(link:@gin(x)); end 结果:z=85; Global optimal solution found. Objective value: 85.00000 Objective bound: 85.00000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost A( A1) 7.000000 0.000000 A( A2) 4.000000 0.000000 A( A3) 9.000000 0.000000 B( B1) 3.000000 0.000000 B( B2) 6.000000 0.000000 B( B3) 5.000000 0.000000 B( B4) 6.000000 0.000000 C( A1, B1) 3.000000 0.000000 C( A1, B2) 11.00000 0.000000 C( A1, B3) 3.000000 0.000000 C( A1, B4) 10.00000 0.000000 C( A2, B1) 1.000000 0.000000 C( A2, B2) 9.000000 0.000000 C( A2, B3) 2.000000 0.000000 C( A2, B4) 8.000000 0.000000 C( A3, B1) 7.000000 0.000000 C( A3, B2) 4.000000 0.000000 C( A3, B3) 10.00000 0.000000 C( A3, B4) 5.000000 0.000000 X( A1, B1) 0.000000 3.000000 X( A1, B2) 0.000000 11.00000 X( A1, B3) 5.000000 3.000000 X( A1, B4) 2.000000 10.00000 X( A2, B1) 3.000000 1.000000 X( A2, B2) 0.000000 9.000000 X( A2, B3) 0.000000 2.000000 X( A2, B4) 1.000000 8.000000 X( A3, B1) 0.000000 7.000000 X( A3, B2) 6.000000 4.000000 X( A3, B3) 0.000000 10.00000 X( A3, B4) 3.000000 5.000000 Row Slack or Surplus Dual Price 1 85.00000 -1.000000 2 0.000000 0.000000 3 0.000000 0.000000 4 0.000000 0.000000 5 0.000000 0.000000 6 0.000000 0.000000 7 0.000000 0.000000 8 0.000000 0.000000 2.求解下面混合整数规划 min z=-3x1+4x2-2x3+5x4; 4x1-x2+2x3-x4=-2; x1+x2+3x3-x4≤14; -2x1+3x2-x3+2x4≥2; x1为整数,x2=0或1,x3≥0,x4无约束; 程序: model: sets: location1/1..4/:A,x; location2/1..3/:B; link(location2,location1):C; endsets data: A=-3,4,-2,5; B=-2,14,2; C=4,-1,2,-1 1,1,3,-1 -2,3,-1,2; enddata min=@sum(location1:A*x); @sum(location1(j):C(1,j)*x(j))=-2; @sum(location1(j):C(2,j)*x(j))<=14; @sum(location1(j):C(3,j)*x(j))>=2; @gin(x(1)); @bin(x(2)); @gin(x(3)); @free(x(4)); end 结果:z=9; Global optimal solution found. Objective value: 9.000000 Objective bound: 9.000000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 6 Model Class: MILP Total variables: 4 Nonlinear variables: 0 Integer variables: 3 Total constraints: 4 Nonlinear constraints: 0 Total nonzeros: 16 Nonlinear nonzeros: 0 Variable Value Reduced Cost A( 1) -3.000000 0.000000 A( 2) 4.000000 0.000000 A( 3) -2.000000 0.000000 A( 4) 5.000000 0.000000 X( 1) 0.000000 17.00000 X( 2) 1.000000 -1.000000 X( 3) 0.000000 8.000000 X( 4) 1.000000 0.000000 B( 1) -2.000000 0.000000 B( 2) 14.00000 0.000000 B( 3) 2.000000 0.000000 C( 1, 1) 4.000000 0.000000 C( 1, 2) -1.000000 0.000000 C( 1, 3) 2.000000 0.000000 C( 1, 4) -1.000000 0.000000 C( 2, 1) 1.000000 0.000000 C( 2, 2) 1.000000 0.000000 C( 2, 3) 3.000000 0.000000 C( 2, 4) -1.000000 0.000000 C( 3, 1) -2.000000 0.000000 C( 3, 2) 3.000000 0.000000 C( 3, 3) -1.000000 0.000000 C( 3, 4) 2.000000 0.000000 Row Slack or Surplus Dual Price 1 9.000000 -1.000000 2 0.000000 5.000000 3 14.00000 0.000000 4 3.000000 0.000000 3.现在要在五个工人中确定四个人来分别完成四项工作中的一项工作。由于每个工人的技术特长不同,他们完成各项工作所需的工时也不同。每个工人完成各项工作所需工时如下表所示,试找出一个工作分配方案,使总工时最小。 工工 人 作 A 9 4 5 7 10 B 4 6 4 5 6 C 3 5 7 2 7 D 7 6 5 3 4 Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ 程序: model: sets: worker/1..5/:A; job/1..4/:B; link(worker,job):C,X; endsets
data: C=9 4 3 7 4 6 5 6 5 4 7 5 7 5 2 3 10 6 7 4; enddata min=@sum(link:c*x); @for(worker(i):@sum(job(j):x(i,j))<=1); @for(job(j):@sum(worker(i):x(i,j))=1); @for(link:@bin(x)); end 结果:z=3+4+3+4=14; 第一个人做第三个工作X( 1, 3) ,第二个人做第一个工作 X( 2, 1),第三个人做第二个工作 X( 3, 2),第四个人做第四个工作 X( 4, 4); Global optimal solution found. Objective value: 14.00000 Objective bound: 14.00000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost A( 1) 0.000000 0.000000 A( 2) 0.000000 0.000000 A( 3) 0.000000 0.000000 A( 4) 0.000000 0.000000 A( 5) 0.000000 0.000000 B( 1) 0.000000 0.000000 B( 2) 0.000000 0.000000 B( 3) 0.000000 0.000000 B( 4) 0.000000 0.000000 C( 1, 1) 9.000000 0.000000 C( 1, 2) 4.000000 0.000000 C( 1, 3) 3.000000 0.000000 C( 1, 4) 7.000000 0.000000 C( 2, 1) 4.000000 0.000000 C( 2, 2) 6.000000 0.000000 C( 2, 3) 5.000000 0.000000 C( 2, 4) 6.000000 0.000000 C( 3, 1) 5.000000 0.000000 C( 3, 2) 4.000000 0.000000 C( 3, 3) 7.000000 0.000000 C( 3, 4) 5.000000 0.000000 C( 4, 1) 7.000000 0.000000 C( 4, 2) 5.000000 0.000000 C( 4, 3) 2.000000 0.000000 C( 4, 4) 3.000000 0.000000 C( 5, 1) 10.00000 0.000000 C( 5, 2) 6.000000 0.000000 C( 5, 3) 7.000000 0.000000 C( 5, 4) 4.000000 0.000000 X( 1, 1) 0.000000 9.000000 X( 1, 2) 0.000000 4.000000 X( 1, 3) 1.000000 3.000000 X( 1, 4) 0.000000 7.000000 X( 2, 1) 1.000000 4.000000 X( 2, 2) 0.000000 6.000000 X( 2, 3) 0.000000 5.000000 X( 2, 4) 0.000000 6.000000 X( 3, 1) 0.000000 5.000000 X( 3, 2) 1.000000 4.000000 X( 3, 3) 0.000000 7.000000 X( 3, 4) 0.000000 5.000000 X( 4, 1) 0.000000 7.000000 X( 4, 2) 0.000000 5.000000 X( 4, 3) 0.000000 2.000000 X( 4, 4) 1.000000 3.000000 X( 5, 1) 0.000000 10.00000 X( 5, 2) 0.000000 6.000000 X( 5, 3) 0.000000 7.000000 X( 5, 4) 0.000000 4.000000 Row Slack or Surplus Dual Price 1 14.00000 -1.000000 2 0.000000 0.000000 3 0.000000 0.000000 4 0.000000 0.000000 5 0.000000 0.000000 6 1.000000 0.000000 7 0.000000 0.000000 8 0.000000 0.000000 9 0.000000 0.000000 10 0.000000 0.000000 4. 某市消防队布点问题。该市共有6个区,每个区都可以建消防站,市政府希望设置的消防站最少,但必须满足在城市任何地区发生火警时,消防车要在15min内赶到现场。据实地测定,各区之间消防车行驶的时间见表,请制定一个布点最少的计划。 地区1 地区2 地区3 地区4 地区5 地区6 地区1 0 10 16 28 27 20 地区2 10 0 24 32 17 10 地区3 16 24 0 12 27 21 地区4 28 32 12 0 15 25 地区5 27 17 27 15 0 14 地区6 20 10 21 25 14 0 满足条件的约束:x1+x2>=1; x1+x2+x6>=1; x3+x4>=1; x3+x4+x5>=1; x4+x5>=1; x2+x6>=1; 程序: model: sets: place1/1..6/:x; place2/1..6/; link(place2,place1):C; endsets data: C=1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 0 0 1 0 0 0 1; enddata min=@sum(place1:x); @for(place2(i):@sum(place1(j):C(i,j)*x(j))>=1); @for(place1:@bin(x)); end 结果:z=2;选二和四地区 Global optimal solution found. Objective value: 2.000000 Objective bound: 2.000000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Model Class: PILP Total variables: 6 Nonlinear variables: 0 Integer variables: 6 Total constraints: 7 Nonlinear constraints: 0 Total nonzeros: 20 Nonlinear nonzeros: 0 Variable Value Reduced Cost X( 1) 0.000000 1.000000 X( 2) 1.000000 1.000000 X( 3) 0.000000 1.000000 X( 4) 1.000000 1.000000 X( 5) 0.000000 1.000000 X( 6) 0.000000 1.000000 C( 1, 1) 1.000000 0.000000 C( 1, 2) 1.000000 0.000000 C( 1, 3) 0.000000 0.000000 C( 1, 4) 0.000000 0.000000 C( 1, 5) 0.000000 0.000000 C( 1, 6) 0.000000 0.000000 C( 2, 1) 1.000000 0.000000 C( 2, 2) 1.000000 0.000000 C( 2, 3) 0.000000 0.000000 C( 2, 4) 0.000000 0.000000 C( 2, 5) 0.000000 0.000000 C( 2, 6) 1.000000 0.000000 C( 3, 1) 0.000000 0.000000 C( 3, 2) 0.000000 0.000000 C( 3, 3) 1.000000 0.000000 C( 3, 4) 1.000000 0.000000 C( 3, 5) 0.000000 0.000000 C( 3, 6) 0.000000 0.000000 C( 4, 1) 0.000000 0.000000 C( 4, 2) 0.000000 0.000000 C( 4, 3) 1.000000 0.000000 C( 4, 4) 1.000000 0.000000 C( 4, 5) 1.000000 0.000000 C( 4, 6) 0.000000 0.000000 C( 5, 1) 0.000000 0.000000 C( 5, 2) 0.000000 0.000000 C( 5, 3) 0.000000 0.000000 C( 5, 4) 1.000000 0.000000 C( 5, 5) 1.000000 0.000000 C( 5, 6) 0.000000 0.000000 C( 6, 1) 0.000000 0.000000 C( 6, 2) 1.000000 0.000000 C( 6, 3) 0.000000 0.000000 C( 6, 4) 0.000000 0.000000 C( 6, 5) 0.000000 0.000000 C( 6, 6) 1.000000 0.000000 Row Slack or Surplus Dual Price 1 2.000000 -1.000000 2 0.000000 0.000000 3 0.000000 0.000000 4 0.000000 0.000000 5 0.000000 0.000000 6 0.000000 0.000000 7 0.000000 0.000000
正在阅读:
运筹学实验报告4(运输问题的编程求解)10-01
漫步火车道11-03
国内生产总值和居民消费水平关系的分析06-08
高中议论文写作素材汇总01-25
LNMP 环境搭建02-28
2022届高考地理复习自然地理第一章行星地球题组层级快练2等高线04-07
HS600(新)说明书05-22
人教版四年级口算、两位数乘法练习 -10-12
最新-县2019年教育工作情况报告 精品12-18
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 运筹学
- 求解
- 运输
- 编程
- 实验
- 报告
- 问题
- 1.1探索勾股定理教案
- 财务报表分析多项选择题(整理)
- 机械加工制造生产安全事故应急救援预案
- 起名学用字参考
- 什么叫做民航服务
- 江苏省地质灾害危险性评估工作费用标准
- 材料力学试题及答案
- 企业会计岗位核算期末考试
- 湖南省长沙市2014届高考英语完形填空:2013暑假训练题(10)及答案
- 年生产xxx万平方米皮革制品项目可行性研究报告模板参考
- 物业管理相关知识
- Oracle GoldenGate 实时同步配置
- 最新仁爱版英语八年级上册期中试卷(含答案)
- 译林新版6下Unit4单元提优卷
- 机械设计与制造专业 毕业论文
- 美国会计准则中文版07 租赁的会计核算-reviewed by Cathy-ok
- 公务员考试录用制度历史演进
- 房地产项目开发报建流程
- 市场营销学平时作业答案
- 2016上海事业单位面试模拟题:全面放开二孩政策