Tuesday, January 9, 2018

Solving an Integer, Nonlinear, and Fractional Programming Problem


Jsun Yui Wong

The computer program listed below seeks to solve Abdel-Baset and Hezam's [1, p. 5/9] Test Problem 10 plus the restriction that the three variables are integer variables.  Thus the present problem is as follows:

Maximize              ((13 * X(1) + 13 * X(2) + 13) / (37 * X(1) + 73 * X(2) + 13)) ^ -1.4 * ((64 * X(1) - 18 * X(2) + 39) / (13 * X(1) + 26 * X(2) + 13)) ^ 1.2 - ((X(1) + 2 * X(2) + 5 * X(3) + 50) / (X(1) + 5 * X(2) + 5 * X(3) + 50)) ^ .5 * ((X(1) + 2 * X(2) + 4 * X(3) + 50) / (5 * X(2) + 4 * X(3) + 50)) ^ 1.1
 
subject to

         2*X(1) + X(2)+ 5*X(3)<=10,

        5* X(1) -3* X(2) =3, 

        1.5 <= X(1) <= 3,

            X(1) >=0,

            X(2) >=0, 

            X(3) >=0, 

X(1) through X(3) are integer variables.

X(4) below is an added slack variable.


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
    70 FOR J44 = 1 TO 3

        72 A(J44) = RND * 10


    73 NEXT J44


    128 FOR I = 1 TO 500


        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 r = (1 - RND * 2) * A(J)
            187 X(J) = A(J) + (RND ^ (RND * 10)) * r

        191 NEXT IPP
        193 X(2) = INT(X(2))

        194 X(3) = INT(X(3))

        196 X(1) = INT((3 + 3 * X(2)) / 5)


        201 IF X(1) < 1.5 THEN 1670
        203 IF X(1) > 3 THEN 1670
       
        205 FOR J44 = 1 TO 3

            206 IF X(J44) < 0 THEN 1670

           
        208 NEXT J44

        209 IF X(1) = ((3 + 3 * X(2)) / 5) THEN 311 ELSE GOTO 1670


        311 X(4) = 10 - 2 * X(1) - X(2) - 5 * X(3)


        333 FOR J44 = 4 TO 4
            336 IF X(J44) < 0 THEN X(J44) = X(J44) ELSE X(J44) = 0

        339 NEXT J44


        368 POBA = ((13 * X(1) + 13 * X(2) + 13) / (37 * X(1) + 73 * X(2) + 13)) ^ -1.4 * ((64 * X(1) - 18 * X(2) + 39) / (13 * X(1) + 26 * X(2) + 13)) ^ 1.2 - ((X(1) + 2 * X(2) + 5 * X(3) + 50) / (X(1) + 5 * X(2) + 5 * X(3) + 50)) ^ .5 * ((X(1) + 2 * X(2) + 4 * X(3) + 50) / (5 * X(2) + 4 * X(3) + 50)) ^ 1.1 + 1000000 * (X(4) )

        466 P = POBA

        1111 IF P <= M THEN 1670


        1452 M = P
        1454 FOR KLX = 1 TO 4

            1459 A(KLX) = X(KLX)
        1460 NEXT KLX
        1557 GOTO 128

    1670 NEXT I


    1889 IF M < -11111 THEN 1999

    1900 PRINT A(1), A(2), A(3), A(4)
    1912 PRINT M, JJJJ

1999 NEXT JJJJ


This BASIC computer program was run with qb64v1000-win [35]. The complete output through JJJJ =  -31999.94000000001 is shown below:

3      4      0      0     
6.339725941774713      -32000

3      4      0      0     
6.339725941774713      -31999.99

3      4      0      0     
6.339725941774713      -31999.98

3      4      0      0     
6.339725941774713      -31999.96000000001

3      4      0      0     
6.339725941774713      -31999.95000000001

3      4      0      0     
6.339725941774713      -31999.94000000001

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 [35], the wall-clock time for obtaining the output through
JJJJ=  -31999.94000000001 was two seconds, not including the time for "Creating .EXE file."

Acknowledgment

I would like to acknowledge the encouragement of Roberta Clark and Tom Clark.

References

