13.07.2015 Views

DOTcvpSB: a Matlab Toolbox for Dynamic Optimization in Systems ...

DOTcvpSB: a Matlab Toolbox for Dynamic Optimization in Systems ...

DOTcvpSB: a Matlab Toolbox for Dynamic Optimization in Systems ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>DOTcvpSB</strong>: a <strong>Matlab</strong> <strong>Toolbox</strong> <strong>for</strong> <strong>Dynamic</strong> <strong>Optimization</strong> <strong>in</strong> <strong>Systems</strong> BiologyThe organization of the toolbox code is shown <strong>in</strong> Figure 1.1 where the toolbox files have the name: ’dotcvp_’and the temporary files: ’temp_’. Note that the temporary files are generated and later deleted automatically,because they are problem dependent. F<strong>in</strong>ally it is needed to emphasize that DOTcvp conta<strong>in</strong>s packages that are anopen-source.1.5 RECOMMENDED OPERATING PROCEDUREIt should be noted that, <strong>for</strong> a general MIDO <strong>for</strong>mulation, there is no a priori way to dist<strong>in</strong>guish if theresult<strong>in</strong>g MINLP will be convex or not, so the user has no clue on which optimization strategy should be us<strong>in</strong>g.Thus, we recommend that, <strong>for</strong> any new problem, the user follows this protocol:• Step 1: try solv<strong>in</strong>g the problem with the s<strong>in</strong>gle optimization strategy and a local determ<strong>in</strong>istic method, suchas FMINCON or IPOPT <strong>for</strong> DO problems, or MISQP <strong>for</strong> MIDO problems, us<strong>in</strong>g a rather crude controldiscretization (e.g. 10 elements). After obta<strong>in</strong><strong>in</strong>g a solution, repeat chang<strong>in</strong>g the <strong>in</strong>itial guess <strong>for</strong> the controlvariable. If a rather different solution is obta<strong>in</strong>ed, suspect multimodality and go to step 2 below. If not, solvethe problem aga<strong>in</strong> us<strong>in</strong>g a f<strong>in</strong>er discretization. For faster and more satisfactory results regard<strong>in</strong>g controldiscretization, use the successive re-optimization module.• Step 2: solve the problem us<strong>in</strong>g the multi-start optimization module. In general 100 runs is a sensiblenumber <strong>for</strong> this task, but <strong>for</strong> costly problems the user might want to reduce this. Plott<strong>in</strong>g an histogram ofthe result<strong>in</strong>g set of solutions will give a good view of the problem multimodality. For clearly multimodalproblems, go to step 3. If not, stop, or go back to step 1 if e.g. more ref<strong>in</strong>ed control levels are desired.• Step 3: use the s<strong>in</strong>gle optimization strategy as <strong>in</strong> step 1, but use a global stochastic method, like DE or SRES<strong>for</strong> DO problems, or ACOmi or MITS <strong>for</strong> MIDO problems. If satisfactory results are obta<strong>in</strong>ed <strong>in</strong> reasonablecomputation times, stop. If the computational cost is excessive, go to step 4.• Step 4: use a hybrid global-local strategy. More advanced users can tweak the different options to <strong>in</strong>creaseefficiency and/or robustness.This protocol is especially recommended <strong>for</strong> novel users who are not familiar with numerical optimizationmethods. Advanced users can tweak the hybrid strategy options, or even create their own strategies comb<strong>in</strong><strong>in</strong>gcalls to the different solvers <strong>in</strong> a MATLAB script.1.6 TOOLBOX DOWNLOADThe toolbox can be downloaded from the a<strong>for</strong>e mentioned web page. The name of the toolbox is as follows:’DOTcvp_RXXXX_YN.zip’. The letters mean:XXXX - [number] represents the toolbox year versionY - [letter] represents the major changes, usually the changes <strong>in</strong> the <strong>in</strong>put fileN - [number] represents the m<strong>in</strong>or changes1.7 TOOLBOX INSTALLATIONThe <strong>in</strong>stallation procedure consists of several steps listed below:1. If you have an older <strong>in</strong>stallation of DOTcvp, please remove it. This helps to avoid possible compatibilityproblems.2. Unzip the packed file <strong>in</strong>to any directory. To unzip the toolbox the user needs a password which is free toreceive. The unziped file conta<strong>in</strong>s the name and date when the ’zip’ package was created. This helps torecognize a new package of the toolbox. It is recommended to use the latest version of the toolbox.3. You can try to download and use some demonstrative examples from a<strong>for</strong>e mentioned web page and extractthem <strong>in</strong>to a ’dotcvp_examples’ directory. Of course any different directory can be used.4. The next step is the toolbox <strong>in</strong>stallation. First, you should start MATLAB and change to the directory whereDOTcvp was unpacked, and then run ’dotcvp_<strong>in</strong>stall.m’ <strong>in</strong>stall file. If everyth<strong>in</strong>g is all right the user will seethe follow<strong>in</strong>g output procedure:Page – 10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!