Benz : Robust Stability Analysis of Daimler-Benz 0305 Bus

Reference

  • Neculai Andrei, Nonlinear Optimization Applications Using the GAMS Technology,Springer Optimization and Its Applications, Model Benz (11.4) in chapter Robust Stability Analysis , 2013

Category : GAMS NOA library


Mainfile : benz.gms

$ONTEXT
   Stability of a wire guided Daimler-Benz 0305 bus.

   References:
   Neculai Andrei, "Models, Test Problems and Applications for
   Mathematical Programming". Technical Press, Bucharest, 2003.

   Application A38, page 402.
   Ackermann, J., et al. " Robust gamma-stability analysis in a plant
   parameter space. Automatica, vol. 27, 1991, pp.75.

   Floudas, C.A., Pardalos, P.M., et al. "Handbook of Test Problems in
   Local and Global Optimization". Kluwer Academic Publishers, Dordrecht,
   1999.
   Section 7.3.5. Test problem 15, page 102.
$OFFTEXT

VARIABLES
         q1
         q2
         w   frequency
         k   stability margin
    objval   objective function variable;

FREE VARIABLES    objval;

EQUATIONS
         f Objective function
         g1
         g2
         b1l, b1u, b2l, b2u;

f  .. objval =e=k;

g1  .. (POWER(q1,2)*POWER(q2,2))*POWER(w,8) -
       (1.25*1000*POWER(q1,2)*POWER(q2,2) + 16.8*POWER(q1,2)*q2 +
        53.9*1000*q1*q2 + 270*1000)*POWER(w,6) +
       (1.45*POWER(10,6)*POWER(q1,2)*q2 + 16.8*POWER(10,6)*q1*q2 +
        POWER(10,6)*338)*POWER(w,4) -
       (5.72*POWER(10,6)*POWER(q1,2)*q2 + 113*POWER(10,6)*POWER(q1,2) +
        4250*POWER(10,6)*q1)*POWER(w,2) +
       (453*POWER(10,6)*POWER(q1,2)) =e= 0;

g2  .. (50*POWER(q1,2)*POWER(q2,2) + 1080*q1*q2)*POWER(w,6) -
       (15.6*1000*POWER(q1,2)*POWER(q2,2) + 840*POWER(q1,2)*q2 +
        1.35*POWER(10,6)*q1*q2 + POWER(10,6)*13.5)*POWER(w,4) +
       (6.93*POWER(10,6)*POWER(q1,2)*q2 + 911*POWER(10,6)*q1 +
        POWER(10,6)*4220)*POWER(w,2) -
       (528*POWER(10,6)*POWER(q1,2) + 3640*POWER(10,6)*q1) =e= 0;

b1l  .. 17.5 - 14.5*k =l= q1;
b1u  .. q1 =l= 17.5 + 14.5*k;
b2l  .. 20.0 - 15.0*k =l= q2;
b2u  .. q2 =l= 20.0 + 15.0*k;

* Bounds
q1.LO=0;
q1.UP=2;
q2.LO=0;
q2.UP=2;
w.LO =0;
w.UP =2;
k.LO =0;
k.UP =2;

* Initial values;
q1.l=0.1;
q2.l=0.1;
w.l=0.1;
k.l=0.1;

MODEL benz /ALL/;

$iftheni x%mode%==xbook
benz.optfile=1;
benz.workspace=120;

$onecho >bench.opt
  solvers conopt knitro minos
$offecho

option nlp=bench;
$endif

SOLVE benz USING NLP MINIMIZING objval;
* End Benz