Jsun Yui Wong
Based on the computer program in Wong [39], the computer program listed below seeks to solve the following problem from Jaberipour and Khorram [13, pp. 741-742, Example 4]:
Maximize R1 + R2 + R3, defined in lines 301, 303, and 305 below,
1<=X(i)<=5, i=1,..., 20.
One notes that line 223 through line 235 in Wong [39] are 223 FOR j41 = 1 TO 20, 225 X(j41) = INT(X(j41)), and 235 NEXT j41, respectively, here line 223 through line 235 are 223 REM FOR j41 = 1 TO 20, 225 REM X(j41) = INT(X(j41)), and 235 REM NEXT j41, respectively.
0 DEFDBL A-Z
2 DEFINT K
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 STEP .01
14 RANDOMIZE JJJJ
16 M = -1D+37
71 FOR J40 = 1 TO 20
74 A(J40) = (1 + RND * 4)
75 REM A(2) = (2 + RND * 200)
77 NEXT J40
128 FOR I = 1 TO 50000
129 FOR KKQQ = 1 TO 20
130 X(KKQQ) = A(KKQQ)
131 NEXT KKQQ
133 FOR IPP = 1 TO (1 + FIX(RND * 3))
181 J = 1 + FIX(RND * 20)
183 R = (1 - RND * 2) * A(J)
187 X(J) = A(J) + (RND ^ (RND * 10)) * R
222 NEXT IPP
223 REM FOR j41 = 1 TO 20
225 REM X(j41) = INT(X(j41))
235 REM NEXT j41
256 FOR J47 = 1 TO 20
257 IF X(J47) < 1 THEN 1670
258 IF X(J47) > 5 THEN 1670
259 NEXT J47
260 SUM1 = 0
261 FOR J44 = 1 TO 20
265 SUM1 = SUM1 + J44 * X(J44)
269 NEXT J44
270 SUM2 = 0
271 FOR J44 = 1 TO 20
275 SUM2 = SUM2 + X(J44)
279 NEXT J44
280 SUM3 = 0
281 FOR J44 = 1 TO 10
285 SUM3 = SUM3 + J44 * X(2 * J44)
289 NEXT J44
290 SUM4 = 0
291 FOR J44 = 1 TO 10
295 SUM4 = SUM4 + X(2 * J44 - 1)
299 NEXT J44
301 R1 = SUM1 / SUM2
303 R2 = SUM3 / SUM4
305 R3 = SUM4 / SUM3
307 GOTO 347
311 X(3) = 6 - 2 * X(1) - X(2)
313 X(4) = 8 - 3 * X(1) - X(2)
315 X(5) = 1 - X(1) + X(2)
322 FOR J44 = 3 TO 5
325 IF X(J44) < 0 THEN X(J44) = X(J44) ELSE X(J44) = 0
327 NEXT J44
343 REM
347 POBA = R1 + R2 + R3
466 P = POBA
1111 IF P <= M THEN 1670
1452 M = P
1454 FOR KLX = 1 TO 20
1455 A(KLX) = X(KLX)
1456 NEXT KLX
1557 REM GOTO 128
1670 NEXT I
1889 IF M < 38.5 THEN 1999
1900 PRINT A(1), A(2), A(3), A(4), A(5)
1901 PRINT A(6), A(7), A(8), A(9), A(10)
1910 PRINT A(11), A(12), A(13), A(14), A(15)
1911 PRINT A(16), A(17), A(18), A(19), A(20)
1922 PRINT M, JJJJ
1999 NEXT JJJJ
This BASIC computer program was run with qb64v1000-win [38]. The complete output through JJJJ = -31999.99 is shown below:
1.000000023530792 1.000000024888448 1.000000000215454
4.99999989275312 1.000000013115532
4.999999050387178 1.000000004188031 4.999999988517495
1.000000056133371 4.999999959762943
1.000000000922831 4.999999615140256 1.000000020098937
4.99999984112548 1.000000000652795
4.999999972860543 1.000000034610626 4.999999991891256
1.000000003723272 4.999999999750646
38.60118504510297 -32000
1.00000000253903 1.00000007567784 1.0000000016618036
4.999999332843052 1.000000011102316
4.999999060760837 1.000000000755814 4.99999999608387
1.00000001700265 4.999999967689313
1.000000128005934 4.999999915208235 1.00000002506695
4.999999998575465 1.00000033396696
4.999999991851928 1.000000000964161 4.999999899827006
1.00000008758909 4.999999999953226
38.60118400559084 -31999.99
Above there is no rounding by hand; it is just straight copying by hand from the monitor screen. On a personal computer with a Pentium Dual-Core CPU E5200 @2.50GHz, 2.50 GHz, 960 MB of RAM and qb64v1000-win [38], the wall-clock time for obtaining the output through JJJJ= -31999.99 was 10 seconds, total, including the time for "Creating .EXE file." One can compare the computational results above with those on page 742 of Jaberipour and Khorram [13].
Acknowledgment
I would like to acknowledge the encouragement of Roberta Clark and Tom Clark.
References
[1] Yuichiro Anzai (1974). On Integer Fractional Programming. Journal of the Operations Research Society of Japan, Volume 17, No. 1, March 1974, pp. 49-66. http://www..orsj.or.jp/~archiv/pdf/e_mag/Vol.17_01_049.pdf.
[2] Sjirk Boon. Solving systems of nonlinear equations. Sci. Math. Num-Analysis,1992, Newsgroup Article 3529.
[3] S. S. Chadha (2002). Fractional programming with absolute-value functions. European Journal of Operational Research 141 (2002) pp. 233-238.
[4] Ching-Ter Chang (2002). On the posynomial fractional programming problems. European Journal of Operational Research 143 (2002) pp. 42-52.
[5] Ching-Ter Chang (2006). Formulating the mixed integer fractional posynomial programming, European Journal of Operational Research 173 (2006) pp. 370-386.
[6] Piya Chootinan, Anthony Chen (2006). Constraint Handling in genetic algorithms using a gradient-based repair method. Computers and Operations Research 33 (2006) 2263-2281.
[7] Amir Hossein Gandomi, Xin-She Yang, Amir Hossein Alavi (2011). Mixed variable structural optimization using Firefly Algorithm, Computers and Structures 89 (2011) 2325-2336.
[8] Amir Hossein Gandomi, Xin-She Yang, Siamak Taratahari, Amir Hossein Alavi (2013). Firefly Algorithm with Chaos, Communications in Nonlinear Science and Numerical Simulation 18 (2013) 89-98.
[9] Amir Hossein Gandomi, Xin-She Yang, Amir Hossein Alavi (2013). Cuckoo search algorithm: a metaheuristicapproach to solve structural optimization problem. Engineering with Computers (2013) 29:17-35.
[10] Amir Hossein Gandomi, Xin-She Yang, Amir Hossein Alavi (2013). Erratum to: Cuckoo search algorithm: a metaheuristicapproach to solve structural optimization problem. Engineering with Computers (2013) 29:245.
[11] Chrysanthos E. Gounaris, Christodoulos A. Floudas. Tight convex underestimators for Csquare-continuous problems: II. multivariate functions. Journal of Global Optimization (2008) 42, pp. 69-89.
[12] Xue-Ping Hou, Pei-Ping Shen, Chun-Feng Wang (2014). Global Minimization for Generalized Polynomial Fractional Program. Mathmatical Problems in Engineering, Volume 2014. Hindawi Publishing Company.
[13] Majid Jaberipour, Esmaile Khorram (2010). Solving the sum of ratios problems by a harmony search algorithm. Journal of Computational and Applied Mathematics 234 (2010) 733-742.
[14] Hongwei Jiao, Zhankui Wang, Yongqiang Chen (2013). Global Optimization Algorithm for Sum of Generalized Polynomial Ratios Problems. Applied Mathematical Modelling 37 (2013) 187-197.
[15] Ali Husseinzadeh Kashan (2011). An effective algorithm for constrained global optimization and application to mechanical engineering design: League championship algorithm (LCA). Computer-Aided Design 43 (2011) 1769-1792.
[16] Ali Husseinzadeh Kashan (2015). An effective algorithm for constrained optimization based on optics inspired optimization (OIO). Computer-Aided Design 63 (2015) 52-71.
[17] Han-Lin Li, Jung-Fa Tsai, Christodoulos A. Floudas (2008). Convex underestimating for posynomial functions of postive variables. Optimization Letters 2, 333-340 (2008).
[18] Han-Lin Li, Jung-Fa Tsai (2008). A distributed computational algorithm for solving portfolio problems with integer variables. European Journal of Operational Research 186 (2008) pp. 882-891.
[19] Han-Lin Li, Shu-Cherng Fang, Yao-Huei Huang, Tiantian Nie (2016). An enhanced logarithmic method for signomial programming with discrete variables. European Journal of Operational Research 255 (2016) pp. 922-934.
[20] Ming-Hua Lin, Jung-Fa Tsai (2011). Finding multiple optimal solutions of signomial discrete programming problems with free variables, Optimization and Engineering (2011) 12:425-443.
[21] Ming-Hua Lin, Jung-Fa Tsai (2014). A deterministic global approach for mixed-discrete structural optimization, Engineering Optimization (2014) 46:7, pp. 863-879.
[22] Hao-Chun Lu, Han-Lin Li, Chrysanthos E. Gounaris, Christodoulos A. Floudas (2010). Convex relaxation for solving posynomial problems. Journal of Global Optimization (2010) 46, pp. 147-154.
[23] Hao-Chun Lu (2012). An efficient convexification method for solving generalized geometric problems. Journal of Industrial and Management Optimization, Volume 8, Number 2, May 2012, pp. 429-455.
[24] Hao-Chun Lu (2017). Improved logarithnic linearizing method for optimization problems with free-sign pure discrete signomial terms. Journal of Global Optimization (2017) 68, pp. 95-123.
[25] Mathworks. Solving a mixed integer engineering design problem using the genetic algorithm – MATLAB & Simulink Example.
https://www.mathworks.com/help/gads/examples/solving-a-mixed-integer-engineering-design-problem-using-the-genetic-algorithm.html/
[26] 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.
[27] Sinan Melih Nigdeli, Gebrail Bekdas, Xin-She Yang (2016). Application of the Flower Pollination Algoritm in Structural Engineering. Springer International Publishing Switzerland 2016. http://www.springer.com/cda/content/document/cda…/
[28] Gideon Oron (1979) An algorithm for optimizing nonlinear contrained zero-one problems to improve wastewater treatment, Engineering Optimization, 4:2, 109-114.
[29] Osama Abdel Raouf, Ibraham M. Hezam (2014). Solving Fractional Programming Problems Based on Swarm Intelligence. Journal of Industrial Engineering International (2014) 10:56.
[30] H. S. Ryoo, N. V. Sahinidis (1995). Global optimization of nonconvex NLP and MINLP with applications in process design. Computers and Chemical Engineering Vol. 19 (5) (1995) pp. 551-566.
[31] c. R. Seshan, V. G. Tikekar (1980) Algorithms for Fractional Programming. Journal of the Indian Institute of Science 62 (B), Feb. 1980, Pp. 9-16.
[32] Pei-Ping Shen, Yun-Peng Duan, Yong-Gang Pei. A simplicial branch and duality boundalgorithm for the sum of convex-convex ratios problem. Journal of Computational and Applied Mathematics 223 (2009) 145-158.
[33] P. B. Thanedar, G. N. Vanderplaats (1995). Survey of discrete variable optimization for structural design, Journal of Structural Engineering, 121 (2), 301-306 (1995).
[34] Jung-Fa Tsai (2005). Global optimization of nonlinear fractional programming problems in engineering design. Engineering Optimization (2005) 37:4, pp. 399-409.
[35] Jung-Fa Tsai, Ming-Hua Lin (2007). Finding all solutions of systems of nonlinear equations with free variables. Engineering Optimization (2007) 39:6, pp. 649-659
[36] Jung-Fa Tsai, Ming-Hua Lin, Yi-Chung Hu (2007). On generalized geometric programming problems with non-positive variables. European Journal of Operational Research 178 (2007) pp. 10-19.
[37] Jung-Fa Tsai, Ming-Hua Lin (2008). Global optimization of signomial mixed-integer nonlinear programming with free variables. Journal of Global Optimization (2008) 42 pp. 39-49.
[38] Wikipedia, QB64, https://en.wikipedia.org/wiki/QB64.
[39] Jsun Yui Wong (2018, January 1). Solving a Nonlinear Integer Fractional Programming Problem with 20 General Integer Variables. http://nonlinearintegerprogrammingsolver.blogspot.ca/2018/01/solving-nonlinear-integer-fractional.html.