1.5 Initialization files
Before an on-line optimization run can be started, the user has to ensure that certain files required to initiate the first cycle are present.
1.5.1 The input file for process optimization
The user has to provide the input files for the OPT .EXE file in the following two cases:
1. On-line optimization without system identification,
2. On-line optimization with system identification, but not utilizing steady-state data as a starting point for cycle one.
The first input file required is called <initials_opt1.dat> and contains initial conditions of the differential variables defined in the OCC model. The first line is reserved for comments and will be skipped by the .EXE file. Initial conditions are specified first by naming the variable name concerned, followed by the value of the variable on the next line. The user is not required to sort the variables in any particular order. An example of <initials_opt1.dat> is shown here.
#-- Process Optimization: <initials.dat>, Cycle 1 --#
P_st
42.889871
p_drum
54.888790
t_ec_steel_1
248.289745
t_ec_steel_2
185.031214
t_sg_steel_1
276.020134
t_sg_steel_2
272.069144
t_sh_steel_1
505.310823
t_sh_steel_2
433.963592
The user can create various versions of this file, each with a different set of initial conditions. In the case of the combined-cycle power plant problem, it is thus possible to start the on-line optimization from different loads, e.g. 100 MW, 120 MW and 150 MW. The values of the initial conditions can be obtained through simulation.
The second input file is named <svalues_opt1.dat>. This provides the starting guesses of all process variables and parameters. As above, the first line is reserved for comments. Starting guesses of variables are defined by first naming the variable. On the next line the user then provides the n values corresponding to the n timesteps specified in the .EXE file. Only one value is required for parameters. An example is shown below.
#-- Process Optimization: <svalues.dat>, Cycle 1 --#
P_dot_st
0.0000000 0.0000000 0.0000000 ... 0.0000000
P_gt
85.000000 85.000000 85.000000 ... 85.000000
P_st
42.889871 42.889871 42.889871 ... 42.889871
P_tot
127.889868 127.889868 127.889868 ... 127.889868
...
example_parameter
0.5
...
Both input files are to be saved in the model root directory. During the run they would be copied into the case directory and renamed automatically to <initials.dat> and <svalues.dat> respectively.
1.5.2 The steady-state MAT-file
If the user desires to perform ID starting from cycle one, a MAT-file named <steady_state.mat> must be provided. This provides data regarding the steady state of the plant before the on-line optimization is started, and serves as a source of information for OCC to generate the input files <initials.dat>, <meas.dat> and <svalues.dat>, which are needed for the first round of ID. The MAT-file must be saved in the model root directory.
The MAT-file contains SIMULINK simulation data and has to be created by the user. Using the combined-cycle problem as an example, the steps are as follows:
1. Clear MATLAB workspace.
2. Change MATLAB working directory to the model root directory.
3. Execute <sim_constants.m> to load the constants into the workspace.
4. Execute <sim_ini.m> to load the initial conditions into the workspace.
5. Define variable time, e.g.
“time = 0:10:1000;”
6. Define control variables, e.g.
“u_gt = 0.5 * ones(1:length(time));”
This command assigns u_gt as an array with the same dimension as time. Each element has the value 0.5.
7. Run simulation <combined_cycle.mdl>:
“time_sim = sim('combined_cycle.mdl');”
8. Save all variables with suffixes “_sim” and “_ini” under <steady_state.mat>:
“save steady_state *_sim *_ini;”
9. Clear MATLAB workspace.
|