2011年6月12日星期日

Optimal Design for Chemical Batch Processing: DICOPT vs BARON



DICOPT did find the optimal solution,
BARON performs good

DICOPT:
--- DICOPT: Stopped on NLP worsening

      The search was stopped because the objective function
      of the NLP subproblems started to deteriorate.

--- DICOPT: Best integer solution found: 167427.657115
--- Restarting execution
--- batchdes.gms(182) 0 Mb
--- Reading solution for model batch
--- Executing after solve: elapsed 0:00:01.000
--- batchdes.gms(194) 3 Mb
*** Status: Normal completion
--- Job batchdes.gms Stop 06/12/11 20:01:05 elapsed 0:00:01.016



BARON:
Solution      = 167427.657115  found at node 4
Best possible = 167427.656947
Absolute gap  = 0.000167999998666346  optca = 1E-9
Relative gap  = 0.00000  optcr = 0

--- Restarting execution
--- batchdes.gms(182) 0 Mb
--- Reading solution for model batch
--- Executing after solve: elapsed 0:00:00.704
--- batchdes.gms(194) 3 Mb
*** Status: Normal completion
--- Job batchdes.gms Stop 06/12/11 20:01:40 elapsed 0:00:00.704



$TITLE Optimal Design for Chemical Batch Processing (BATCHDES,SEQ=119)

$Ontext

  
A chemical batch process having three processing stages: mixing,
  
reaction and centrifuge separation, produce two products. This
  
model is used to determine the number and sizes of units to
  
operate in parallel at each stage. The resulting model is
  
nonlinear and mixed integer;


Morari, M, and Grossmann, I E, Eds, Chemical Engineering Optimization
Models with GAMS. Computer Aids for Chemical Engineering Corporation,
1991.

Kocis, G R, and Grossmann, I E, Global Optimization of Nonconvex MINLP
Problems in Process Synthesis. Independent Engineering Chemical
Research 27 (1988), 1407-1421.

$Offtext


 
Sets         i         products         / a , b /
              j        
stages           /mixer, reactor, centrifuge/
              k        
potential number of parallel units  / 1 * 3 /




 
Variables    y(k,j)    binary variable denoting stage existence
 
Binary   Variables     y(k,j) ;
 
Option optcr=0;
option minlp=baron;


 
Solve batch using minlp minimizing cost ;


* converting variables into original form

 actv(j)  = exp(v.l(j)) ;
 actb(i)  = exp(b.l(i)) ;
 acttl(i) = exp(tl.l(i));
 actn(j)  = exp(n.l(j)) ;

* optimal design

 
Display actv, actb, acttl, actn ;

没有评论:

发表评论