%This Example for using users m-function Optimization_subroutine.m was created automatically by PSG Toolbox. %Function description: %minimize %linear(matrix_sum_of_x_5) %Constraint: == parameter_bound %linear(matrix_x3_x4) %Constraint: <= parameter_bound_1 %prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) %Constraint: == parameter_bound_2 %linear(matrix_x4_x5) %Constraint: == parameter_bound_3 %linear(matrix_x1_x2) %Constraint: == parameter_bound_4 %linear(matrix_x2_x3) %Box: >= parameter_bound_5, <= parameter_bound_6 % %Input variables: % %Inputs PSG Type PSG Object Location in Problem Statement Class %matrix_x1_x2_data data matrix_x1_x2 linear(matrix_x1_x2) double %matrix_x1_x2_vars vars matrix_x1_x2 linear(matrix_x1_x2) cell %matrix_x2_x3_data data matrix_x2_x3 linear(matrix_x2_x3) double %matrix_x2_x3_vars vars matrix_x2_x3 linear(matrix_x2_x3) cell %matrix_x3_x4_data data matrix_x3_x4 linear(matrix_x3_x4) double %matrix_x3_x4_vars vars matrix_x3_x4 linear(matrix_x3_x4) cell %matrix_x4_x5_data data matrix_x4_x5 linear(matrix_x4_x5) double %matrix_x4_x5_vars vars matrix_x4_x5 linear(matrix_x4_x5) cell %matrix_10000_1_benchmark bench matrix_10000_1 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_1_data data matrix_10000_1 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_1_vars vars matrix_10000_1 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) cell %matrix_10000_2_benchmark bench matrix_10000_2 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_2_data data matrix_10000_2 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_2_vars vars matrix_10000_2 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) cell %matrix_10000_3_benchmark bench matrix_10000_3 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_3_data data matrix_10000_3 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_3_vars vars matrix_10000_3 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) cell %matrix_10000_4_benchmark bench matrix_10000_4 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_4_data data matrix_10000_4 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_4_vars vars matrix_10000_4 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) cell %matrix_10000_5_benchmark bench matrix_10000_5 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_5_data data matrix_10000_5 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %matrix_10000_5_vars vars matrix_10000_5 prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) cell %matrix_sum_of_x_5_data data matrix_sum_of_x_5 linear(matrix_sum_of_x_5) double %matrix_sum_of_x_5_vars vars matrix_sum_of_x_5 linear(matrix_sum_of_x_5) cell %parameter_bound_data data parameter_bound Constraint: == parameter_bound double %parameter_bound_1_data data parameter_bound_1 Constraint: <= parameter_bound_1 double %parameter_alpha_data data parameter_alpha prmulti_pen(parameter_alpha,matrix_10000_1,matrix_10000_2,matrix_10000_3,matrix_10000_4,matrix_10000_5) double %parameter_bound_2_data data parameter_bound_2 Constraint: == parameter_bound_2 double %parameter_bound_3_data data parameter_bound_3 Constraint: == parameter_bound_3 double %parameter_bound_4_data data parameter_bound_4 Constraint: == parameter_bound_4 double %parameter_bound_5_data data parameter_bound_5 Box: >= parameter_bound_5, <= parameter_bound_6 double %parameter_bound_6_data data parameter_bound_6 Box: >= parameter_bound_5, <= parameter_bound_6 double % %Output variables: % %solution_str = string with solution of problem; %outargstruc_arr = array of output PSG data structures; %Load data from mat-file: load('D:\American Optimal Decisions\PSG\MATLAB_Stan\All\Structuring step up CDO\data_problem_example_1_case_2_bbb_10_short\Optimization_subroutine_data.mat') %Save variables from mat-file to Workspace: tbpsg_export_to_workspace(toolboxstruc_arr) %Run users m-function Optimization_subroutine: [solution_str,outargstruc_arr] = Optimization_subroutine(matrix_x1_x2_data,matrix_x1_x2_vars,matrix_x2_x3_data,matrix_x2_x3_vars,matrix_x3_x4_data,matrix_x3_x4_vars,matrix_x4_x5_data,matrix_x4_x5_vars,matrix_10000_1_benchmark,matrix_10000_1_data,matrix_10000_1_vars,matrix_10000_2_benchmark,matrix_10000_2_data,matrix_10000_2_vars,matrix_10000_3_benchmark,matrix_10000_3_data,matrix_10000_3_vars,matrix_10000_4_benchmark,matrix_10000_4_data,matrix_10000_4_vars,matrix_10000_5_benchmark,matrix_10000_5_data,matrix_10000_5_vars,matrix_sum_of_x_5_data,matrix_sum_of_x_5_vars,parameter_bound_data,parameter_bound_1_data,parameter_alpha_data,parameter_bound_2_data,parameter_bound_3_data,parameter_bound_4_data,parameter_bound_5_data,parameter_bound_6_data); %Extract Objective: val_obj = tbpsg_objective(solution_str, outargstruc_arr); disp(' '); disp('Objective = '); disp(val_obj); %Extract optimal solution: point_data = tbpsg_optimal_point_data(solution_str, outargstruc_arr); disp(' '); disp('Optimal point = '); disp(point_data); %Extract structure containing PSG solution reports: output_structure = tbpsg_solution_struct(solution_str, outargstruc_arr); disp(' '); disp('Structure with PSG solution = '); disp(output_structure); %Uncomment the following lines to extract solutions details: %output = tbpsg_isoptimal(solution_str, outargstruc_arr); %output = tbpsg_function_data(solution_str, outargstruc_arr); %output = tbpsg_function_names(solution_str, outargstruc_arr); %output = tbpsg_time(solution_str, outargstruc_arr); %output = tbpsg_optimal_point_vars(solution_str, outargstruc_arr); %output = tbpsg_constraints_vars(solution_str, outargstruc_arr); %output = tbpsg_slack_data(solution_str, outargstruc_arr); %output = tbpsg_dual_data(solution_str, outargstruc_arr); %output = tbpsg_vector_constraint_data(solution_str, outargstruc_arr); %output = tbpsg_vector_dual_data(solution_str, outargstruc_arr); %output = tbpsg_vector_slack_data(solution_str, outargstruc_arr); %output = tbpsg_matrix_data(solution_str, outargstruc_arr); %output = tbpsg_matrix_vars(solution_str, outargstruc_arr); %output = tbpsg_vector_data(solution_str, outargstruc_arr);