1、LINGO软件程序LINGO软件程序程序一:MODEL: SETS: ! Dynamic programming illustration (see Anderson, Sweeney & Williams, An Intro to Mgt Science, 6th Ed.). We have a network of 10 cities. We want to find the length of the shortest route from city 1 to city 10.; ! Here is our primitive set of ten cities, where F( i)
2、 represents the shortest path distance from city i to the last city; CITIES /1.10/: F, CONPATH; ! The derived set ROADS lists the roads that exist between the cities (note: not all city pairs are directly linked by a road, and roads are assumed to be one way.); ROADS( CITIES, CITIES)/ 1,2 1,3 1,4 2,
3、5 2,6 2,7 3,5 3,6 3,7 4,5 4,6 5,8 5,9 6,8 6,9 7,8 7,9 8,10 9,10/: D, RONPATH; ! D( i, j) is the distance from city i to j; ENDSETS DATA: ! Here are the distances that correspond to the above links; D = 1 5 2 13 12 11 6 10 4 12 14 3 9 6 5 8 10 5 2; ENDDATA ! If ou are already in last city, then the c
4、ost to travel to it is 0; F( SIZE( CITIES) = 0; ! The following is the classic dynamic programming recursion. In words, the shortest distance from City i to last city is the minimum over all cities j reachable from i of the sum of the distance from i to j plus the minimal distance from j to last cit
5、y; FOR( CITIES( i)| i #LT# SIZE( CITIES): F( i) = MIN( ROADS( i, j): D( i, j) + F( j); ); ! Set CONPATH( j) 0 if city j is on any critical path, i.e., if going to j from some i on the critical path, still allows us to get to last city in optimal time; CONPATH( 1) = 1; FOR( CITIES( j)| j #GT# 1: CONP
6、ATH( j) = MAX( ROADS( i,j): CONPATH( i)*(F(I)-F( j) #EQ# D(i,j); ); ! Set RONPATH(i,j) = 1 if arc i,j is on any critical path, i.e., both i and j are on path and (i,j) is shortest path from i to j. Note, we do not assume distances satisfy triangle inequality; FOR( ROADS(i,j): RONPATH(I,J) = SMIN( CO
7、NPATH(i), CONPATH(j)*(F(i)-F( j) #EQ# D(i,j); );END 程序二:MODEL: ! The Mexican Steel problem; SETS: ! Steel plants; PLANT /AHMSA FUNDIDA SICARTSA HYLSA HYLSAP/: RD2, MUE; ! Markets; MARKET / MEXICO MONTE GUADA /: DD, RD3, MUV; ! Final products; CF /STEEL/: PV, PE, EB; ! Intermediate products; CI / SPO
8、NGE PIGIRON/; ! Raw materials; CR /PELLETS COKE NATGAS ELECTRIC SCRAP/ : PD; ! Processes; PR /PIGIRON1 SPONGE1 STEELOH STEELEL STEELBOF/; ! Productive units; UNIT / BLASTFUR OPENHEAR BOF DIRECT ELECARC/; ! ; CRXP( CR, PR) : A1; CIXP( CI, PR) : A2; CFXP( CF, PR) : A3; UXP( UNIT, PR) : B; UXI( UNIT, P
9、LANT) : K; PXM( PLANT, MARKET) : RD1, MUF; PXI( PR, PLANT) : Z; CFXPXM( CF, PLANT, MARKET) : X; CRXI( CR, PLANT) : U; CFXI( CF, PLANT) : E; CFXM( CF, MARKET) : D, V; ENDSETS ! Demand equations; FOR( CFXM( C, J): D( C, J) = 5.209 * ( 1 + 40/ 100) * DD( J)/100); ! Transport rate equations; FOR( PXM( I
10、, J)| RD1( I, J) #GT# 0: MUF( I, J) = 2.48 + .0084 * RD1( I, J); FOR( PXM( I, J)| RD1( I, J) #LE# 0: MUF( I, J) = 0); FOR( PLANT( I)| RD2( I) #GT# 0: MUE( I) = 2.48 + .0084 * RD2( I); FOR( PLANT( I)| RD2( I) #LE# 0: MUE( I) = 0); FOR( MARKET( J)| RD3( J) #GT# 0: MUV( J) = 2.48 + .0084 * RD3( J); FOR
11、( MARKET( J)| RD3( J) #LE# 0: MUV( J) = 0); ! For each plant I1; FOR( PLANT( I1): ! Sources = uses, final products; FOR( CF( CF1): MBF SUM( PR( P1): A3( CF1, P1) * Z( P1, I1) = SUM( MARKET( J1): X( CF1, I1, J1) + E( CF1, I1); ! Intermediate products; FOR( CI( CI1): MBI SUM( PR( P1): A2( CI1, P1) * Z
12、( P1, I1) = 0); ! Raw materials; FOR( CR( CR1): MBR SUM( PR( P1): A1( CR1, P1) * Z( P1, I1) + U( CR1, I1) = 0); ! Capacity of each productive unit M1; FOR( UNIT( M1): CC SUM( PR( P1): B( M1, P1) * Z( P1, I1) = D( CF1, J1); ! Upper limit on exports ; ME SUM( PLANT( I1): E( CF1, I1) = U( I) + Q( K) -
13、VCAP + VCAP * ( X( K, I) + X( I, K) - ( Q( K) + Q( I) * X( K, I); ); ! If K is 1st stop, then U( K) = Q( K); U( K) = Q( K)+ SUM( CITY( I)| I #GT# 1: Q( I) * X( I, K); ); ! Make the Xs binary; FOR( CXC: BIN( X); ! Minimum no. vehicles required, fractional and rounded; VEHCLF = SUM( CITY( I)| I #GT# 1
14、: Q( I)/ VCAP; VEHCLR = VEHCLF + 1.999 - WRAP( VEHCLF - .001, 1); ! Must send enough vehicles out of depot; SUM( CITY( J)| J #GT# 1: X( 1, J) = VEHCLR; END程序四:MODEL:MIN = 10 * W88 + 18 * W87 + 23 * W86 + 28 * W85 + 33 * W84 + 38 * W83 + 43 * W82 + 48 * W81 + 16 * W78 + 8 * W77 + 16 * W76 + 21 * W75
15、+ 26 * W74 + 31 * W73 + 36 * W72 + 41 * W71 + 19 * W68 + 14 * W67 + 6 * W66 + 14 * W65 + 19 * W64 + 24 * W63 + 29 * W62 + 34 * W61 + 22 * W58 + 17 * W57 + 12 * W56 + 4 * W55 + 12 * W54 + 17 * W53 + 22 * W52 + 27 * W51 + 25 * W48 + 20 * W47 + 15 * W46 + 10 * W45 + 2 * W44 + 10 * W43 + 15 * W42 + 20 *
16、 W41 + 28 * W38 + 23 * W37 + 18 * W36 + 13 * W35 + 8 * W34 + 8 * W32 + 13 * W31 + 40 * W28 + 35 * W27 + 30 * W26 + 25 * W25 + 20 * W24 + 15 * W23 + 7 * W22 + 15 * W21 + 52 * W18 + 47 * W17 + 42 * W16 + 37 * W15 + 32 * W14 + 27 * W13 + 22 * W12 + 14 * W11;! Probabilities sum to 1;W88 + W87 + W86 + W8
17、5 + W84 + W83 + W82 + W81 + W78 + W77 + W76 + W75 + W74 + W73 + W72 + W71 + W68 + W67 + W66 + W65 + W64 + W63 + W62 + W61 + W58 + W57 + W56 + W55 + W54 + W53 + W52 + W51 + W48 + W47 + W46 + W45 + W44 + W43 + W42 + W41 + W38 + W37 + W36 + W35 + W34 + W33 + W32 + W31 + W28 + W27 + W26 + W25 + W24 + W2
18、3 + W22 + W21 + W18 + W17 + W16 + W15 + W14 + W13 + W12 + W11 = 1; ! Probout of state 1- Prob into state 1 = 0;- .4 * W82 - .5 * W81 - .4 * W72 - .5 * W71 - .4 * W62 - .5 * W61 - .4 * W52 - .5 * W51 - .4 * W42 - .5 * W41 - .4 * W32 - .5 * W31 - .4 * W22 - .5 * W21 + W18 + W17 + W16 + W15 + W14 + W13
19、 + .6 * W12 + .5 * W11 = 0;! Into state 2;- .4 * W83 - .1 * W82 - .5 * W81 - .4 * W73 - .1 * W72 - .5 * W71 - .4 * W63 - .1 * W62 - .5 * W61 - .4 * W53 - .1 * W52 - .5 * W51 - .4 * W43 - .1 * W42 - .5 * W41 - .4 * W33 - .1 * W32 - .5 * W31 + W28 + W27 + W26 + W25 + W24 + .6 * W23 + .9 * W22 + .5 * W
20、21 - .4 * W13 - .1 * W12 - .5 * W11 = 0;! Into state 3;- .4 * W84 - .1 * W83 - .5 * W82 - .4 * W74 - .1 * W73 - .5 * W72 - .4 * W64 - .1 * W63 - .5 * W62 - .4 * W54 - .1 * W53 - .5 * W52 - .4 * W44 - .1 * W43 - .5 * W42 + W38 + W37 + W36 + W35 + .6 * W34 + .9 * W33 + .5 * W32 + W31 - .4 * W24 - .1 * W23 - .5 * W22 - .4 * W14 - .1 * W13 - .5 * W12 = 0;! Into state 4;- .4 * W85 - .1 * W84 - .5 * W83 - .4 * W75 - .1 * W74 - .5 * W73 - .4 * W65 - .1 * W64 - .5 * W63 - .4 * W55 - .1 * W54 - .5 * W53 + W48 + W47 + W46 + .6 *
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1