* Generalized geometric programming problem * Alkylation design (Dembo, 1976) * Sets SET l /1*15/; SET i /1*44/; SET j /1*14/; SET k /1*7/; * Parameters PARAMETER c(i) / '1' 1.715 '2' 0.035 '3' 4.0565 '4' 10.0 '5' 3000.0 '6' 0.063 '7' 0.0059553571 '8' 0.88392857 '9' 0.1175625 '10' 1.1088 '11' 0.1303533 '12' 0.0066033 '13' 0.00066173269 '14' 0.017239878 '15' 0.0056595559 '16' 0.019120592 '17' 56.85075 '18' 1.08702 '19' 0.32175 '20' 0.03762 '21' 0.006198 '22' 2462.3121 '23' 25.125634 '24' 161.18996 '25' 5000.0 '26' 489510.0 '27' 44.333333 '28' 0.33 '29' 0.022556 '30' 0.007595 '31' 0.00061 '32' 0.0005 '33' 0.819672 '34' 0.819672 '35' 24500 '36' 250 '37' 0.010204082 '38' 0.000012244898 '39' 0.0000625 '40' 0.0000625 '41' 0.00007625 '42' 1.22 '43' 1 '44' 1/; VARIABLES x(k) objval objective function variable; FREE VARIABLES objval; EQUATIONS f Objective function g1 g2 g3 g4 g5 g6 g7 g8 g9 g10 g11 g12 g13 g14 ; f .. objval =e= c('2')*x('1')*x('6') - c('6')*x('3')*x('5') + c('1')*x('1') + c('3')*x('3') + c('4')*x('2') + c('5'); g1 .. c('7')*POWER(x('6'),2) + c('8')/x('1')*x('3') - c('9')*x('6') =l= 1; g2 .. c('10')*x('1')/x('3') + c('11')*x('1')/x('3')*x('6') -c('12')*x('1')/x('3')*POWER(x('6'),2) =l= 1; g3 .. c('13')*POWER(x('6'),2) + c('14')*x('5') - c('15')*x('4') - c('16')*x('6') =l= 1; g4 .. c('17')/x('5') + c('18')/x('5')*x('6') + c('19')*x('4')/x('5') -c('20')/x('5')*POWER(x('6'),2) =l= 1; g5 .. c('21')*x('7') + c('22')*x('2')/x('3')/x('4') -c('23')*x('2')/x('3') =l= 1; g6 .. c('24')/x('7') + c('25')*x('2')/x('3')/x('7') -c('26')*x('2')/x('3')/x('4')/x('7') =l= 1; g7 .. c('27')/x('5') + c('28')/x('5')*x('7') =l= 1; g8 .. c('29')*x('5') - c('30')*x('7') =l= 1; g9 .. c('31')*x('3') - c('32')*x('1') =l= 1; g10 .. c('33')*x('1')/x('3') + c('34')/x('3') =l= 1; g11 .. c('35')*x('2')/x('3')/x('4')-c('36')*x('2')/x('3') =l= 1; g12 .. c('37')*x('4') + c('38')/x('2')*x('3')*x('4') =l= 1; g13 .. c('39')*x('1')*x('6') + c('40')*x('1') - c('41')*x('3') =l= 1; g14 .. c('42')/x('1')*x('3') + c('43')/x('1') -c('44')*x('6') =l= 1; * Bounds x.LO('1') = 1500; x.UP('1') = 2000; x.LO('2') = 1; x.UP('2') = 120; x.LO('3') = 3000; x.UP('3') = 3500; x.LO('4') = 85; x.UP('4') = 93; x.LO('5') = 90; x.UP('5') = 95; x.LO('6') = 3; x.UP('6') = 12; x.LO('7') = 145; x.UP('7') = 162; * Starting point (global solution) * x.L('1') = 1698.18; * x.L('2') = 53.66; * x.L('3') = 3031.30; * x.L('4') = 90.11; * x.L('5') = 95.00; * x.L('6') = 10.50; * x.L('7') = 153.53; MODEL test /ALL/; SOLVE test USING NLP MINIMIZING objval;