自己写的一个LINGO程序,欢迎指教

问题

9.一架货机有三个货舱:前舱、中仓和后舱。三个货舱所能装载的货物的最大重

量和体积有限制如表5 所示。并且为了飞机的平衡,三个货舱装载的货物重量必须与其

最大的容许量成比例。

表5 货舱数据

前舱 中仓 后舱

重量限制(吨) 10 16 8

体积限制(立方米) 6800 8700 5300

现有四类货物用该货机进行装运,货物的规格以及装运后获得的利润如表6。

表6 货物规格及利润表

重量(吨) 空间(立方米/吨) 利润(元/吨)

货物1 18 480 3100

货物2 15 650 3800

货物3 23 580 3500

货物4 12 390 2850

-15-

假设:

(1)每种货物可以无限细分;

(2)每种货物可以分布在一个或者多个货舱内;

(3)不同的货物可以放在同一个货舱内,并且可以保证不留空隙。

问应如何装运,使货机飞行利润最大?

-

程序

model:

sets:

huowu/1,2,3,4/:weight,volume,lirun;

huocang/1,2,3/:wtlimit,vllimit;

link(huowu,huocang):a;

endsets

data:

weight=18,15,23,12;

volume=480,650,580,390;

lirun=3100,3800,3500,2850;

wtlimit=10,16,8;

vllimit=6800,8700,5300;

enddata

[email protected](huowu(i):@sum(huocang(j):a(i,j))*lirun(i));

@for(huocang(j):@sum(huowu(i):a(i,j))/vllimit(j)=b);

@for(huowu(i):@sum(huocang(j):a(i,j))=weight(i));

@bnd(0,b,1);

end

另一个

sets:

hc/1..3/:e,f;

hw/1..4/:a,b,c;

link(hc,hw):x;

endsets

data:

a=18 15 23 12;

b=480 650 580 390;

c=3100 3800 3500 2850;

e=10 18 8;

f=6800 8700 5300;

enddata

[email protected](hw(j):c(j)*@sum(hc(i):x(i,j)));

@for(hw(j):@sum(hc(i):x(i,j))<=a(j)); !货物吨数限制;

@for(hc(i):@sum(hw(j):x(i,j))<=e(i)); !货仓吨数限制;

@for(hc(i):@sum(hw(j):b(j)*x(i,j))<=f(i)); !货仓体积限制;

@sum(hw(j):x(2,j))*(5/2)/@sum(hw(j):x(3,j))[email protected](hw(j):x(1,j)); !成比例

10:16:8;

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-18 02:58:50

自己写的一个LINGO程序,欢迎指教的相关文章

swift __1 试写第一个swift程序

参照:http://swiftist.org/topics/96?page=2#comments 发现有几个地方一直报错,自己修改了下,有可能是xcode6更新导致 代码写的比较乱,这是我的硬伤,这次注释还是后面加上的,这也是我的硬伤,需要改.养成良好的代码习惯. 下面贴上自己的代码 // // ViewController.swift // SwiftCounter // // Created by 三十一 on 14-8-20. // Copyright (c) 2014年 yetuoxun

怎样写出一个递归程序

作为小白,我看到递归程序只是能看懂,但是自己写不出来,我知道要有一个临界条件(这个并不难找),但我不知道怎么演进,这让我十分头疼,因此找到了一篇个人认为写的不错的文章如下,根据我对递归的理解和疑问对原文做了一些标注,欢迎各位大佬,写下自己对递归的理解,本小白感激不尽. 如何写一个递归程序 总是听到大大们说递归递归的,自己写程序的时候却用不到递归.其中的原因,一个是害怕写递归,另一个就是不知道什么时候用递归.这篇文章就浅析一下,希望看完之后不再害怕递归,这就是本文最大的目的. 递归到底有什么意义?

js 利用throw 写的一个小程序

在下边的小程序中比较特殊的是使用isNaN()函数判断一个参数是不是数字, 1 <!DOCTYPE html> 2 <!DOCTYPE html> 3 <html> 4 <head> 5 <title></title> 6 7 <script type="text/javascript"> 8 function myFunction() { 9 10 var str = document.getElem

用VS2019写第一个Python程序-Hello, Python!

第一步: 打开Visual Studio Installer,安装上Python开发环境. 第二步: 打开VS2019,新建Python项目,这里我选择了新建一个Python命令行应用程序. 解决方案命名为:HelloPython 生成的解决方案如图: 第三步: 使用Python的内置函数print (): 1 print ("Hello, Python!") 将上述代码粘贴到 HelloPython.py 文件,点击运行 结果如下图: 原文地址:https://www.cnblogs

定时刷新视图,写的一个小小的程序,一年前

// //  ViewController.m //  手机网易2 // //  Created by BreazeMago on 15/1/7. //  Copyright (c) 2015年 BreazeMago. All rights reserved. // #import "rootViewController.h" @interface rootViewController ()<UITableViewDataSource,UITableViewDelegate,UI

Hadoop学习---第三篇Hadoop的第一个Mapreduce程序

Mapreducer程序写了好几个了,但是之前一直都没有仔细的测试过本地运行和集群上运行的区别,今天写了一个Mapreduce程序,在此记录下来. 本地运行注意事项有以下几点: 1.本地必须配置好Hadoop的开发环境 2.在src里不加入配置文件运行,或者如果本地的src里有mapred-site.xml和yarn-site.xml配置文件,那么mapreduce.framework.name=local以及yarn.resourcemanager.hostname=local 测试说明:sr

第一个CGI程序-----完全就是普通的c语言嘛‘(*∩_∩*)′

第一个CGI程序 ----完全就是普通的C语言嘛 '(*∩_∩*)′ PainterQ 2017年5月14日 上一篇博文里面叙述了Apache的安装和配置方法,恍恍惚惚我就拥有了自己的第一个http服务器.虽然是局域网下的网站但给同学们开开车还是完全够了(咳咳).好像是有了Apache再把HTTP文档丢到htdocs文件夹就可以了,老司机的工作竟然如此轻松.其实还有很多的姿势都还没有掌握哦,不追求新姿势的人生和咸鱼有什么分别!就是老司机也要做姿势最多的那一个.这一篇我们一起来了解一下什么是动态网

第一个Rust程序——Hello,world!

既然你已经安装了Rust,我们开始写第一个Rust程序吧.在任何一种新语言中的第一个程序是在屏幕上输出"Hello,world!"是一个传统.以这样一个简单的程序开始的好处是,它不仅可以检验你已经安装了编译器,而且还能验证它是否正常工作.并且往屏幕上输出东西是一个很平常的事情. 第一件要做的事情是创建一个保存我们的代码的文件.我喜欢在我的home目录中创建一个projects目录,把我所有的工程都放在这个目录中.Rust并不关心你的代码放在哪. 这里我们有必要说明一点:我们假设你基本熟

第一个Python程序hello.py提示出现File &quot;&lt;stdin&gt;&quot;,line 1错误

写第一个Python程序hello.py,内容仅有一句,print 'hello world', 运行 Python hello.py 出错,提示: File "<stdin>" , line 1python hello.py SyntaxError:invalid syntax 原因: 在shell脚本中,运行shell脚本命令:在Python命令行中,运行Python代码.然而,"python hello.py"是一个脚本命令,不是python代码.