5853 7

[其他] 这个线性规划问题的目标函数怎么用lingo求解  关闭 [推广有奖]

  • 13关注
  • 1粉丝

已卖:40份资源

硕士生

80%

还不是VIP/贵宾

-

威望
0
论坛币
15681 个
通用积分
20.2205
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
349 点
帖子
168
精华
0
在线时间
196 小时
注册时间
2014-9-27
最后登录
2025-8-5

楼主
我不是一个好人 发表于 2015-6-14 00:11:29 |AI写论文
100论坛币
目标函数写的对不对啊 如果不对 请写出正确方案



本问题的最终答案 有兴趣的可以看一下
http://yunpan.cn/cQQFDthnUMX2M  访问密码 74f7
附件: 你需要登录才可以下载或查看附件。没有帐号?我要注册

最佳答案

wujianjack2 查看完整内容

第二问程序差不多是这样,当然,我也有可能弄错了。 MODEL: SETS: SORT_OF_OIL/1..5/: EI; MONTH/1..6/: B, C; LINKS(SORT_OF_OIL, MONTH): A, X, Y, Z; ENDSETS DATA: A = 110, 130, 110, 120, 100, 90, 120, 130, 140, 110, 120, 110, 130, 110, 130, 120, 150, 140, 110, 90, 100, 120, 110, 80, 115, 115, 95, 125, 105, 135; B = 0, 0.01, 0.02, 0.03, 0.04, 0.05; C = 0, 0.02, 0.04, 0.06, ...
关键词:lingo 规划问题 线性规划 目标函数 Lin 密码

沙发
wujianjack2 发表于 2015-6-14 00:11:30
第二问程序差不多是这样,当然,我也有可能弄错了。
MODEL:
SETS:
SORT_OF_OIL/1..5/: EI;
MONTH/1..6/: B, C;
LINKS(SORT_OF_OIL, MONTH): A, X, Y, Z;
ENDSETS
DATA:
A = 110, 130, 110, 120, 100, 90,
    120, 130, 140, 110, 120, 110,
    130, 110, 130, 120, 150, 140,
    110, 90,  100, 120, 110, 80,
    115, 115, 95,  125, 105, 135;
