Page 696 - ExtendSim User Guide

P. 696

```
670 Analysis
Optimization
Close its dialog.
Setting limits for the variables
Now that the Optimizer has the necessary variables, you need to enter limits for some of the variables so the Optimizer will know that it should try to change them. (Variables without lim- its are considered outputs from the simulation and the Optimizer will not try to change them.) For data tables, you also need to specify which cell is to be used in the equation.
Open the Optimizer’s dialog so that the Variables table in the Objectives tab is visible.
On the first row of the Variables table (“Total sales”) do not enter any limits. This value is not an input to be changed but rather an output value from the Holding Tank. So that it will be more easily understood in the equation, in the Equation Variable column change the vari- able’s name from Var0 to numSold.
On the second row (“Filler truck Repeat_prm”), which is the time between deliveries, enter a Minimum Limit of 30 minutes (an estimated minimum) and a Maximum Limit of 480 minutes (the simulation end time). Also, in the Equation Variable column change the vari- able’s name from Var1 to deliveryTimes.
On the third row (“Filler truck Data_tbl”), you need to tell the Optimizer which cell of the data table to use and what its limits are:
Click on the “Filler truck” cell to open the Lookup Table block’s dialog. Notice that the cell that holds the number of drinks per tank is at row 0 and column 1 of the data table (data table rows and columns start at 0). For the Row, Col value in the Optimizer, enter 0,1.
For this variable’s limits, enter a Minimum Limit of 1000 and a Maximum Limit of 8000 drinks.
☞ Do not enter a decimal point. The absence of a decimal point tells the Optimizer that the value for the number of drinks has to be an integer.
Change the variable’s name from Var2 to delTankSize.
On the fourth row (“Tot empty time”) do not enter any limits because this value is a model out-
put. Change the variable’s name from Var3 to emptyTime.
The columns of the Objectives table should now look similar to the table on the right.
Entering the objective function
Now that the limits have been entered, substitute each variable’s name for the row that holds the value of interest. The result is:
MaxProfit = 2.50*numSold - #deliveries*(1000.0+delTankSize*1.00) - emptyTime*100;
The only variable from this equation that has not yet been specified is the #deliveries factor, which can be calculated using the deliveryTimes variable.
The form for an equation to convert the deliveryTimes variable to the #deliveries factor is:
#deliveries = int((endTime-1)/deliveryTimes + 1)
How To
```