* hs105.mod OBR2-RN-8-16 * Original AMPL coding by Elena Bobrovnikova (summer 1996 at Bell Labs). * Maximum likelihood estimation * Ref.: W. Hock and K. Schittkowski, Test Examples for Nonlinear Programming * Codes. Lecture Notes in Economics and Mathematical Systems, v. 187, * Springer-Verlag, New York, 1981, p. 114. * Number of variables: 8 * Number of constraints: 16 (17 before presolve) * Objective nonseparable * Objective nonconvex * Linear constraints set I /1*235/; set j /1*8/; parameter PI; PI = 4*arctan(1); parameter y[I]; parameter y[i]; y['1']= 95; y['61']= 135; y['121']= 155; y['181']=180; y['2']= 105; y['62']= 135; y['122']= 155; y['182']=185; y['3']= 110; y['63']= 135; y['123']= 160; y['183']=185; y['4']= 110; y['64']= 135; y['124']= 160; y['184']=185; y['5']= 110; y['65']= 135; y['125']= 160; y['185']=185; y['6']= 110; y['66']= 135; y['126']= 160; y['186']=185; y['7']= 115; y['67']= 135; y['127']= 160; y['187']=185; y['8']= 115; y['68']= 135; y['128']= 160; y['188']=190; y['9']= 115; y['69']= 140; y['129']= 160; y['189']=190; y['10']= 115; y['70']= 140; y['130']= 160; y['190']=190; y['11']= 120; y['71']= 140; y['131']= 160; y['191']=190; y['12']= 120; y['72']= 140; y['132']= 160; y['192']=190; y['13']= 120; y['73']= 140; y['133']= 160; y['193']=190; y['14']= 120; y['74']= 140; y['134']= 160; y['194']=190; y['15']= 120; y['75']= 140; y['135']= 160; y['195']=195; y['16']= 120; y['76']= 140; y['136']= 160; y['196']=195; y['17']= 120; y['77']= 140; y['137']= 160; y['197']=195; y['18']= 120; y['78']= 140; y['138']= 160; y['198']=195; y['19']= 120; y['79']= 140; y['139']= 160; y['199']=200; y['20']= 120; y['80']= 140; y['140']= 160; y['200']=200; y['21']= 120; y['81']= 140; y['141']= 160; y['201']=200; y['22']= 120; y['82']= 140; y['142']= 160; y['202']=205; y['23']= 120; y['83']= 140; y['143']= 165; y['203']=205; y['24']= 120; y['84']= 140; y['144']= 165; y['204']=205; y['25']= 120; y['85']= 140; y['145']= 165; y['205']=210; y['26']= 125; y['86']= 140; y['146']= 165; y['206']=210; y['27']= 125; y['87']= 140; y['147']= 165; y['207']=210; y['28']= 125; y['88']= 140; y['148']= 165; y['208']=210; y['29']= 125; y['89']= 140; y['149']= 165; y['209']=210; y['30']= 125; y['90']= 145; y['150']= 165; y['210']=210; y['31']= 125; y['91']= 145; y['151']= 170; y['211']=210; y['32']= 125; y['92']= 145; y['152']= 170; y['212']=210; y['33']= 125; y['93']= 145; y['153']= 170; y['213']=215; y['34']= 125; y['94']= 145; y['154']= 170; y['214']=220; y['35']= 125; y['95']= 145; y['155']= 170; y['215']=220; y['36']= 125; y['96']= 145; y['156']= 170; y['216']=220; y['37']= 125; y['97']= 145; y['157']= 170; y['217']=220; y['38']= 125; y['98']= 145; y['158']= 170; y['218']=220; y['39']= 125; y['99']= 145; y['159']= 170; y['219']=220; y['40']= 125; y['100']= 145; y['160']= 170; y['220']=230; y['41']= 130; y['101']= 145; y['161']= 170; y['221']=230; y['42']= 130; y['102']= 150; y['162']= 170; y['222']=230; y['43']= 130; y['103']= 150; y['163']= 170; y['223']=230; y['44']= 130; y['104']= 150; y['164']= 170; y['224']=230; y['45']= 130; y['105']= 150; y['165']= 170; y['225']=235; y['46']= 130; y['106']= 150; y['166']= 170; y['226']=240; y['47']= 130; y['107']= 150; y['167']= 170; y['227']=240; y['48']= 130; y['108']= 150; y['168']= 175; y['228']=240; y['49']= 130; y['109']= 150; y['169']= 175; y['229']=240; y['50']= 130; y['110']= 150; y['170']= 175; y['230']=240; y['51']= 130; y['111']= 150; y['171']= 175; y['231']=240; y['52']= 130; y['112']= 150; y['172']= 175; y['232']=240; y['53']= 130; y['113']= 150; y['173']= 175; y['233']=245; y['54']= 130; y['114']= 150; y['174']= 175; y['234']=250; y['55']= 130; y['115']= 150; y['175']= 175; y['235']=250; y['56']= 135; y['116']= 150; y['176']= 180; y['57']= 135; y['117']= 150; y['177']= 180; y['58']= 135; y['118']= 150; y['178']= 180; y['59']= 135; y['119']= 155; y['179']= 180; y['60']= 135; y['120']= 155; y['180']= 180; * MAIN PART of MODEL Variable f , a[i], b[i], c[i], x[j]; Positive variable a,b,c; Equation first[i], second[i], third[i], C1, def_obj; first[i].. a[i] =e= x['1']/x['6']*exp(-sqr(y[i]-x['3'])/(2*sqr(x['6']))); second[i].. b[i] =e= x['2']/x['7']*exp(-sqr(y[i]-x['4'])/(2*sqr(x['7']))); third[i].. c[i] =e= (1-x['2']-x['1'])/x['8']* exp(-sqr(y[i]-x['5'])/(2*sqr(x['8']))); C1.. 1-x['1']-x['2'] =g= 0; def_obj.. f =e= -sum{i,log((a[i]+b[i]+c[i])/sqrt(2*PI))}; * BOUNDARY CONDITIONS x.lo['1'] = 0.001 ; x.up['1'] = 0.499 ; x.lo['2'] = 0.001 ; x.up['2'] = 0.449 ; x.lo['3'] = 100 ; x.up['3'] = 180 ; x.lo['4'] = 130 ; x.up['4'] = 210 ; x.lo['5'] = 170 ; x.up['5'] = 240 ; x.lo['6'] = 5 ; x.up['6'] = 25 ; x.lo['7'] = 5 ; x.up['7'] = 25 ; x.lo['8'] = 5 ; x.up['8'] = 25 ; x.l['1'] = 0.1 ; x.l['2'] = 0.2 ; x.l['3'] = 100.0 ; x.l['4'] = 125.0 ; x.l['5'] = 175.0 ; x.l['6'] = 11.2 ; x.l['7'] = 13.2 ; x.l['8'] = 15.8 ; a.l[i] = 0.001 ; b.l[i] = 0.001 ; c.l[i] = 0.001 ; model hs105 /all/; solve hs105 using nlp minimize f; file demo /output/; put demo; put " f = " ; put f.l:15:8 ; put /; put " index->* a[*] b[*] c[*] "; Put /; Loop(i,put " " put i.tl:8 Put a.l[i]:11:5 Put b.l[i]:11:5 Put c.l[i]:11:5 Put /;); put " model hs105.gms output " ; put /;