B = 0, 0.01, 0.02, 0.03, 0.04, 0.05;
C = 0, 0.02, 0.04, 0.06, 0.08, 0.1;
EI = 8.8, 6.1, 2, 4.2, 5;
Q = 1;   ! [1, 20], integer;
ENDDATA
MAX = 200 * @SUM(LINKS: Y) - @SUM(LINKS: A * X) - 5 * @SUM(LINKS: Z)
    - Q * (@SUM(LINKS(I, J) | I #LE# 3: B(J) * X(I, J) * A(I, J))
          + @SUM(LINKS(I, J) | I #GE# 4: C(J) * X(I, J) * A(I, J)));
@FOR(LINKS(I, J) | J #EQ# 1: Z(I, J) = X(I, J) - Y(I, J) + 500);
@FOR(LINKS(I, J) | J #GE# 2: Z(I, J) = X(I, J) - Y(I, J) + Z(I, J - 1));
@FOR(LINKS: Z <= 1000);
@FOR(LINKS(I, J) | J #EQ# 6: Z(I, J) = 500);
@FOR(MONTH(J): @SUM(SORT_OF_OIL(I) | I #LE# 2: Y(I, J)) <= 200);
@FOR(MONTH(J): @SUM(SORT_OF_OIL(I) | I #GE# 3: Y(I, J)) <= 250);
@FOR(MONTH(J): @SUM(SORT_OF_OIL(I): EI(I) * Y(I, J)) >= 3.0 * @SUM(SORT_OF_OIL(I): Y(I, J)));
@FOR(MONTH(J): @SUM(SORT_OF_OIL(I): EI(I) * Y(I, J)) <= 6.0 * @SUM(SORT_OF_OIL(I): Y(I, J)));
! LINGO sets default lower bounds of variables to 0;
END


注: 原始程序"+"误写为"-",是我失误,我道歉。
其余部分正确。
已有 1 人评分经验 收起 理由
giresse + 80 精彩帖子

总评分: 经验 + 80   查看全部评分

藤椅
wujianjack2 发表于 2015-6-14 13:24:32
   大概是这么写的:

MODEL:
SETS:
SORT_OF_OIL/1..5/: EI;
MONTH/1..6/: EJ, B, C;
LINKS(SORT_OF_OIL, MONTH): A, X, Y;
STOCK(SORT_OF_OIL, MONTH): Z;
ENDSETS
DATA:
A = 110, 130, 110, 120, 100, 90,
    120, 130, 140, 110, 120, 110,
    130, 110, 130, 120, 150, 140,
    110, 90,  100, 120, 110, 80,
    115, 115, 95,  125, 105, 135;
B = 0, 0.01, 0.02, 0.03, 0.04, 0.05;
C = 0, 0.02, 0.04, 0.06, 0.08, 0.1;
Q = 1;   ! [1, 20], integer;
ENDDATA
MAX = 200 * @SUM(LINKS: Y) - @SUM(LINKS: A * X) - 5 * @SUM(STOCK: Z);
    - Q * (@SUM(LINKS(I, J) | I #LE# 3: B(J) * X(I, J) * A(I, J))
          - @SUM(LINKS(I, J) | I #GE# 4: C(J) * X(I, J) * A(I, J)));
END


不过,你的模型显示不完整,STOCK下的Z是变量?参数?X, Y又是什么?
约束条件呢?
已有 2 人评分经验 热心指数 收起 理由
giresse + 60 精彩帖子
我不是一个好人 + 1 你好 这个帖子里 我好像不能回复你 我已经把.

总评分: 经验 + 60  热心指数 + 1   查看全部评分

板凳
我不是一个好人 发表于 2015-6-14 14:23:52
wujianjack2 发表于 2015-6-14 13:24
大概是这么写的:

MODEL:
我把源程序 和 建模的word文档上传了 求帮忙看看源程序是否有错 还有第三问...求大神

报纸
我不是一个好人 发表于 2015-6-16 22:51:58
wujianjack2 发表于 2015-6-14 13:24
大概是这么写的:

MODEL:
虽然你写的不对 但是给你个辛苦买个帐吧

地板
wujianjack2 发表于 2015-6-17 13:34:43
我不是一个好人 发表于 2015-6-16 22:51
虽然你写的不对 但是给你个辛苦买个帐吧
   你说你选择的最佳答案的程序不对?请指出。
   
   你若很详细地说明我的错误我可以把论坛币退给你,我做错的不会要你的,否则请收回你的话,这是我的原则。

7
我不是一个好人 发表于 2015-6-18 00:27:46
wujianjack2 发表于 2015-6-17 13:34
你说你选择的最佳答案的程序不对?请指出。
   
   你若很详细地说明我的错误我可以把论坛币退给你, ...
额 思想是对的 错的是细节 也懒得找了 100币是你应得的

8
wujianjack2 发表于 2015-6-18 02:56:06
我不是一个好人 发表于 2015-6-18 00:27
额 思想是对的 错的是细节 也懒得找了 100币是你应得的
  如果我写错了东西却得到报酬对我来说是耻辱,你既然不说,那就先搁这里,100币可以随时拿回,如果我是对的,那么你必须把所有这些话收回。

  从你的程序看你对LINGO的语法基本算是没有掌握,我可以很肯定地告诉你。我对LINGO的熟悉是比较自信的,我为LINGO软件本身以及用户手册找出了数十个错误,你可以在官方最新发布的15的Release Note上看到官方对我的致谢,在PDF手册的13/930处。

  当然,我确实有可能会错,我也的确错过一些次,不过,这次我感觉没有错。如果是我不小心看走眼了,我向你道个歉,如果不是,我要删掉我的回答。

P.S. 你的模型我改动过,你集合的用法没有理解,我修改过。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2025-12-26 07:02