Jsun Yui Wong
The computer program listed below seeks to solve the following nonlinear Diophantine equation from Abraham, Sanyal, and Sanglikar [1]:
5*X(1)^5 + 9*X(2)^3 + 3*X(3)^2 + 7*X(4)^2 + 2*X(5)^2 = 60500.
0 DEFDBL A-Z
3 DEFINT J, K
4 DIM X(32768), A(32768), P(32768), K(32768)
5 FOR JJJJ = -32000 TO 32000
14 RANDOMIZE JJJJ
16 M = -1D+50
91 FOR KK = 1 TO 5
94 A(KK) = FIX(1 + RND * 20)
95 NEXT KK
128 FOR I = 1 TO 10000 STEP 1
129 FOR K = 1 TO 5
131 X(K) = A(K)
132 NEXT K
155 FOR IPP = 1 TO FIX(1 + RND * 3)
181 B = 1 + FIX(RND * 5)
183 REM R = (1 - RND * 2) * A(B)
188 REM IF RND < .2 THEN X(B) = FIX(A(B) + RND * R) ELSE IF RND < .25 THEN X(B) = FIX(A(B) + RND ^ 3 * R) ELSE IF RND < .333 THEN X(B) = FIX(A(B) + RND ^ 5 * R) ELSE IF RND < .5 THEN X(B) = FIX(A(B) + RND ^ 7 * R) ELSE X(B) = FIX(A(B) + RND ^ 9 * R)
191 IF RND < .5 THEN X(B) = CINT(A(B) - 1) ELSE X(B) = CINT(A(B) + 1)
199 NEXT IPP
262 PZ = -ABS(5 * X(1) ^ 5 + 9 * X(2) ^ 3 + 3 * X(3) ^ 2 + 7 * X(4) ^ 2 + 2 * X(5) ^ 2 - 60500)
1111 P = PZ
1451 IF P <= M THEN 1670
1657 FOR KEW = 1 TO 5
1658 A(KEW) = X(KEW)
1659 NEXT KEW
1661 M = P
1670 NEXT I
1890 IF M < 0 THEN 1999
1911 PRINT A(1), A(2), A(3), A(4), A(5), M, JJJJ
1999 NEXT JJJJ
This computer program was run with qb64v1000-win [21]. Copied by hand from the screen, the computer program’s complete output through JJJJ= -31854 is shown below.
6 13 16 9 16
0 -31993
6 13 -3 -6 28
0 -31986
6 13 19 6 16
0 -31967
5 17 -8 8 -3
0 -31962
6 13 3 6 28
0 -31888
6 12 17 27 7
0 -31873
6 13 9 6 26
0 -31854
Above there is no rounding by hand; it is just straight copying by hand from the screen.
On a personal computer with a Pentium Dual-Core CPU E5200 @2.50GHz, 2.50 GHz, 960 MB of RAM and with qb64v1000-win [21], the wall-clock time for obtaining the output through JJJJ= -31854 was 15 seconds.
Acknowledgment
I would like to acknowledge the encouragement of Roberta Clark and Tom Clark.
References
[1] S. Abraham, S. Sanyal, M. Sanglikar, Particle Swarm Optimization Based Diophantine Equation Solver. https://arxiv.org/ftp/arxiv/papers/1003/1003.2724.pdf.
[2] C. G. Broyden, A Class of Methods for Solving Nonlinear Simultaneous Equations, Mathematics of Computation, Vol. 19, Number 92, pp. 577-593, 1965.
[3] R. L. Burden, J. D. Faires, Annette M. Burden. Numerical Analysis, Tenth Edition. Cengage Learning, 2016.
[4] Huiping Cao, Global Convergence of Schubert’s Method for Solving Sparse Nonlinear Equations, Abstract and Applied Analysis, Volume 2014, Article ID 251587, 12 pages. Hindawi Publishing Corporation. http://dx.doi.org/10.1155/2014/251587.
[5] Steven C. Chapra, Applied Numerical Methods with MATLAB for Engineers and Scientists, Third Edition. McGraw-Hill, 2012. http://www.learngroup.org/uploads/2014-10-27/Applied_Num_Methods_with_MATLAB_for_Engineers_3ed1.pdf.
[6] C. A. Floudas, Deterministic Global Optimization. Kluwer Academic Publishers, 2000.
[7] Rendong Ge, Lijun Liu, Yi Xu, Neural Network Approach for Solving Singular Convex Optimization with Bounded Variables, Open Journal of Applied Sciences, 2013, 3, 285-292. Published Online July 2013. http://www.scirp.org/journal/ojapps.
[8] Amos Gilat, Vish Subramaniam, Numerical Methods for Engineers and Scientists: An Introduction with Applications Using MATLAB. Wiley, 2008.
[9] Amos Gilat, Vish Subramaniam, Numerical Methods for Engineers and Scientists: An Introduction with Applications Using MATLAB, 3rd Edition. Wiley, 2014.
[10] Tianmin Han, Yuhuan Han, Solving Large Scale Nonlinear Equations by a New ODE Numerical Integration Method, Applied Mathematics, 2010, 1, 222-229. http://www.SciRP.org/journal/am.
[11] William La Cruz, Jose Mario Martinez, Marcos Raydan, Spectral residual method without gradient information for solving large-scale nonlinear systems of equations: Theory and experiments. Technical Report RT-04-08, July 2004.
http://www.ime.unicamp.br/~martinez/lmrreport.pdf.
[12] William La Cruz, Jose Mario Martinez, Marcos Raydan, Spectral residual method without gradient information for solving large-scale nonlinear systems of equations, Mathematics of Computation, vol. 75, no. 255, pp.1429-1448, 2006.
[13] Guangye Li (1989) Successive column correction algorithms for solving sparse nonlinear systems of equations, Mathematical Programming, 43, pp. 187-207.
[14] 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.
[15] J. J. More, B. S. Garbow, K. E. Hillstrom (1981) Testing Unconstrained Optimization Software. ACM Transactions on Mathematical Software, Vol. 7, Pages 17-41.
[16] Alexander P. Morgan, A Method for Computing All Solutions to Systems of Polynomial Equations, ACM Transactions on Mathematical Software, Vol. 9, No. 1, March 1983, Pages 1-17. https://folk.uib.no/ssu029/pdf_file/Morgan83.pdf.
[17] NAG, NAG Fortran Library Routine Document, C05PDF/C05PDA.
http://www.nag.com/numeric/FL/manual/pdf/C05/c05pdf.pdf.
[18] Hime Aguiar E. Oliveira, Junior, Diophantine Equations and Fuzzy Adapttive Simulated Annealing. WSEAS Transactions on Mathematics, Volume 13, 2014.
[19] W. H. Press, S. A. Teukolsky, W. T. Vetterling, B. P. Flannery. Numerical recipes: the art of scientific computing, third ed. Cambridge University Press, 2007.
[20] J. Rice. Numerical Methods, Software, and Analysis, Second Edition. Academic Press, 1993.
[21] Wikipedia, QB64, https://en.wikipedia.org/wiki/QB64.
[22] J. Y. Wong. April 27 2016. The Domino Method of Nonlinear Integer/Continuous/Discrete Programming Seeking To
Solve a 19X19 System of Nonlinear Equations, Fourth Edition.
http://myblogsubstance.typepad.com/substance/2016/04/-the-domino-method-of-nonlinear-integercontinuousdiscrete-programming-seeking-to-solve-a-19×19-syste.html.
[23] Xin-She Yang, Introduction to Computational Mathematics. World Scientific Publishing Co. Pte. Ltd., 2008.
[24] M. Ziani, F. Guyomarc’h, An Autoadaptive Limited Memory Broyden’s Method To Solve Systems of Nonlinear Equations, Applied Mathematics and Computation 205 (2008) pp. 202-211. web.info.uvt.ro/~cristiana.drogoescu/MC/broyden.pdf.
Comments