{VERSION 2 3 "IBM INTEL NT" "2.3" } {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 "Hyperlink" -1 17 "" 0 1 0 128 128 1 0 0 1 0 0 0 0 0 0 } {CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "2 D 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 "Times" 1 12 128 0 0 1 0 1 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 0 0 0 0 0 1 3 0 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 1" 0 3 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 0 0 0 0 0 0 0 }1 0 0 0 6 6 0 0 0 0 0 0 -1 0 }{PSTYLE "Warning " 2 7 1 {CSTYLE "" -1 -1 "" 0 1 0 0 255 1 0 0 0 0 0 0 1 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 }{PSTYLE "newpage" -1 256 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 1 0 -1 0 }{PSTYLE "vfill" -1 257 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 "R3 Font 0" -1 258 1 {CSTYLE "" -1 -1 "Courier" 1 18 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 2" -1 259 1 {CSTYLE "" -1 -1 "Lucidabright" 1 19 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 3" -1 260 1 {CSTYLE "" -1 -1 "Lucida " 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 } {PSTYLE "R3 Font 4" -1 261 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 5" -1 262 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 6" -1 263 1 {CSTYLE " " -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 7" -1 264 1 {CSTYLE "" -1 -1 "Charter" 1 18 0 0 0 0 1 2 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 } {PSTYLE "R3 Font 8" -1 265 1 {CSTYLE "" -1 -1 "Charter" 1 18 0 0 0 0 1 2 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 9 " -1 266 1 {CSTYLE "" -1 -1 "Charter" 1 18 0 0 0 0 1 2 2 0 0 0 0 0 0 } 0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 10" -1 267 1 {CSTYLE "" -1 -1 "Charter" 1 18 0 0 0 0 1 2 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 11" -1 268 1 {CSTYLE "" -1 -1 "Charter" 1 18 0 0 0 0 1 2 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 12" -1 269 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R 3 Font 13" -1 270 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 14" -1 271 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 15" -1 272 1 {CSTYLE "" -1 -1 "Lucida" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 16" -1 273 1 {CSTYLE "" -1 -1 "Courier" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R 3 Font 17" -1 274 1 {CSTYLE "" -1 -1 "Courier" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 18" -1 275 1 {CSTYLE "" -1 -1 "Courier" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 19" -1 276 1 {CSTYLE "" -1 -1 "Courier" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 20" -1 277 1 {CSTYLE "" -1 -1 "Courier" 1 14 0 0 0 0 1 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R 3 Font 21" -1 278 1 {CSTYLE "" -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 2 2" -1 279 1 {CSTYLE "" -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 23" -1 280 1 {CSTYLE "" -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 24" -1 281 1 {CSTYLE "" -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 25" -1 282 1 {CSTYLE " " -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 26" -1 283 1 {CSTYLE "" -1 -1 "Lucidatypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 27" -1 284 1 {CSTYLE "" -1 -1 "Luci datypewriter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "R3 Font 28" -1 285 1 {CSTYLE "" -1 -1 "Lucidatypewr iter" 1 14 0 0 0 0 2 1 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 3 286 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 286 "" 0 "" {TEXT -1 22 "Assignment problems. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 47 "If you have n people to do n jo bs and it costs " }{XPPEDIT 18 0 "c[ij" "&%\"cG6#%#ijG" }{TEXT -1 464 " dollars for the ith person to do the jth job, then you have an assig nment problem. It can be treated as a transportation problem where t he supply and demand equations all have right hand sides 1. A basi c feasible solution will have exactly n assignments of value 1, and th e other n-1 basic variables will be assigned value 0. This will cause a lot of 'wasted iterations' when we apply the transportation simplex algorithm, but that's ok. They're cheap. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 246 "I have expanded the defi nitions of the words fastransport, checkopt, and get cycle so as to \+ print out more intermediate information to enable you to see the work \+ going into getting the entering variable, the cycle, and the leaving v ariable. " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 9 " restart;" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "with(linalg):" }}{PARA 7 "" 1 "" {TEXT -1 32 "Warning, new definition for norm" }}{PARA 7 "" 1 "" {TEXT -1 33 "Warning, new definition for trace" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 14 "with(simplex):" }}{PARA 7 "" 1 "" {TEXT -1 33 "Warning, new definition for basis" }}{PARA 7 "" 1 "" {TEXT -1 36 "War ning, new definition for maximize" }}{PARA 7 "" 1 "" {TEXT -1 36 "Warn ing, new definition for minimize" }}{PARA 7 "" 1 "" {TEXT -1 33 "Warni ng, new definition for pivot" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 40 " \+ The northwest corner rule is unchanged." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 481 " nwcrule := proc(c,s,d )\n local bv,x, i,j,rw,cl,n, m,fin;\n n := rowdim(c):\n m := coldim(c):\n x := matrix(n,m,[0$n*m ]);\n bv := NULL: rw := 1:\n for cl from 1 to m do\n while rw < n +1 and sum(x[i,cl],i=1..rw-1 ) < d[cl] do\n x[rw,cl] := min(d[cl]-s um(x[i,cl],i=1..rw-1),\n s[rw]-sum(x[rw,j],j=1..cl-1 ));\n bv := bv,[rw,cl];\n rw := rw+1; \n od;\n if rw > \+ n or s[rw]-sum(x[rw,j],j=1..cl) > 0 then rw := rw-1 fi\n od; \n [ evalm(x),\{bv\}]; \n end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 284 "g etuv finds the shadow prices that accompany the current basis. Thes e enable you to choose the entering variable. Note that as we discu ssed in class, the u[i] and v[j]'s are not unique and so you can set a ny one of them to zero and then determine the others. We can set v[1] =0." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 313 "getuv := proc(c,x,b v,`u`,`v`)\n local eqs, i, j,t,t1,rw;\n eqs := \{\}:\nfor i from 1 to \+ rowdim(x) do\n for j from 1 to coldim(x) do\n if member([i,j],bv) the n \n eqs := eqs union \{c[i,j]=u[i]+v[j]\} fi;\n od od;\n v[1]:=0;\n \+ assign(solve( eqs ,\n\{seq(u[i],i= 1..rowdim(x)), seq(v[j],j =2..coldim(x))\})); \nend: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 97 "Checkopt returns true if the current solution is optimal, else re turns the entering variable. " }}}{EXCHG {PARA 0 "> " 0 "checkopt" {MPLTEXT 1 0 516 "checkopt := proc(c,x,bv,u,v,prt)\n local i,j ,t,t1,i nc,shad ;\n t := 0;\nshad := matrix(rowdim(c),coldim(c),[seq(0,i=1..r owdim(c)*coldim(c))]);\ninc := true: for i from 1 to rowdim(c) do\n \+ for j from 1 to coldim(c) do\n t1 := subs(M=infinity,c[i,j]-u[i]-v[j ]);\n if member ([i,j],bv) then shad[i,j]:=`b`\n else shad[i,j]:= t1 fi;\n if not member([i,j],bv) \n then if t1 < t then\n t := t1; inc := [i,j] fi fi;\n od od;\n if nargs() = 5 then print(`reduced \+ costs`);\n print(evalm(shad)); fi;\n RETURN(inc); end:" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 71 "getcycle takes the current basis a nd entering variable and returns the" }}{PARA 0 "" 0 "" {TEXT -1 35 " cycle in bv union ev containing ev." }}}{EXCHG {PARA 0 "> " 0 "getcycl e " {MPLTEXT 1 0 598 "getcycle := proc(bv,ev)\n local paths, lev, fin, newpaths, i,j, p, v;\npaths := table() ; \npaths[1] := [ev]; \nlev := 0; fin := false; \nwhile not fin do\n newpaths := table(); i := 0; \n for j from 1 to nops(\{indices(paths)\}) do\n for v in \+ bv minus \{op(paths[j])\} do\n if v[lev mod 2 +1] = paths[j][-1] [lev mod 2 +1] \n then i := i+1;\n newpaths[i ] := [op(paths[j]),v]; \n if v[lev+1 mod 2 +1] = ev[lev+ 1 mod 2 +1] then\n \nRETURN(newpaths[i]) fi; \n fi;\n od od;\n paths := op(newpaths);\n lev := lev+1;\n od; \n end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "We need a cost \+ function." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 87 " cost := proc( c,x,bv) convert([seq(c[op(bv[i])]*x[op(bv[i])],i=1..nops(bv))],`+`); e nd:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 " Finally, putting this all together in the word fasttransport2." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 911 "fasttransport2 := proc(c,s,d,prt)\n local sol, x,bv, iter, fin, u, v, ev, st,cy,cyc, t, r, i, r1, t1, lv;\nsol := nwcrule( c,s,d ) ;\n x := sol[1];\n bv := sol[2];\nfin := false;\niter := 0;\nw hile not fin do\nif nargs()=4 then print(evalm(x)); print(cost(c,x,bv) ) fi;\nu := 'u': v := 'v': \ngetuv(c,x,bv,u,v);\nev := checkopt(c,x,bv ,u,v);\nif ev=true then RETURN([bv,op(x),cost(c,x,bv)]) fi;\niter := i ter+1; print(`iteration `,iter);\ncy := getcycle(bv,ev);\ncyc := matri x(nops(s),nops(d),[seq(0,i=1..nops(s)*nops(d))]);\nfor st in bv do cyc [op(st)]:=1 od:\nfor st in cy do cyc[op(st)]:=`y` od;\ncyc[op(ev)]:=`e `;\n print( evalm(cyc));\n t := infinity; r := 0,0; for i from 1 to n ops(cy)/2 do\n r1 := op(cy[2*i ]);\n t1 := subs(M=infinity, x[r1]); \n if t1 < t then t := t1; r := r1; fi\n od ; lv := [r];\n for i f rom 1 to nops(cy) do\n x[op(cy[i])] := x[op(cy[i])]+(-1)^(i+1)*t od; \n bv := \{ev\} union (bv minus \{lv\}); \nod; end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 " Now let's look at the assignment problem from \+ class." }{MPLTEXT 1 0 3 " " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "c := matrix(3,3,[5,6,1,3,2,2,5,2,5 ]); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"cG-%'MATRIXG6#7%7%\"\"&\"\"'\"\"\"7%\"\"$\"\"#F/7%F *F/F*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "d := [1,1,1]: s := [1,1,1]: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "t := time():s ol := fasttransport2(c,s,d,p); ftime := time()-t;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%\"\"\"\"\"!F)7%F)F(F)7%F)F)F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#7" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.re duced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"bGF (!\"&7%\"\"#F(F(7%\"\"\"!\"$F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+it eration~G\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%\" \"\"%\"yG%\"eG7%\"\"!F)F)7%F,F,F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#- %'MATRIXG6#7%7%\"\"\"\"\"!F)7%F)F(F)7%F)F)F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#7" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costs G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"bG\"\"&F(7%!\" $F(F(7%!\"%F+F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"\"# " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"yG\"\"!F(7%F)\" \"\"F+7%%\"eGF)F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7% \"\"!F(\"\"\"7%F(F)F(7%F)F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\") " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"bG\"\"&F(7%!\"$F(F(7%F(\"\"\"\"\" %" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"\"$" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"yG\"\"!F(7%%\"eG\"\"\"F(7%F,F )F)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%\"\"!F(\"\"\"7% F(F)F(7%F)F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\")" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%%\"bG\"\"#F(7%F(F(\"\"$7%F(!\"#\"\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"\"%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%\"\"\"\"\"!F(7%%\"yGF+F)7%F+%\"eGF)" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7%7%\"\"!F(\"\"\"7%F)F(F(7 %F(F)F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%' MATRIXG6#7%7%%\"bG\"\"#F(7%F(F(\"\"$7%F)F(\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$solG7%<'7$\"\"#\"\"\"7$F(F(7$F)F)7$\"\"$F(7$F)F--%'M ATRIXG6#7%7%\"\"!F4F)7%F)F4F47%F4F)F4\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&ftimeG$\"%e[!\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 76 " We need to check this against the standard setup a transporta tion problem." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 526 "slowtrans port := proc(c,s,d)\n local m, n, x, eqs, i, j, obj,soln;\n m := row dim(c): n := coldim(c):\n x := matrix(m,n);\n eqs := NULL;\n for i \+ from 1 to m do\n eqs := eqs,sum(x[i,j],j=1..n)<= s[i],\n su m(x[i,j],j=1..n)>= s[i] od;\n i := 'i':\n for j from 1 to n do\n e qs := eqs,sum(x[i,j],i=1..m)<=d[j],\n sum(x[i,j],i=1..m)>=d[j] od;\n eqs := \{eqs\};\n j := 'j':\n obj := sum(sum(c[i,j]*x[i,j],j=1.. n),i=1..m);\n soln:=minimize(obj,eqs,NONNEGATIVE);\n assign(soln); \n [subs(soln,obj),evalm(x)]; \n end:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 68 "t := time():sln := slowtransport(subs(M=10^3 , op(c)),s,d);\ntime()-t;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$slnG7$\" \"'-%'MATRIXG6#7%7%\"\"!F,\"\"\"7%F-F,F,7%F,F-F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"%M@!\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 223 "Wel l, so much for the streamlinedness of the fast transportation algorith m. Slow is faster than fast in this implementation. We could try a larger problem to see what happens. Make a random 10 by 10 assignmen t problem." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "c := map(abs, randmatrix(10,10)); \ns := [1$10];\nd :=s;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"cG-%'MATRIXG6#7,7,\"#&)\"#b\"#P\"#N\"#(*\"#]\"#z\"# c\"#\\\"#j7,\"#d\"#f\"#X\"\")\"#$*\"##*\"#V\"#i\"#x\"#m7,\"#a\"\"&\"#* *\"#hF/\"#7\"#=\"#J\"#EF<7,\"\"\"\"#Z\"#\"*FJFC\"#T\"#e\"#!*\"#`FI7,\" #%*\"#$)\"#')\"#B\"#%)\"#>F/\"#))FOF*7,F2\"#y\"#<\"#sFBF*FS\"#I\"#!)Fe n7,F>\"#HFKFOFVFJ\"#oFen\"#()F07,F;F>FOFCFTF,FF\"#M\"#UFW7,\"#w\"#l\"# D\"#GFC\"#g\"\"*FinF>\"#K7,FY\"#RFQFjnFZ\"#)*\"#O\"#S\"#AFA" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"sG7,\"\"\"F&F&F&F&F&F&F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"dG7,\"\"\"F&F&F&F&F&F&F&F&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "t := time():sln := fasttransport2(s ubs(M=10^3 ,op(c)),s,d);\ntime()-t; " }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7, %\"bGF(!\"%\"#K\"#!)\"#)*\"$E\"\"#**\"#%)\"$K\"7,!#KF(F(\"\"\"\"#s\"$O \"\"#')\"$,\"\"$3\"\"$J\"7,!#*)!$3\"F(F(!#D\"\"#\"\"(\"#;\"\"$\"#t7,!$ G\"!#_\"\"'F(F(\"#X\"#h\"#*)\"#W\"#E7,!#e!#R!#A!#ZF(F(\"#I\"#k\"#@\"#( )7,!$p\"!$5\"!$d\"!#k!#^F(F(!#g!#=\"\")7,!$M\"!$T\"!#lF[o!$8\"!#?F(F(F ?\"#L7,!$>\"!#mF[o!#>!#rFgnF3F(F(F+7,FW!#\"*!$<\"!#w!#dF?!#X!#HF(F(7,! #\")!#!*!#@!\"*!#uF4\"\"*Fap!#F)\"$d\"\"$'=F)7,\"$@\"\"#'*\"$p\"\"$ !=\"$:\"\"$h#\"#a\"$&>FbpF)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+itera tion~G\"\")" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!% \"yGF)F(F(F(F(F(F(F(7,F(F(F)F)F(F(F(F(F(F(7,F(F(F(\"\"\"F(F(F(F(F,F(7, F(F(F(F)F,F(F(F(F(%\"eG7,F(F(F(F(F,F,F(F(F(F(7,F,F(F,F(F(F(F(F(F(F(7,F (F)F(F(F(F(F)F(F(F(7,F(F(F(F(F(F(F(F,F,F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F (F(F(F(F(F(F(F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"#;%\"bGF)\"#N!#!)!# i!#:\"#**\"#%)!#a7,!#?!\"%F)F)!##*!#G!#f\"#(*\"$/\"F67,!#w!$6\"\"\"\"F )!$)=!$h\"!$P\"\"#8F)!$;\"7,\"#[\"$3\"\"$q\"\"$j\"F)\"#X\"#!)\"$\\#\"$ /#F)7,\"$=\"\"$@\"\"$U\"\"$;\"F)F)\"#\\\"$C#\"$\"=\"#h7,F)\"#VF)\"##*! #e!\"(\"#7\"#$*\"$N\"!#D7,\"#BF)FH\"#z!$K\"!#RF)\"$T\"\"$[\"!#77,!$.\" !#m!#h!#;!$J#!$_\"!$S\"F)F)!$1\"7,FV\"#&*\"#t\"$8\"!#J\"#LF)\"$d\"\"$' =F)7,FM\"#'*\"$p\"\"$!=!#[\"#)*\"#a\"$&>FbpF)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#- %'MATRIXG6#7,7,\"\"!%\"yGF)F(F(F(F(F(F(F(7,F(F(F)F)F(F(F(F(F(F(7,F(F(F (F)F(F(F(F(F)F(7,F(F(F(F(F)F(F(F(F(F)7,F(F(F(F(\"\"\"F.F(F(F(F(7,F.F(F .F(F(F(F(F(F(F(7,F(F)F(F(F(F(F)F(F(F(7,F(F(F(F(%\"eGF(F(F.F)F(7,F(F(F( F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F(F(F." }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7, \"#;%\"bGF)\"#N!#!)!#i!#:!$K\"\"#%)!#a7,!#?!\"%F)F)!##*!#G!#f!$M\"\"$/ \"F67,!#w!$6\"\"\"\"F)!$)=!$h\"!$P\"!$=#F)!$;\"7,\"#[\"$3\"\"$q\"\"$j \"F)\"#X\"#!)\"#=\"$/#F)7,\"$=\"\"$@\"\"$U\"\"$;\"F)F)\"#\\!\"(\"$\"= \"#h7,F)\"#VF)\"##*!#eFQ\"#7!$Q\"\"$N\"!#D7,\"#BF)FH\"#zF.!#RF)!#!*\"$ [\"!#77,\"$G\"\"$l\"FE\"$:#F)Fhn\"#\"*F)\"$J#\"$D\"7,FV\"#&*\"#t\"$8\" !#J\"#LF)!#u\"$'=F)7,FM\"#'*\"$p\"\"$!=!#[\"#)*\"#a!#OF^pF)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#5" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!%\"yGF)F(F(F(F(F(F(F(7,F(F(F)F)F(F (F(F(F(F(7,F(F(F(F)F(F(F(%\"eG\"\"\"F(7,F(F(F(F(F)F(F(F(F(F)7,F(F(F(F( F-F-F(F(F(F(7,F-F(F-F(F(F(F(F(F(F(7,F(F)F(F(F(F(F)F(F(F(7,F(F(F(F(F)F( F(F)F(F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F(F(F-" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# -%'MATRIXG6#7,7,\"#;%\"bGF)\"#N!#!)!#i!#:!$K\"!$M\"!#a7,!#?!\"%F)F)!## *!#G!#fF/!$9\"F67,\"$U\"\"$2\"\"$>#\"$=#\"#I\"#d\"#\")F)F)\"$-\"7,\"#[ \"$3\"\"$q\"\"$j\"F)\"#X\"#!)\"#=!#9F)7,\"$=\"\"$@\"F9\"$;\"F)F)\"#\\! \"(!#P\"#h7,F)\"#VF)\"##*!#eFO\"#7!$Q\"!#$)!#D7,\"#BF)FG\"#zF.!#RF)!#! *!#q!#77,\"$G\"\"$l\"FD\"$:#F)Ffn\"#\"*F)\"#8\"$D\"7,FT\"#&*\"#t\"$8\" !#J\"#LF)!#u!#KF)7,FL\"#'*\"$p\"\"$!=!#[\"#)*\"#a!#O!#\\F)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#6" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!%\"yGF)F(F(F(F(F(F(F(7,F(F(\"\"\"F +F(F(F(F(F(F(7,F(F(F(F(F(F(F(F+F+F(7,F(F(F(F(F)F(F(F(F(F)7,F(F(F(F(F+F +F(F(F(F(7,F+F(F)F(F(F(F(%\"eGF(F(7,F(F)F(F(F(F(F)F(F(F(7,F(F(F(F(F)F( F(F)F(F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F(F(F+" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# -%'MATRIXG6#7,7,!$A\"%\"bGF)\"#N!#!)!#i!#:!$K\"!$M\"!#a7,!$e\"!\"%F)F) !##*!#G!#fF/!$9\"F67,\"\"%\"$2\"\"$>#\"$=#\"#I\"#d\"#\")F)F)\"$-\"7,!# !*\"$3\"\"$q\"\"$j\"F)\"#X\"#!)\"#=!#9F)7,!#?\"$@\"\"$U\"\"$;\"F)F)\"# \\!\"(!#P\"#h7,F)\"$\"=\"$Q\"\"$I#FG\"$J\"\"$]\"F)\"#b\"$8\"7,!$:\"F)F G\"#zF.!#RF)FB!#q!#77,!#5\"$l\"FD\"$:#F)Fgn\"#\"*F)\"#8\"$D\"7,!#Y\"#& *\"#tFZ!#J\"#LF)!#u!#KF)7,!#<\"#'*\"$p\"\"$!=!#[\"#)*\"#a!#O!#\\F)" }} {PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#7" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!%\"yGF)F(F(F(F(F(F(F(7,%\"eGF(F)\" \"\"F(F(F(F(F(F(7,F(F(F(F(F(F(F(F,F,F(7,F(F(F(F(F)F(F(F(F(F)7,F(F(F(F( F,F,F(F(F(F(7,F)F(F(F(F(F(F(F)F(F(7,F(F)F(F(F(F(F)F(F(F(7,F(F(F(F(F)F( F(F)F(F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F(F(F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# -%'MATRIXG6#7,7,!$A\"%\"bGF)!$B\"!#!)!#i!#:!$K\"!$M\"!#a7,F)\"$a\"\"$e \"F)\"#m\"$I\"\"#**\"#C\"#WF67,\"\"%\"$2\"\"$>#\"#g\"#I\"#d\"#\")F)F) \"$-\"7,!#!*\"$3\"\"$q\"\"\"&F)\"#X\"#!)\"#=!#9F)7,!#?\"$@\"\"$U\"!#UF )F)\"#\\!\"(!#P\"#h7,F)\"$\"=\"$Q\"\"#sFH\"$J\"\"$]\"F)\"#b\"$8\"7,!$: \"F)FH!#zF.!#RF)FC!#q!#77,!#5\"$l\"FEF?F)\"#z\"#\"*F)\"#8\"$D\"7,!#Y\" #&*\"#t!#X!#J\"#LF)!#u!#KF)7,!#<\"#'*\"$p\"\"#A!#[\"#)*\"#a!#O!#\\F)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#8" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!%\"yG\"\"\"F(F(F(F(F(%\"eGF(7,F* F(F(F*F(F(F(F(F(F(7,F(F(F(F(F(F(F(F)F)F(7,F(F(F(F(F)F(F(F(F(F)7,F(F(F( F(F*F*F(F(F(F(7,F*F(F(F(F(F(F(F*F(F(7,F(F)F(F(F(F(F)F(F(F(7,F(F(F(F(F) F(F(F)F(F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F(F(F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#-%'MATRIXG6#7,7,\"#7\"$M\"%\"bG\"#6\"#a\"#s\"$>\"\"\"#F*\"#!)7,F*\"$ a\"\"#CF*\"#m\"$I\"\"#**F3\"#WF67,\"\"%\"$2\"\"#&)\"#g\"#I\"#d\"#\")F* F*\"$-\"7,!#!*\"$3\"\"#O\"\"&F*\"#XF0\"#=!#9F*7,!#?\"$@\"\"\")!#UF*F* \"#\\!\"(!#P\"#h7,F*\"$\"=F9F-F0\"$J\"\"$]\"F*\"#b\"$8\"7,!$:\"F*!#a!# z!$K\"!#RF*FB!#q!#77,!#5\"$l\"FDF>F*\"#z\"#\"*F*\"#8\"$D\"7,!#Y\"#&*!# h!#X!#J\"#LF*!#u!#KF*7,!#<\"#'*\"#N\"#A!#[\"#)*F,!#O!#\\F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#9" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!F(\"\"\"F(F(F(F(F(F)F(7,F)F(F(F)F( F(F(F(F(F(7,F(F(F(F(F(F(F(F)F)F(7,F(F(F(F(%\"yGF(F(F(F(F-7,F(F(F(F(F)F )F(F(F(F(7,F)F(F(F(F(F(F(F)F(F(7,F(F)F(F(%\"eGF(F-F(F(F(7,F(F(F(F(F)F( F(F)F(F(7,F(F(F(F(F(F(F-F(F(F-7,F(F(F(F(F(F(F(F(F(F)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# -%'MATRIXG6#7,7,\"#7\"\"#%\"bG\"#6\"#a\"#s\"$>\"F)F*\"#!)7,F*\"#A\"#CF *\"#m\"$I\"\"#**F2\"#WF57,\"\"%!#D\"#&)\"#g\"#I\"#d\"#\")F*F*\"$-\"7,! #!*!#C\"#O\"\"&F*\"#XF/\"#=!#9F*7,!#?!#6\"\")!#UF*F*\"#\\!\"(!#P\"#h7, F*FMF8F-F/\"$J\"\"$]\"F*\"#b\"$8\"7,\"#F57,\"#HF*\"# &)F:F-\"#S\"#;\"#DF*F(7,F*F3\"$,\"\"#&*\"#!*\"#$*\"#!)\"$3\"\"#^F*7,F1 \"#JF=F*\"#UF*\"\"\"\"#N!#?\"#87,F*\"#\\!#@\"#sFC\"#*)\"#gF*\"#I\"#B7, \"#!\"&\"#DF*F(7,F*F3\"$A\" \"#&*\"$6\"\"#$*\"#!)\"$H\"\"#sF*7,\"#A\"#_\"#YF*\"#jF*\"\"\"\"#cFM\"# 87,F*\"#qF*FG\"$,\"\"#*)\"#g\"#@\"#^\"#B7,!\"%F*\"#`\"#KF*\"#IFU\"#U\" #PF57,!#JF.\"#6\"#OF*F(!#?F*!#7\"#97,\"#W\"#uF?F6FE\"#\")F*Fhn\"#aF*7, \"#t\"#v\"$@\"\"$7\"FL\"$Y\"FdoFgoFhnF*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#>" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6 #7,7,\"\"!F(%\"yGF(F(F(F(F(F)F(7,\"\"\"F(F(F+F(F(F(F(F(F(7,F(F)F(F(F(F (F(F(F)F(7,F+F(F(F(F(F(F(F(F(F+7,F(F(F(F+F(F+F(F(F(F(7,F)F(F)F(F(F(F(F (F(F(7,F(F)F(F(F)F(F(F(F(F(7,%\"eGF(F(F(F)F(F(F+F(F(7,F(F(F(F(F(F(F+F( F(F+7,F(F(F(F(F(F(F(F(F(F+" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduce d~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"#;\"#F% \"bG\"#:\"#z\"#M\"#L!\"%F*!\"'7,F*\"#V\"#?F*\"#()\"#))\"\"*\"#9\"#SF67 ,\"\")F*\"#&)\"#k\"#b\"#>!\"&F0F*F(7,F*F4\"$A\"\"#&*\"$6\"\"#$*\"#!)\" #)*\"#sF*7,\"#A\"#_\"#YF*\"#jF*\"\"\"\"#DFM\"#87,F*\"#qF*FG\"$,\"\"#*) \"#g!#5\"#^\"#B7,F/F*\"#`\"#KF*\"#I\"#@\"#6\"#PF67,F*F<\"#U\"#n\"#J\"# ZFgnF*F>\"#X7,\"#W\"#uFNF^oFE\"#\")F*\"\"'\"#aF*7,\"#t\"#v\"$@\"\"$7\" FL\"$Y\"FdoF`oFhnF*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\" #?" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"\"!F(\"\"\"F(F (F(F(F(F)F(7,F)F(F(F)F(F(F(F(F(F(7,F(F)F(F(F(F(F(F(F)F(7,F)F(F(F(F(F(F (F(F(F)7,F(F(F(F)F(F)F(F(F(F(7,%\"yGF(F)F(F(F(F(%\"eGF(F(7,F(F)F(F(F)F (F(F(F(F(7,F/F(F(F(F(F(F(F/F(F(7,F(F(F(F(F(F(F)F(F(F)7,F(F(F(F(F(F(F(F (F(F)" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6#7,7,\"#E\"#F%\"bG\"#D\"#z\"#W\"#V\" \"'F*\"\"%7,F*\"#L\"#5F*\"#x\"#))\"\"*\"#9\"#IF67,\"#=F*\"#&)\"#u\"#b \"#H\"\"&F0F*F(7,F*F4\"$7\"\"#&*\"$,\"\"#$*\"#!)\"#)*\"#iF*7,\"#A\"#U \"#OF*\"#`F*\"\"\"F+!\"*\"#87,F3\"#qF*\"##)FC\"#**FQF*\"#^F27,F/F*FLFJ F*\"#S\"#J\"#@\"#P\"#>7,F*\"#a\"#K\"#nFX\"#Z\"#6F*F6\"#X7,F-\"#k\"#:F[ oFQ\"#\")F*F/F-F*7,\"#t\"#l\"$6\"FAFL\"$Y\"FfnF-F)F*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$%+iteration~G\"#@" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #-%'MATRIXG6#7,7,\"\"!F(%\"yGF(F(F(F(F(F)F(7,F)F(F(F)F(F(F(F(F(F(7,F( \"\"\"F(F(F(F(F(F(F,F(7,F,F(F(F(F(F(F(F(F(F,7,F(F(F(F)F(F,F(F(%\"eGF(7 ,F(F(F)F(F(F(F(F)F(F(7,F(F,F(F(F,F(F(F(F(F(7,F)F(F(F(F(F(F(F)F(F(7,F(F (F(F(F(F(F,F(F(F,7,F(F(F(F(F(F(F(F(F(F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%.reduced~costsG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'MATRIXG6# 7,7,\"#E\"#F%\"bG\"#D\"#z\"#N\"#V\"\"'F*\"\"%7,F*\"#L\"#5F*\"#xF,\"\"* \"#9\"#IF57,\"#=F*\"#&)\"#u\"#b\"#?\"\"&F0F*F(7,F*F4\"$7\"\"#&*\"$,\" \"#%)\"#!)\"#)*\"#iF*7,\"#J\"#^\"#XF5FFF*F3\"#MF*\"#A7,F3\"#qF*\"##)FB \"#!*FNF*FIF27,F/F*\"#`\"#UF*FHFH\"#@\"#P\"#>7,F*\"#a\"#K\"#nFT\"#Q\"# 6F*F5FJ7,\"#W\"#k\"#:FJFN\"#sF*F/FhnF*7,\"#t\"#l\"$6\"F@FR\"$P\"FXFhnF )F*" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$slnG7%<57$\"\"$\"\"*7$\"\"% \"#57$\"\"'F(7$F)\"\"(7$\"\")\"\"\"7$\"\"&F)7$F3F)7$\"\"#F+7$F,F,7$F)F ,7$F2F27$F0F87$F+F37$F0F57$F8F37$F.F27$F(F87$F5F.7$F3F(-%'MATRIXG6#7,7 ,\"\"!FIFIFIFIFIFIFIF3FI7,FIFIFIF3FIFIFIFIFIFI7,FIF3FIFIFIFIFIFIFIFI7, F3FIFIFIFIFIFIFIFIFI7,FIFIFIFIFIF3FIFIFIFI7,FIFIF3FIFIFIFIFIFIFI7,FIFI FIFIF3FIFIFIFIFI7,FIFIFIFIFIFIFIF3FIFI7,FIFIFIFIFIFIF3FIFIFI7,FIFIFIFI FIFIFIFIFIF3\"$m\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"&]A$!\"$" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 68 "t := time():sln := slowtransport(subs(M=10^3 ,op(c)), s,d);\ntime()-t;" }}{PARA 7 "" 1 "" {TEXT -1 32 "Warning, computation \+ interrupted" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 10 "I give up." }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 1 " " }{HYPERLNK 17 "Table of cotents " 1 "ma416s97.mws" "" }}}}{MARK "28 0 0" 10 }{VIEWOPTS 1 1 0 1 1 1803 }