{VERSION 3 0 "DEC ALPHA UNIX" "3.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 } {PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 11 12 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "?simplex" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "interface(verboseproc=2):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "print(simplex[minimize]);" } }{PARA 12 "" 1 "" {XPPMATH 20 "6#R6#%$objG6\"6#%aoCopyright~(c)~1991~b y~the~University~of~Waterloo.~All~rights~reserved.GF&-&%(simplexG6#.%) maximizeG6$,$9$!\"\"&9\"6#;\"\"#9#F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "print(simplex[maximize]);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#R6'%$objG%%cntsG%(vartypeG%(newcntsG%*transformG6*%\"fG %%eqnsG%(neweqnsG%(oldvarsG%$solG%&transG%&vtypeG%#t1G6#%aoCopyright~( c)~1992~by~the~University~of~Waterloo.~All~rights~reserved.G6\"C/@$0%4 simplex/InitializedG%%trueG--%(readlibG6#.%-simplex/initGF5@$4-%%typeG 6$9$<$%)constantG%/simplex/linearG-%&ERRORG6#%?non-linear~objective~fu nction.G@%19#\"\"#>8*.%-UNRESTRICTEDG>FS&9\"6#\"\"$@$4-%'memberG6$FS<$ FT.%,NONNEGATIVEG-FK6$%1unknown~option:~GFS@$3/-%%nopsG6#9%\"\"!/FSFTC $-%)userinfoG6%\"\"\"%(simplexG%4Objective~unboundedG-%'RETURNG6#%%NUL LG>%'DigitsG,&FepF]pFQF]p@%0-&F^p6#.%)feasibleG6&-%(convertG6$Ffo%%lis tGFS.8%.8)%&falseGC&-F[p6&FQF^p%'eqns~=G-%&printG6#Fdq-F[p6&FQF^p%(tra ns~=G-F]r6#Ffq>Fdq-%%subsG6$/%$_ARGFgoFdq>8$-Ffr6$FfqFF-Fap6#<\">Fdq-F `q6$FdqFbq>8(-%,simplex/maxG6%F[sFdq.8&@$-%(hastypeG6$Fes%&floatG>Fes- %&evalfG6$Fes,&FepF]p!\"#F]p@$2FZFP>9'-F`q6$Fjs%$setG@$2\"\"%FP>9(Ffq@ %/Fes%%FAILGC$-F[p6%F]pF^p%=Objective~function~unboundedGF`pC%>8'-%&un ionG6$-%'indetsGFeo-F`v6#FF>8+-%$mapG6%R6$%\"xG%\"yGF5F5F5/FF-Ffr6$Ffo FFF5F5F5F[vFfq-Ffv6%RFivF5F5F5/-%#opG6$F]pFF-Ffr6$Ffo-Fdw6$FQFFF5F5F5F dvFesF5F5F5" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "print(simple x[feasible]);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#R6&'%,constraintsG-<$ %%listG%$setG6#%)relationG'%(vartypeG%'symbolG'%%eqnsG%%nameG'%*transf ormGF26+%\"cG%&cnstsG%#eqG%\"mG%$objG%\"rG%$solG%&vtypeG%&transG6#%aoC opyright~(c)~1992~by~the~University~of~Waterloo.~All~rights~reserved.G 6\"C1@$0%4simplex/InitializedG%%trueG--%(readlibG6#.%-simplex/initGFA@ $-%(hastypeG6$9$<$%\"G-%&ERRORG6#%Eunable~to~handle~strict~inequ alitiesG-%)userinfoG6%\"\"%%(simplexG%Cverify~that~constraints~are~lin earG>8%-%'selectG6$R6#%\"xGFAFAFA@%0,&-%$lhsG6#FQ\"\"\"-%$rhsGFfo!\"\" \"\"!FF%&falseGFAFAFA-%(convertG6$FQF)@$0-F\\o6$RF_oFAFAFA-%%typeG6$Fc o%)constantGFAFAFAFjn7\"-%'RETURNG6#F\\p?&8$FjnFF@$4-Ffp6$,&-Feo6#F^qF go-FioFeqFjo.%/simplex/linearG-FV6$%6non-linear~constraintGF^q@%19#Fgo >8+.%-UNRESTRICTEDG>F`r9%-FZ6&\"\"$Fgn%:the~variables~are~of~typeGF`r> 8&-%*traperrorG6#-&Fgn6#.%&setupG6%FjnF`r.8,@$/Fjr%*lasterrorG@%/Fjr%+ infeasibleGFjp-FV6#Fhs-FZ6&FgrFgn%3initial~equations:G-%'lprintG6#Fjr@ $/FjrFipC%@$1FgrF^r>9&Fjr@$1FfnF^r>9'Fes-F[q6#FF>8)-%$mapG6$RF_oFAFAFA -&Fgn6#.%&ctermG6#-%#opG6$\"\"#FQFAFAFAFjr-%'memberG6%-%$minG6#-F^v6#F buFbu.8'@%1F[p&Fbu6#FjvC&-FZ6%FgrFgn%Cinitial~equations~already~feasib leG@$Fht>FjtFjr@$F\\u>F^uFesF_uC--FZ6%FgrFgn%2start~of~~Phase~1G>Fjr-F du6$RF_oFAFAFA/Fdo,&FhoFgo%$_ARGFgoFAFAFAFjr-FZ6&FfnFgn%,pivoting~onG- %&printG6#&FjrF^w>Fjr-&Fgn6#.%&pivotG6%FjrFaxFhx>8(,$FaxFjo>8*-%,simpl ex/maxG6%FayFjr.F^q-FZ6&FgrFgn%0end~of~phase~1:GFdy@$/Fdy%%FAILGC$-FZ6 (FgoFgn%=feasible:~unable~to~maximizeG-Fbt6#Fay%+subject~toGFat-FV6#%3 unable~to~maximizeG@&3Fht-Ffp6$Fjn.F)>FjtF^qFht>Fjt-F^p6$F^q.F*@$F\\u> F^uFes@%/-%%subsG6$FdyFayF[pF_uFjpFAFAFA" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "readlib(`simplex/init`)();" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "print(`simplex/init`);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#R6\"F$6#%aoCopyright~(c)~1993~by~the~University~of~Wate rloo.~All~rights~reserved.GF$C7@$/%4simplex/InitializedG%%trueG-%'RETU RNG6#%%NULLG>%6simplex/find_pivoteqnG.-%(readlibG6$.F1((%!G%(libnameG% 4/simplex/pivoteqn.mG>%6simplex/find_pivotvarG.-F46$.F=(F8%4/simplex/p ivotvar.mG>%1simplex/do_pivotG.-F46$.FE(F8%1/simplex/pivot.mG>%,simple x/maxG.-F46#.FM>%0simplex/displayG.-F46#.FS>%3simplex/fuzzy_zeroG-.%&e valfG6#*&\"\"\"Fin)\"#5,&.%'DigitsG\"\"\"!\"#F_o!\"\"-%¯oG6#/%'rat iosG%&ratioG>%,convert/stdG.-F46#.%4simplex/convert/stdG>%4convert/sim plex/stdGFjo>%1convert/equalityG.-F46#.%9simplex/convert/equalityG>%9c onvert/simplex/equalityGFcp>%1convert/lessthanG.-F46#.%9simplex/conver t/lessthanG>%9convert/simplex/lessthanGF\\q>%.convert/stdleG.-F46#.%6s implex/convert/stdleG>%6convert/simplex/stdleGFeq>%4type/simplex/linea rG.-F46#.%4simplex/type/linearG>%4type/simplex/nonnegG.-F46#.%4simplex /type/nonnegG>%1type/NONNEGATIVEGFer>F*F+F/F$64F1F=FEFMFSFioF`pFbpFipF [qFbqFdqF[rF]rFdrF[sFYF*F$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "eval(`type/simplex/linear`);" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#R6 #%\"fG6#%#t1G6#%aoCopyright~(c)~1991~by~the~University~of~Waterloo.~Al l~rights~reserved.G6\"@%-%%typeG6$9$%)relationGC$>8$,&-%#opG6$\"\"\"F/ F8-F66$\"\"#F/!\"\"-%&evalbG6#3-F-6$F3-%(polynomG6$%)anythingG&9\"6#;F ;9#/-%'degreeG6#F3F8-F>6#3-F-6$F/FC/-FN6#FHF8F*F*F*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1203 "formalize:=proc(obj,constraints)\nlocal cnsts,c,x,X,Z,z,n,m,A,b,i,j;\nglobal `type/simplex/linear`;\n`type/si mplex/linear`:=readlib('`simplex/type/linear`');\nif not type(obj,\{co nstant, `simplex/linear`\}) then ERROR(\"non-linear objective function \",obj,constraints) fi;\n\nif not type(constraints,\{list, set\}(`=`)) then ERROR(\"non-equation constraints\",obj,constraints) fi;\ncnsts:= convert(constraints,list);\ncnsts:=map(proc(eq) op(1,eq)-op(2,eq) end, cnsts);\ncnsts := select(proc (x) not evalb(x=0) end,cnsts);\nif selec t(proc (x) type(x,constant) end,cnsts) <> [] then ERROR(\"incompatible constraints\",obj,constraints) fi;\nfor c in cnsts do \n if not type (c,'`simplex/linear`') then ERROR(\"non-linear constraint\",obj,constr aints) fi od;\nX:=indets(cnsts);\nZ:=indets(obj);\nfor z in Z do\n if not member(z,X) then \n ERROR(\"some variables in the objective fu nction\n are not constrained\",obj,constraints)\n fi\nod;\n X:=convert(X,list);\nn:=nops(cnsts);\nm:=nops(X);\nA:=array(1..n,1..m) ;\nb:=array(1..n);\nc:=array(1..m);\nfor i to n do \n for j to m do\n A[i,j]:=coeff(cnsts[i],X[j])\n od;\n b[i]:=add(A[i,j]*X[j],j=1.. m)-cnsts[i]\nod;\nfor j to m do \n c[j]:=coeff(obj,X[j])\nod;\nX,eval (A),eval(b),eval(c)\nend:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 137 "constr:=\{-3*x[1]+2*x[2]=-exp(1)*x[3]+2,\n -x[1]+sqrt(2)* x[2]+x[4]=4,\n x[1]+x[2]+x[5]=5,\n 2*(x[1]+x[2])+Pi*x[ 3]=0\};" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%'constrG<&/,&&%\"xG6#\"\" \"!\"$&F)6#\"\"#F/,&*&-%$expGF*F+&F)6#\"\"$F+!\"\"F/F+/,(F(F+F-F+&F)6# \"\"&F+F " 0 "" {MPLTEXT 1 0 19 "goal:= -x[1]-2*x[2];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%goalG,&&%\"xG6#\" \"\"!\"\"&F'6#\"\"#!\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 " formalize(goal,constr);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&7'&%\"xG6# \"\"\"&F%6#\"\"#&F%6#\"\"$&F%6#\"\"%&F%6#\"\"&-%'matrixG6#7&7'!\"$F*-% $expGF&\"\"!F<7'F'F'F " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK "12 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 }