- 在线时间
- 3 小时
- 最后登录
- 2017-9-15
- 注册时间
- 2015-7-15
- 听众数
- 9
- 收听数
- 0
- 能力
- 0 分
- 体力
- 26 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 11
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 7
- 主题
- 5
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   6.32% TA的每日心情 | 开心 2017-9-15 17:58 |
---|
签到天数: 2 天 [LV.1]初来乍到
- 自我介绍
- 宅女不算宅女的疯子
 |
LINGO是用来求解线性和非线性优化问题的简易工具。LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果。
( c, A! J( O& z3 h) ?6 i & _. u* w$ R1 _" W7 w" j- V
§1 LINGO快速入门
2 F" @- t% v$ ^& z! _6 }+ X/ s7 [( | & O. m3 m4 z2 ]0 z) E( \9 P# y
当你在windows下开始运行LINGO系统时,会得到一个窗口:; A, P4 r$ E# q' V1 ~2 c
外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGO Model – LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面举两个例子。 E y2 t( ]- {/ B p' t
例1.1 如何在LINGO中求解如下的LP问题:; s4 d; ]9 Y: _: L
. T8 G2 C/ j' ]' h, c1 ]在模型窗口中输入如下代码:
d @1 ^% Z% ~5 W* bmin=2*x1+3*x2;
|; r5 A* I8 e3 ^x1+x2>=350;
8 R6 Q' y/ W3 I% kx1>=100;
) F; L6 ~1 o$ A3 F d9 F2*x1+x2<=600;
2 s& C4 n) B6 c0 s' N然后点击工具条上的按钮 即可。2 H3 C4 L1 |2 e7 v. ~
- D0 Z# K+ [, a. Q+ A
例1.2 使用LINGO软件计算6个发点8个收点的最小费用运输问题。产销单位运价如下表。
8 C' c% x D- I0 v& } v1 X6 B单
' [/ v3 K; {! a; {/ r( S$ j- E位 销地2 ?$ Z" R4 a8 B$ K! U- }! z
运$ b3 a, x3 B( [# W0 j9 Q# {
价
0 D* L# q% z8 J. B0 S8 e产地 B1 B2 B3 B4 B5 B6 B7 B8 产量
- v/ D- ~: X2 k( M. |- a4 x8 x E& G* Q2 wA1 6 2 6 7 4 2 5 9 60
9 w2 @8 j5 J* i* e0 tA2 4 9 5 3 8 5 8 2 553 \4 u! t6 i$ K! |& `$ |$ J
A3 5 2 1 9 7 4 3 3 51
7 p& A% D8 y: Z9 ]8 s4 \) o9 WA4 7 6 7 3 9 2 7 1 43
6 ]0 f3 T# m1 l% [( S2 {$ JA5 2 3 9 5 7 2 6 5 41
% b& l% f. _- A1 s# M0 E. s3 nA6 5 5 2 2 8 1 4 3 52
8 l; A/ P5 s) f& E+ ^) m销量 35 37 22 32 41 32 43 38 9 s" K, w7 A1 \7 h4 c
使用LINGO软件,编制程序如下:
9 h& V$ u9 n+ v) u: U O/ Mmodel:" L2 k8 m/ m3 e B6 ~
!6发点8收点运输问题;& v0 @5 b" X* J, L" Z; u4 C/ ?
sets:& ~1 B0 @ ]+ I9 Y2 ?% Z0 _; D! u- [4 a
warehouses/wh1..wh6/: capacity;
' W- ~, x) Z/ l, T, B vendors/v1..v8/: demand;1 e4 ?# ]8 u, U4 }# x
links(warehouses,vendors): cost, volume;
* m3 W% d5 M" Y' J. V' yendsets
+ I- X; E9 y, ?!目标函数;* a( `% T& S0 m4 P: ]1 h
min=@sum(links: cost*volume);
3 p) X5 o( [3 `; a3 j!需求约束;% b! x7 O$ L5 c; }3 T, c
@for(vendors(J):
& l+ F. Q6 z# x, M @sum(warehouses(I): volume(I,J))=demand(J));4 P3 q& E: t$ U2 ^7 U9 p* x
!产量约束;5 x! W1 n2 P( Z4 j8 H8 K, S
@for(warehouses(I):& r. Z1 K3 J) f7 U7 f& F# K
@sum(vendors(J): volume(I,J))<=capacity(I));
, ]8 _. X& m8 t6 A- G0 x
9 {+ [* q/ A5 A. j3 f% p* E!这里是数据; T. E( |& y2 v( t) }- H2 o- F
data:) X& R3 e/ E5 h0 `; J: Y
capacity=60 55 51 43 41 52;
+ J s: |+ H% V9 _! x* j/ @% R6 p demand=35 37 22 32 41 32 43 38;
% \4 l0 O- l3 L0 e cost=6 2 6 7 4 2 9 5: x2 ~1 F0 M7 E
4 9 5 3 8 5 8 2* U7 H5 p- \2 q/ T; d
5 2 1 9 7 4 3 3
5 [3 m( y& L: y6 E 7 6 7 3 9 2 7 1
3 F8 s, i/ Q, Q9 W! @" X* c 2 3 9 5 7 2 6 54 n m; g& E$ O8 s! [
5 5 2 2 8 1 4 3;/ _ ~% ~6 q+ ~ U( O1 B
enddata
v8 a5 e* z1 Y2 Vend4 } [1 u1 D' j" h0 e
然后点击工具条上的按钮 即可。
H+ o' N' g$ z2 J3 O为了能够使用LINGO的强大功能,接着第二节的学习吧。' r& {' S+ {* f( _3 k
(明天见哦)
7 p. X% X) o+ h8 V9 @6 T) e9 q; D! l+ a
|
zan
|