Optimize tab
Contents
- 1 Introduction
- 2 Optimize Tab Controls
- 2.1 Data Set Menu
- 2.2 Analysis Menu
- 2.3 Algorithm Menu
- 2.4 Objective Function Menu
- 2.5 Edit Ranges Button
- 2.6 Edit Targets Button
- 2.7 Side Constraints Checkbox
- 2.8 Constraint Menu
- 2.9 Animate Checkbox
- 2.10 Animation Settings Button
- 2.11 Save Settings Button
- 2.12 Load Settings Button
- 2.13 Algorithm Settings Table
- 2.14 Start/Stop Button
- 2.15 Continue Button
- 2.16 Batch Button
- 2.17 Save/Export Results Button
- 3 If Something Breaks...
Introduction
The Optimize Tab is where you set up and run optimizations.
The controls on the Optimize Tab are arranged from top to bottom in the order in which you should use the controls. The sections below also follow this order, so you can read this page from top to bottom to learn the process of setting up and running optimization.
The Optimize Tab is shown below with its controls labeled. See the Appropriate section below for help on a particular control.
Optimize Tab Controls
Data Set Menu
Analysis Menu
Algorithm Menu
Objective Function Menu
Edit Ranges Button
Edit Targets Button
Side Constraints Checkbox
Constraint Menu
Animate Checkbox
Animation Settings Button
Save Settings Button
Clicking this button saves the current values in the Algorithm Settings Table to a text file. This lets you create a record of your optimization runs.
You can enter comments in the first line of this file, after the name of the algorithm. For example, when you save a settings file for the fmincon algorithm, the top line of the file will read:
%#fmincon <name these settings here>
You can enter a short description such as:
%#fmincon For use with homework problem 5.4
Important: When you enter a description, do not change the name of the algorithm (except perhaps to the name of another algorithm that shares an identical set of settings) or remove the "%#" before its name.
Using Saved Settings to Parameterize Subproblems
Some optimization algorithms call other optimization algorithms. The most common case is when a multi-objective algorithm calls a single-objective algorithm to solve optimization subproblems.
In such cases, the settings for the main algorithm will appear in the Algorithm Settings Table, but the settings of the subproblem algorithm will not. Instead, there will be a row in the Algorithm Settings Table in which you can specify either:
- The file name of a saved optimizer settings file, created by clicking the save button.
- The string "default" to simply use the subproblem optimization algorithm's default settings.
An example of this situation is shown below:
The first row of the settings table contains the name of the subproblem algorithm, in this case "fmincon". The second row of the table contains the string "default", indicating that the default parameters of fmincon should be used (i.e. the settings that appear in the table when you select fmincon from the Algorithm Menu). Alternately, a file name could be entered in the second row, for example "mysettings.txt" to use the fmincon settings stored in that file.
Note: As always, the file name you specify must be on your MATLAB search path so that MATLAB can access it.
Load Settings Button
The load settings button lets you load the algorithm settings stored in a file that you created by clicking the Save Settings Button. Use this button to quickly update the Algorithms Table to a previously saved state.
Note: You can only load a saved optimization settings file that matches the algorithm currently selected in the Algorithms menu. If you attempt to load settings for another algorithm, you will see an error message.
Algorithm Settings Table
The algorithm settings table is used to specify all parameters that affect the optimizer aside from the objective function and constraints. The settings that are displayed in this table change depending on which algorithm is selected in the Algorithm Menu. For help on a particular optimization algorithm's settings, see the help page for that algorithm.
Linking settings to problem parameters
Settings that require numerical values can be specified by directly entering the desired number into the settings table, or by entering a function of one or more of the following variables:
- nVars = the number of independent variables (Rave determines this automatically based on the function that calculates the variable selected to serve as the objective
- numberofequalities = the number of equality constraints
- numberofinequalities = the number of inequality constraints (excluding upper/lower bounds on the independent variables
- numberofbounds = the number of bound constraints (since in Rave each variable has an upper and a lower bound, this is always even)
The variable names must appear exactly as shown here (case sensitive).
Start/Stop Button
Continue Button
Batch Button
Save/Export Results Button
If Something Breaks...
Unlike the other tabs, Rave saves the current state of the optimize tab when you switch to another tab, and restores it when you switch back to the optimize tab. This means that if something on the Optimize Tab breaks, simply switching tabs will not restore it to working order. The most common cause for this is if you are debugging an optimizer and you quit the optimizer from MATLAB's debug mode. This will cause the Stop button to not turn back into a Start button.
If this happens, you can completely reset the Optimize Tab by doing either of the following:
- Click the "Rave" Logo that appears below the tabs. This will completely reset the tabs and will display the Manage tab.
- Enter full screen mode by clicking the Fullscreen mode button or by right clicking an empty place on the workspace and selecting "Full Screen Mode" from the context menu.