[1]  Mohamed Abdel-Baset,  Ibrahim M. Hezam (2015).  An Improved flower pollination algorithm for ratios optimization problems.  Applied Mathematics and Information Sciences Letters: An International Journal, 3, No. 2, 83-91 (2015).  http://dx.doi.org/10.12785/amisl/030206.
[2] 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.
[3] Sjirk Boon. Solving systems of nonlinear equations. Sci. Math. Num-Analysis,1992, Newsgroup Article 3529.
[4] S. S. Chadha (2002). Fractional programming with absolute-value functions. European Journal of Operational Research 141 (2002) pp. 233-238.
[5] Ching-Ter Chang (2002). On the posynomial fractional programming problems. European Journal of Operational Research 143 (2002) pp. 42-52.
[6] Ching-Ter Chang (2006). Formulating the mixed integer fractional posynomial programming, European Journal of Operational Research 173 (2006) pp. 370-386.
[7] Piya Chootinan, Anthony Chen (2006). Constraint Handling in genetic algorithms using a gradient-based repair method. Computers and Operations Research 33 (2006) 2263-2281.
[8] Amir Hossein Gandomi, Xin-She Yang, Amir Hossein Alavi (2011). Mixed variable structural optimization using Firefly Algorithm, Computers and Structures 89 (2011) 2325-2336.
[9] 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.
[10] 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.
[11] 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.
[12] 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.
[13]  Yun-Chol Jong (2012).  An efficient global optimization algorithm for nonlinear sum-of-ratios problem.  www.optimization-online.org/DB_FILE/2012/08/3586.pdf.
[14] Han-Lin Li, Jung-Fa Tsai, Christodoulos A. Floudas (2008). Convex underestimating for posynomial functions of postive variables. Optimization Letters 2, 333-340 (2008).
[15] 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.
[16] Ming-Hua Lin, Jung-Fa Tsai (2014). A deterministic global approach for mixed-discrete structural optimization, Engineering Optimization (2014) 46:7, pp. 863-879.
[17] 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.
[18] 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.
[19] 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.
[20] 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/
[21] 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.
[22] 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…/
[23] Gideon Oron (1979) An algorithm for optimizing nonlinear contrained zero-one problems to improve wastewater treatment, Engineering Optimization, 4:2, 109-114.
[24] 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.
[25] 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.
[26] Pei-Ping Shen, Yun-Peng Duan, Yong-Gang Pei (2009). A simplicial branch and duality boundalgorithm for the sum of convex-convex ratios problem. Journal of Computational and Applied Mathematics 223 (2009) 145-158.
[27] Pei Ping Shen, Yuan Ma, Yongqiang Chen (2011).  Global optimization for the generalized polynomial for the sum of ratios problem. Journal of Global Optimization (2011) 50:439-455.
[28] P. B. Thanedar, G. N. Vanderplaats (1995). Survey of discrete variable optimization for structural design, Journal of Structural Engineering, 121 (2), 301-306 (1995).
[29] Jung-Fa Tsai (2005). Global optimization of nonlinear fractional programming problems in engineering design. Engineering Optimization (2005) 37:4, pp. 399-409.
[30] 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
[31] 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.
[32] 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.
[33] Chun-Feng Wang, Xin-Yue Chu (2017). A new branch and bound method for solving sum of linear ratios problem. IAENG International Journal of Applied Mathematics 47:3, IJAM_47_3_06.
[34] Yan-Jun Wang, Ke-Cun Zhang (2004). Global optimization of nonlinear sum of ratios problem.  Applied Mathematics and Computation 158 (2004) 319 330.
[35] Wikipedia, QB64, https://en.wikipedia.org/wiki/QB64.
[36] Jsun Yui Wong (2012, April 12). The Domino Method of General Integer Nonlinear Programming Applied to a Nonlinear Fractional Programming Problem from the Literature. http://myblogsubstance.typepad.com/substance/2012/04/12/
[37] Helen Wu (2015). Geometric Programming. https://optimization.mccormick.northwstern.edu/index.php/Geometric_Programming.
[38] Xin-She Yang, Christian Huyck, Mehmet Karamanoglu, Nawaz Khan (2014). True global optimality of the pressure vessel design problem: A benchmark for bio-inspired optimisation algorithms. https://arxiv.org/pdf/1403.7793.pdf.
[39] Xin-She Yang, Amir Hossein Gandomi (2012). Bat algorithm: a novel approach for global engineering optimization. Engineering Computations: International Journal for Computer-Aided Engineering and Software, Vol. 20,No. 5, 2012, pp. 461-483.
[40] B. D. Youn, K. K. Choi (2004). A new response surface methodology for reliability-based design optimization. Computers and Structures 82 (2004) 241-256.

No comments:

Post a Comment