Wednesday, August 23, 2017

Vertical Deflection Minimization Problem of an I-Beam with the Method of This Blog

Jsun Yui Wong

The computer program listed below seeks to solve the following problem in Nigdeli, Bekdas, and Yang [9, pp. 33-34].

Minimize      (5000) / (((X(4) * (X(2) - 2 * X(3)) ^ 3 / 12) + (X(1) * X(3) ^ 3 / 6) + (2 * X(1) * X(3) * ((X(2) - X(3)) / 2) ^ 2)))

subject to

  2 * X(1) * X(4) + X(4) * (X(2) - 2 * X(3))<=300

  (180000 * X(2)) / (((X(4) * (X(2) - 2 * X(3)) ^ 3) + 2 * X(1) * X(4) * (4 * X(3) ^ 2 + 3 * X(2) * (X(2) - 2 * X(3)))) + (15000 * X(1)) / ((X(4) ^ 3 * (X(2) - 2 * X(3))) + (2 * X(4) * X(1) ^ 3)))<=6

         10<=X(1) <= 50

         10<=X(2) <= 80

         .9<=X(3) <= 5

         .9<=X(4) <= 5.

The X(5) and X(6)  below are slack variables.


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
    22 REM FOR J44 = 1 TO 4


    68 A(1) = 20 + RND * 20

    70 A(2) = 30 + RND * 30

    72 A(3) = 1.9 + RND * 2.1

    74 A(4) = 1.9 + RND * 2.1

    71 REM NEXT J44


    79 REM


    128 FOR I = 1 TO 10000


        129 FOR KKQQ = 1 TO 4

            130 X(KKQQ) = A(KKQQ)
        131 NEXT KKQQ
        133 FOR IPP = 1 TO (1 + FIX(RND * 3))


            181 J = 1 + FIX(RND * 4)


            183 R = (1 - RND * 2) * A(J)
            187 X(J) = A(J) + (RND ^ (RND * 10)) * R
        222 NEXT IPP


        249 X(5) = 300 - 2 * X(1) * X(4) - X(4) * (X(2) - 2 * X(3))



        251 X(6) = 6 - (180000 * X(2)) / (((X(4) * (X(2) - 2 * X(3)) ^ 3) + 2 * X(1) * X(4) * (4 * X(3) ^ 2 + 3 * X(2) * (X(2) - 2 * X(3)))) - (15000 * X(1)) / ((X(4) ^ 3 * (X(2) - 2 * X(3))) + (2 * X(4) * X(1) ^ 3)))


        253 IF X(1) < 10 THEN GOTO 1670

        255 IF X(2) < 10 THEN GOTO 1670
        257 IF X(3) < .9 THEN GOTO 1670
        259 IF X(4) < .9 THEN GOTO 1670

        261 IF X(1) > 50 THEN GOTO 1670


        263 IF X(2) > 80 THEN GOTO 1670


        265 IF X(3) > 5 THEN GOTO 1670


        267 IF X(4) > 5 THEN GOTO 1670


        268 FOR J99 = 5 TO 6

            269 IF X(J99) < 0 THEN X(J99) = X(J99) ELSE X(J99) = 0

        270 NEXT J99
        318 POBA = -(5000) / (((X(4) * (X(2) - 2 * X(3)) ^ 3 / 12) + (X(1) * X(3) ^ 3 / 6) + (2 * X(1) * X(3) * ((X(2) - X(3)) / 2) ^ 2))) + 1000000 * X(6) + 1000000 * X(5)


        466 P = POBA

        1111 IF P <= M THEN 1670


        1452 M = P
        1454 FOR KLX = 1 TO 6

            1455 A(KLX) = X(KLX)
        1456 NEXT KLX
        1557 GOTO 128

    1670 NEXT I
    1889 REM IF M < -1.339964 THEN 1999

    1900 PRINT A(1), A(2), A(3), A(4)

    1901 PRINT A(5), A(6), M, JJJJ
 
1999 NEXT JJJJ


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

49.99999989957234        79.99999999999893               4.999999999999993        
1.764705884437955
0         0                       -6.625958177414923D-03         -32000

49.9999884666348          79.99999999890551               4.999999999999994      
1.764706121811363
0         0                       -6.625959531848595D-03         -31999.99

50        79.99999998885822               5          1.7647058824686
0         0                       -6.625958167535851D-03         -31999.98

Above there is no rounding by hand; it is just straight copying by hand from the monitor screen.

The solution above at JJJJ=-31999.98 can be compared to the four solutions presented in Table 5 of Nigdeli, Bekdas, and Yang [9, p. 34].    .

On a personal computer with a Pentium Dual-Core CPU E5200 @2.50GHz, 2.50 GHz, 960 MB of RAM and qb64v1000-win [15], the wall-clock time for obtaining the output through JJJJ= -31999.98 was 8 seconds.

Acknowledgment

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

References

[1]  Yuichiro Anzai (1974).  On Integer Fractional Programming.  Journal Operations Research Society of Japan, Volume 17, No. 1, March 1974, pp. 49-66.
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]  H. Chickermane, H. C. Gea (1996)  Structural optimization using a new local approximation method, International Journal for Numerical Methods in Engineering, 39, pp. 829-846.

[4]  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.

[5]  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.

[6]  Ming-Hua Lin, Jung-Fa Tsai (2014).  A deterministic global approach for mixed-discrete structural optimization, Engineering Optimization  (2014) 46:7, pp. 863-879.

[7]  Harry Markowitz  (1952).   Portfolio Selection.   The Journal of Finance  7 (2008) pp. 77-91.

[8]  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.

[9]  Sinan Melih Nigdeli, Gebrail Bekdas, Xin-She Yang (2016). Application of the Flower Pollination Algorithm in Structural Engineering. Springer International Publishing Switzerland 2016.  www.springer.com/cda/content/document/cda.../

[10]  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.

[11]  Jung-Fa Tsai (2005).  Global optimization of nonlinear fractional programming problems in engineering design. Engineering Optimization  (2005) 37:4, pp. 399-409.

[12]  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

[13]  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.

[14]  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.

[15] Wikipedia, QB64, https://en.wikipedia.org/wiki/QB64.    

[16] 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/

[17] 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.

No comments:

Post a Comment