MCM1988 问题B_lingo_装货问题
两辆平板车的装货问题有七种规格的包装箱要装到两辆铁路平板车上去包装箱的宽和高是一样的但厚度(t,以厘米计)及重量(,以公斤计)是不同的.下表给出了每种包装箱的厚度重量以及数量每辆平板车有10.2 米长的地方可用来装包装箱像面包片那样载重为40吨由于当地货运的限制对C5
,C6
,C7
类的包装箱的总数有一个特别的限制这类箱子所占的空间厚度不能超过302.7厘米试反包装箱见下表装到平板车上去使得浪费的空间最小.
t (厘米) 48.7 52.0 61.3 72.0 48.7 52.0 64.0
W(公斤) 2000 3000 1000 500 4000 2000 1000
件数 8 7 9 6 6 4 8
解:
假设表示在第j辆车上所装的i类货物的个数(i=1,2,…,7;j=1,2);
表示第i类货物的厚度(i=1,2,…,7);
表示第i类货物的质量(i=1,2,…,7);
表示第i类货物的数量(i=1,2,…,7);
则建立模型如下:
Lingo运行代码及结果:
model:
sets:
row/1..7/:t,w,n;
col/1..2/:cl;
matrix(row,col):x;
endsets
data:
t=48.7,52,61.3,72,48.7,52,64;
w=2000,3000,1000,500,4000,2000,1000;
n=8,7,9,6,6,4,8;
cl=1020,1020;
enddata
max=@sum(row(i):t(i)*(x(i,1)+x(i,2)));
@for(row(i):@sum(col(j):x(i,j))<=n(i));
@for(col(j):@sum(row(i):t(i)*x(i,j))<=cl(j));
@for(col(j):@sum(row(i):w(i)*x(i,j))<=40000);
@sum(row(i)|i#GE#5:t(i)*(x(i,1)+x(i,2)))<=302.7;
@for(row(i):@for(col(j):@gin(x(i,j))));
End
运行结果:
Global optimal solution found.
Objective value: 2039.400
Objective bound: 2039.400
Infeasibilities: 0.000000
Extended solver steps: 44712
Total solver iterations: 114375
Variable Value Reduced Cost
T( 1) 48.70000 0.000000
T( 2) 52.00000 0.000000
T( 3) 61.30000 0.000000
T( 4) 72.00000 0.000000
T( 5) 48.70000 0.000000
T( 6) 52.00000 0.000000
T( 7) 64.00000 0.000000
W( 1) 2000.000 0.000000
W( 2) 3000.000 0.000000
W( 3) 1000.000 0.000000
W( 4) 500.0000 0.000000
W( 5) 4000.000 0.000000
W( 6) 2000.000 0.000000
W( 7) 1000.000 0.000000
N( 1) 8.000000 0.000000
N( 2) 7.000000 0.000000
N( 3) 9.000000 0.000000
N( 4) 6.000000 0.000000
N( 5) 6.000000 0.000000
N( 6) 4.000000 0.000000
N( 7) 8.000000 0.000000
CL( 1) 1020.000 0.000000
CL( 2) 1020.000 0.000000
X( 1, 1) 5.000000 -48.70000
X( 1, 2) 3.000000 -48.70000
X( 2, 1) 0.000000 -52.00000
X( 2, 2) 7.000000 -52.00000
X( 3, 1) 9.000000 -61.30000
X( 3, 2) 0.000000 -61.30000
X( 4, 1) 1.000000 -72.00000
X( 4, 2) 5.000000 -72.00000
X( 5, 1) 1.000000 -48.70000
X( 5, 2) 2.000000 -48.70000
X( 6, 1) 2.000000 -52.00000
X( 6, 2) 1.000000 -52.00000
X( 7, 1) 0.000000 -64.00000
X( 7, 2) 0.000000 -64.00000
Row Slack or Surplus Dual Price
1 2039.400 1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 0.000000 0.000000
6 3.000000 0.000000
7 1.000000 0.000000
8 8.000000 0.000000
9 0.1000000 0.000000
10 0.5000000 0.000000
11 12500.00 0.000000
12 500.0000 0.000000
13 0.6000000 0.000000
MCM1988 问题B_lingo_装货问题的更多相关文章
- LinGo:装货问题——线性规划,整数规划,1988年美国数模B题
7种规格的包装箱要装有两辆铁路平板车上去,包装箱的宽和高相同,但厚度(t,以cm计)和重量(以kg计)不同, 表A-1给出了每包装箱的厚度.重量和数量,每辆车有10.2m长的地方用来装包装箱(像面包片 ...
- 【转】为什么我们都理解错了HTTP中GET与POST的区别
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- 从零开始学 Java - 数据库连接池的选择 Druid
我先说说数据库连接 数据库大家都不陌生,从名字就能看出来它是「存放数据的仓库」,那我们怎么去「仓库」取东西呢?当然需要钥匙啦!这就是我们的数据库用户名.密码了,然后我们就可以打开门去任意的存取东西了. ...
- 99%的人都理解错了HTTP中GET与POST的区别(转载
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- (转)完全用GNU/Linux工作 by 王珢
完全用GNU/Linux工作 王珢 (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...
- 99%的人都理解错了HTTP中GET与POST的区别
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- 货运APP产品魔力=卓越功能×情感诉求
货运APP产品魔力=卓越功能×情感诉求 [导语]在滴滴打车.快的打车软件风靡全国之际,很多企业也在探索如何将其应用到公路货运领域用以整合社会运力资源.但一方面大多数人聚焦的是干线运输中的长途货车运 ...
- Dynamics AX 2012 R2 业务系列-销售业务流程
在博文Dynamics AX R2 业务系列中,Reinhard对这个系列做了一个规划,下面我们就按照规划开始说业务吧. 1.销售的主要职责 其实这里说的职责主要是针对销售文员,并非整天外面满世界跑业 ...
- fenxi
线路:通过定义而来(固定线路可以定义,随机和临时线路怎么来) 订单:线路上点对点的关系 装车单:同意线路上的车辆可以有多个订单组成的装车单 车辆任务:给调度接口输入车辆和订单集合,根据订单产生多个车的 ...
随机推荐
- zoj3802:easy 2048 again(状压dp)
zoj月赛的题目,非常不错的一个状压dp.. 题目大意是一个一维的2048游戏 只要有相邻的相同就会合并,合并之后会有奖励分数,总共n个,每个都可以取或者不取 问最终得到的最大值 数据范围n<= ...
- 使用python/casperjs编写终极爬虫-客户端App的抓取-ZOL技术频道
使用python/casperjs编写终极爬虫-客户端App的抓取-ZOL技术频道 使用python/casperjs编写终极爬虫-客户端App的抓取
- (step5.1.6)hdu 1272(小希的迷宫——并查集)
题目大意:输入一系列的点,判断这些点组成的图符不符合小希的思路(无环.连通) 解题思路: 1)如果两个节点的根节点相同,那么在这两个节点之间添加1条边以后,这个图肯定有环路. 2)孤立节点:被使用过& ...
- day49
几天没写了 这几天比较麻木呢 各种课程的再看 想买一直不舍得money 今天下定决心买了 这样我也静下心好好备战把 一天背的东西好多 政治和作文也是背了就忘记 尽力把 今天的买的课很悬乎 就不在这说了 ...
- 使用css框架的优缺点
使用css框架的优点 1.加速开发 CSS框架提供通用的代码(如reset,和移动端开发的一些常用设置)和许多丰富的UI组件样式——因此我们不需要从头开始写. 2.无兼容性烦恼 CSS框架解决了各个浏 ...
- genymotion+Oracle VM VirtualBox + eclipse + appium 脚本运行慢解决步骤
genymotion+Oracle VM VirtualBox + eclipse + appium 脚本运行慢解决步骤 1.lenove 机器启动时按F1 进入bios 设置,设置cpu virtu ...
- Python安装MySQLdb并连接MySQL数据库
当然了,前提是你已经安装了Python和MySQL.我的Python是2.6版本的. Python2.6的“Set”有点兼容性问题,自己照着改一下: http://sourceforge.net/fo ...
- eclispe远程调试tomcat
在eclispe中新建web应用,名字叫webtest.里面只有一个HelloServlet.Web.xml配置如下. 修改tomcat的启动脚本startup.bat.复制startup.bat为s ...
- mysql 1449 : The user specified as a definer ('root'@'%') does not exist 解决方法
权限问题,授权 给 root 全部sql 权限 mysql> grant all privileges on *.* to root@"%" identified by & ...
- 线程、线程句柄、线程ID
什么是句柄:句柄是一种指向指针的指针.我们知道,所谓指针是一种内存地址.应用程序启动后,组成这个程序的各对象是住留在内存的.如果简单地理解,似乎我们只要获知这个内存的首地址,那么就可以随时用这个地址 ...