Description

MATLAB code

Results

Table 1. Solution report

 

Description

Case study Mixed Quantile Regression: Estimation of CVaR with Explanatory Factors (see Formal Problem Statement) in MATLAB Environment is solved with riskprog PSG subroutine.

Only one problem is included:

Problem 2 (CS.2 - CS.3): minimizing Rockafellar error function implemented with Partial Moments .

 

MATLAB code for Binary Classification with Splines is in file problem_pm_mixed_percentile_regression.m.

Data are saved in files problem_pm_mixed_percentile_regression_data.mat.

 

MATLAB code

Let us describe the main operations. To run case study you need to do the following main steps:

 

In file problem_pm_mixed_percentile_regression.m:

 

Load data:

 

load('.\problem_pm_mixed_percentile_regression_data.mat')

 

Define input arguments:

 

string = {2.875,'pm_pen',0.25,'pm_pen_g',3.9167,'pm_pen',0.25,'pm_pen_g',6,'pm_pen',0.25,'pm_pen_g',12.25,'pm_pen',0.25,'pm_pen_g'};

w = {0,0,0,0,0,0,0,0};

 

Optimize problem:

 

[xout, fval, status, output] = riskprog(string, w, H, c, [], [], [], [], Aeq, beq);

 

Display solution:

 

disp(' ');

disp('Results: ');

 

Display status of optimization problem:

 

disp(sprintf('status of optimization problem = %s', status));

 

Display solving time:

 

disp(sprintf('solving time = %g', output.solving_time));

 

Display objective:

 

disp(sprintf('objective = %g', fval));

 

Display functions:

 

disp(sprintf('pm_pen= %g', output.frval(1)));

disp(sprintf('pm_pen_g= %g', output.frval(2)));

disp(sprintf('pm_pen= %g', output.frval(3)));

disp(sprintf('pm_pen_g= %g', output.frval(4)));

disp(sprintf('pm_pen= %g', output.frval(5)));

disp(sprintf('pm_pen_g= %g', output.frval(6)));

disp(sprintf('pm_pen= %g', output.frval(7)));

disp(sprintf('pm_pen_g= %g', output.frval(8)));

 

Display left hand sides of linear equality:

 

disp(sprintf('linear equality = %g', output.fAeqval));

 

Display residual of linear equality:

 

disp(sprintf('residual of linear equality = %g', output.rAeqval));

 

Display optimal point:

 

disp('optimal point = ');

disp(xout');

 

Results

Table 1. Solution report

 

Results:

status of optimization problem = optimal

solving time = 0.04

objective = 0.0154118

pm_pen= 0.000312476

pm_pen_g= 0.00909997

pm_pen= 0.000246214

pm_pen_g= 0.00998063

pm_pen= 0.000186017

pm_pen_g= 0.0111287

pm_pen= 0.000134052

pm_pen_g= 0.012954

linear equality = 1.36609e-017

residual of linear equality = 1.36609e-017

optimal point =

   0.0093    0.6195    0.4672   -0.0873   -0.0071   -0.0018   -0.0008    0.0004    0.0022