第六章数学规划模型实例解读.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数学规划模型实例 一、lingo中的输入输出函数 @text函数 该函数被用在数据部分,用来将所需的数据输出至文本文件中。 其语法为: @text(filename) 这里filename是文件名,可以采用相对路径和绝对路径两种表示方式。如果忽略filename,那么数据就被输出到标准输出设备(大多数情形都是屏幕)。 @text函数仅能出现在模型数据部分的一条语句的左边。 @file函数 该函数用从外部文件中输入数据,可以放在模型中任何地方。 语法格式为@file(filename) 这里filename是文件名,可以采用相对路径和绝对路径两种表示方式。 执行一次 @file输入 1个记录,记录之间的分隔符为 ~。 @table函数 该函数以表格形式输出数据,只能在数据段(DATA)中使用。 * 例6.1(职员时序安排模型) 一项工作一周7天都需要有人(比如护士工作),每天(周一至周日)所需的最少职员数为20、16、13、16、19、14和12,并要求每个职员一周连续工作5天, 试求每周所需最少职员数,并给出安排。 注意这里我们考虑稳定后的情况。 决策变量:xi第周i天开始上班的人数; 目标函数: * 周一至周日所需的最少人数:20,16,13,16,19,14,12 目标函数: xi为整数 sets: day/mon..sun/:x,d; endsets [obj]min=@sum(day:x); @for(day(j):@sum(day(i)|i#le#5:x(@wrap(j+i+2,7)))=d); @for(day:@gin(x)); data: d=20,16,13,16,19,14,12; @text()=day 开始上班的人数为 x; Enddata 目标函数: MON 开始上班的人数为 8.0000000 TUE 开始上班的人数为 2.0000000 WED 开始上班的人数为 0.0000000 THU 开始上班的人数为 6.0000000 FRI 开始上班的人数为 3.0000000 SAT 开始上班的人数为 3.0000000 SUN 开始上班的人数为 0.0000000 二、线性规划模型 特点:目标函数与约束条件均为一次的。 线性规划的一般模型 (一) 运输问题 例6.2(运输规划模型) 某产品有6个产地Ai 和8个销售地Bj (i=1,2,…,6, j=1,2,…,8) ,产地到销地的单位运价见下表,问如何安排运输可使运输总费用最小。 B1 B2 B3 B4 B5 B6 B7 B8 产 量 A1 6 2 6 7 4 2 5 9 60 A2 4 9 5 3 8 5 8 2 55 A3 5 2 1 9 7 4 3 3 51 A4 7 6 7 3 9 2 7 1 43 A5 2 3 9 5 7 2 6 5 41 A6 5 5 2 2 8 1 4 3 52 销 量 35 37 22 32 41 32 43 38 ? 单位运价表: 产地 总产量和:302 销地 总销量和:280 产大于销的模型。 产地 Ai : 总产量 ai 销地 Bi : 总销量 bi 产地Ai到销地Bj : 单位运价 cij 运输量 xij i=1,2,…,6; j=1,2,…,8 决策变量:产地Ai到销地Bj的运输量 xij 从产地Ai到销地Bj的运费 cij xij 从Ai到各销地的运费 总运费 目标函数: 产地 Ai : 总产量 ai 销地 Bi : 总销量 bi 产地Ai到销地Bj : 单位运价 cij 运输量 xij i=1,2,…,6; j=1,2,…,8 产地总产量和:302 销地总销量和:280 为产大于销的模型。 目标函数: 运往Bj的总运量: 从Aj运出的总量: 对变量xij的限制: i=1,2,…,6; j=1,2,…,8 sets: chdi/w1..w6/:a; xdi/v1..v8/:b; link(chdi,xdi):c,x; endsets [obj]min=@sum(link:c*x); @for(xdi(j):@sum(chdi(i):x(i,j))=b(j)); @for(chdi(i):@sum(xdi(j):x(i,j))=a(i)); data: a=60,55,51,43,41,52; b=35,37,22,32,41,32,43,38; c=6,2,6,7,4,2,5,9,4,9,5,3,8,5,8,2,5,2,1,9,7,4,3, 3,7,6,7,3,9,2,7,1,2,

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档