Sum of Functions in Problem Statement is the weighted sum of PSG Functions.
First of all this concept is explained with two examples. Later on in this section we give formal definitions.
Example 1
Problem statement:
minimize
pm_pen(1.2, matrix_sde)
pm_pen(3.2, matrix_sde)
pm_pen(5.7, matrix_sde)
pm_pen(7.7, matrix_sde)
pm_pen(0.7, matrix_sde)
This problem statement can be simplified using Sum of Functions:
minimize
pm_pen(vector_param, matrix_sde)
where
vector_param is a PSG Vector containing(1.2, 3.2, 5.7, 7.7, 0.7) .
Example 2
Problem statement:
minimize
2*pm_pen(1.2, matrix_sde_1)
-3*pm_pen(3.2, matrix_sde_2)
4*pm_pen(5.7, matrix_sde_3)
5*pm_pen(7.7, matrix_sde_4)
6*pm_pen(0.7, matrix_sde_5)
This problem statement can be simplified using Sum of Functions:
minimize
vector_coef*pm_pen(vector_param, matrix_sde_1,...,matrix_sde_5)
where
vector_coef is a PSG Vector containing (2, -3, 4, 5, 6),
vector_param is a PSG Vector containing(1.2, 3.2, 5.7, 7.7, 0.7).
Formal definition of Sum of Functions:
Syntax
[<vector_coefficient>*] <function_name>([<vector_parameter>], <matrix_name_1>, <matrix_name_2>,...,<matrix_name_K > ) |
where
function_name is a name of PSG Function;
vector_coefficient is a PSG Vector including coefficients of PSG functions;
vector_parameter is a PSG Vector including parameters of functions (if needed);
matrix_name_# is an input PSG Matrix of PSG functions.
Equivalently Sum of Functions can be presented as:
[<coefficient_1>*] <function_name>([<parameter_1>], <matrix_name_1>) ... [<coefficient_K>*] <function_name>([<parameter_K>], <matrix_name_K>) |
where
coefficient_# is an element of vector_coefficient;
parameter_# is an element of vector_parameter.
Note
1. If vector_coefficient contains the same values it can be replaced by one number.
<coefficient_1> <function_name>([<vector_parameter>], <matrix_name_1>, <matrix_name_2>,...,<matrix_name_K > ).
If vector_coefficient contains only ones it may be omitted.
2. If all input matrices matrix_name_# of functions coincide then it is permitted to set only one name of matrix in Sum of Functions: [<vector_coefficient>*] <function_name>([<vector_parameter>], <matrix_name_1>).
3. Functions with multiple inputs (for example Maximum CVaR, Probability of Exceedance Multiple, ect) can be used in Sum of Functions if they have different parameters and the same multiple matrices.
The following sum of two functions
prmulti_pen(0.4,matrix1,matrix2,matrix3)
prmulti_pen(0.1,matrix1,matrix2,matrix3)
can be represented by:
prmulti_pen(vector_param,matrix1,matrix2,matrix3)
If functions with multiple inputs include different matrices then they can not be used in Sum of Functions. For instance the following sum of two functions can not be presented with Sum of Functions:
prmulti_pen(0.4,matrix1,matrix2)
prmulti_pen(0.1,matrix3,matrix4)
4. Sum of Functions in Constraint is used to simplify a weighted sum of functions. Sum of Functions in MultiConstraint creates a set of constraints.
5. vector_coefficient and vector_parameter should be prepared as PSG Vector in General (Text) Format.
See also