Jsun Yui Wong
The following computer program tries to solve Example 5.1 on pages 119-120 of Conley [2]. Line 181 through line 1111 of the following computer program partly describe the problem.
The following computer program is modeled after the nuclear-chain-reaction picture on page 336 of the World Book Dictionary [1] and after the domino method of solving nonlinear systems of equations [10]. Line 193 through line 459 are illustrative. Line 193 and line 195, which are 193 X(4) = 8000 -X(1) -17*X(2) and 195 X(5) = 4000 -X(2) -5*X(3), are two expressions of two of the inequality constraints. Line 193's X(4), a slack variable, is proxy domino one; line 195's X(5), a slack variable, is proxy domino two.
0 DEFDBL A-Z
2 DEFINT I,J,K,X
3 DIM B(99),N(99),A(99),H(99),L(99),U(99),X(1111),D(111),P(111),PS(33)
12 FOR JJJJ=-32000 TO 32000
14 RANDOMIZE JJJJ
16 M=-1D+37
41 FOR J44=1 TO 3
42 A(J44)=FIX(RND*300)
43 NEXT J44
126 IMAR=10+FIX(RND*2000)
128 FOR I=1 TO IMAR
129 FOR KKQQ=1 TO 3
130 X(KKQQ)=A(KKQQ)
131 NEXT KKQQ
133 FOR IPP=1 TO (1+FIX(RND*2))
181 J=1+FIX(RND*3)
183 REM R=(1-RND*2)*A(J)
185 REM IF RND<.25 THEN PA=(RND)*R ELSE IF RND<.33 THEN PA=(RND^3)*R ELSE IF RND<.5 THEN PA=(RND^5)*R ELSE PA=(RND^7)*R
189 REM X(J)=A(J)+PA
190 REM X(J)=A(J)+FIX(RND*2 )-FIX(RND*2)
191 X(J)=A(J)+FIX(RND*51)-FIX(RND*51)
192 NEXT IPP
193 X(4) = 8000 -X(1) -17*X(2)
195 X(5) = 4000 -X(2) -5*X(3)
201 FOR J44=1 TO 3
202 IF X(J44)<0 THEN 1670
203 NEXT J44
206 FOR J44=1 TO 3
207 IF X(J44)>999 THEN 1670
208 NEXT J44
211 FOR J44=4 TO 5
212 IF X(J44)<0 THEN QS(J44)=ABS(X(J44)) ELSE QS(J44)=0
213 NEXT J44
351 PS(1)=X(1)+X(2)+ 2*X(3) -2000
353 PS(2)=- X(1)-7*X(2)-2*X(3) +200
354 PS(3)=- X(1)-X(2) -X(3) +200
355 PS(4)=- X(1)^2-X(2)*X(3) +900
356 FOR J44=1 TO 4
357 IF PS(J44)>0 THEN PS(J44)=PS(J44) ELSE PS(J44)=0
358 NEXT J44
411 POBA= -6*X(1)^2-18*X(2)^2-7*X(3)^2+2*X(1)+16*X(2)+31*X(3)+12*X(1)*X(2)*X(3)
459 POB1=POBA -999999999#*(+QS(4)+QS(5)+PS(1)+PS(2)+PS(3)+PS(4) )
463 P1NEWMAY=POB1
466 P=P1NEWMAY
1111 IF P<=M THEN 1670
1452 M=P
1454 FOR KLX=1 TO 5
1455 A(KLX)=X(KLX)
1456 NEXT KLX
1557 GOTO 128
1670 NEXT I
1889 IF M<1573000000# THEN 1999
1900 PRINT A(1),A(2),A(3),A(4),A(5)
1905 PRINT M,JJJJ
1999 NEXT JJJJ
This BASIC computer program was run with Microsoft's GW BASIC 3.11 interpreter. The complete output through JJJJ=-28406 is shown below. What follows is a hand copy of the output on the computer-monitor screen; immediately below there is no rounding by hand.
775 425 400 0 1575
1573045632 -31854
758 426 408 0 1534
1573099264 -31346
758 426 408 0 1534
1573099264 -30016
758 426 408 0 1534
1573099264 -29117
775 425 400 0 1575
1573045632 -28406
On a personal computer with an Intel 2.66 chip and the IBM basica/D interpreter, version GW BASIC 3.11, the throughput time from JJJJ=-32000 through JJJJ=-28406 was 13 minutes.
References
[1] Clarence L. Barnhart, Robert K. Barnhart (Editors). The World Book Dictionary, 1993 World Book, Inc., a Scott Fetzer company, Chicago London Sydney Toronto.
[2] William Conley, Computer Optimization Techniques. New York/Princeton: Petrocelli Books, Inc., Copyright 1980.
[3] George B. Dantzig, Discrete-Variable Extremum Problems. Operations Research, Vol. 5, No. 2 (Apr., 1957), pp. 266-277.
[4] Michael Junger, Thomas M. Liebling, Dennis Naddef, George L. Nemhauser, William R. Pulleybank, Gerhart Reinelt, Giovanni Rinaldi, Lawrence A. Wolsey--Editors, 50 Years of Integer Programming 1958-2008. Berlin: Springer, 2010.
[5] A. H. Land, A. G. Doig, An Automatic Method of Solving Discrete Programming Problems. Econometrica, Vol. 28, No. 3 (Jul., 1960), pp. 497-520.
[6] E. L. Lawler, M. D. Bell, A Method for Solving Discrete Optimization Problems. Operations Research, Vol. 14, No. 6 (Nov.-Dec., 1966), pp. 1098-1112.
[7] Duan Li, Xiaoling Sun, Nonlinear Integer Programming. Boston: Springer, 2006.
[8] Harry M. Markowitz, Alan S. Manne, On the Solution of Discrete Programming Problems. Econometrica, Vol. 25, No. 1 (Jan., 1957), pp. 84-110.
[9] Microsoft Corp., BASIC, Second Edition (May 1982), Version 1.10. Boca Raton, Florida: IBM Corp., Personal Computer, P. O. Box 1328-C, Boca Raton, Florida 33432, 1981.
[10] Jsun Yui Wong (2011, April 17). The Domino Method of Solving Nonlinear Systems of Equations. Retrieved from http://computationalresultsfromcomputerprograms.wordpress.com/2011/04/17/
Comments
You can follow this conversation by subscribing to the comment feed for this post.