MATLAB: Understanding output of fmincon optimization using ‘sqp’ algorithm

fminconsqp

All,
I have difficulty understanding the output of a fmincon optimization using a sqp algorithm in relation with my optimization options:
options = optimset('Algorithm','sqp','Display','Iter','TolCon',5e-3,'TolFun',3e-2,'DiffMinChange',0.02,'MaxIter',30)
This is my output:
Norm of First-order
Iter F-count f(x) Feasibility Steplength step optimality
0 46 9.999941e-01 8.379e-02 6.157e-01
1 92 9.711733e-01 2.460e-02 1.000e+00 1.790e-01 4.004e-01
2 138 9.612754e-01 8.941e-02 1.000e+00 1.422e-01 1.415e-01
3 184 9.587545e-01 6.901e-02 1.000e+00 1.101e-01 1.064e-01
4 230 9.844396e-01 2.151e-02 1.000e+00 9.309e-02 6.751e-01
5 313 9.784854e-01 4.579e-02 3.430e-01 4.663e-02 1.011e-01
6 359 9.770382e-01 3.249e-02 1.000e+00 1.174e-01 1.477e-01
7 405 9.810448e-01 1.086e-02 1.000e+00 1.049e-01 2.461e-01
8 453 9.681814e-01 2.331e-02 7.000e-01 6.497e-01 3.990e-01
9 499 9.646897e-01 1.103e-02 1.000e+00 7.355e-02 1.212e-01
10 545 9.494203e-01 3.705e-02 1.000e+00 2.301e-01 2.335e-01
11 591 9.375651e-01 2.780e-02 1.000e+00 2.964e-01 3.342e-01
12 637 9.241642e-01 2.714e-02 1.000e+00 2.015e-01 4.565e-01
13 687 9.202633e-01 3.259e-02 3.430e-01 1.561e-01 3.296e-01
14 733 9.041621e-01 5.144e-02 1.000e+00 2.001e-01 3.302e-01
15 780 9.277166e-01 1.496e-02 7.000e-01 7.724e-02 2.465e-01
16 830 9.278971e-01 1.142e-02 3.430e-01 8.309e-02 7.720e-02
17 879 9.294901e-01 7.435e-03 4.900e-01 1.065e-01 6.746e-02
18 933 9.290804e-01 6.752e-03 8.235e-02 2.407e-02 1.600e-01
19 979 9.274652e-01 1.258e-02 1.000e+00 1.624e-01 1.122e-01
20 1029 9.282536e-01 8.785e-03 3.430e-01 4.559e-02 2.938e-01
21 1075 9.283087e-01 7.863e-03 1.000e+00 7.305e-02 1.867e-01
22 1124 9.291922e-01 5.108e-03 4.900e-01 6.765e-02 1.315e-01
23 1172 9.294913e-01 4.504e-03 4.900e-01 2.586e-02 1.122e-01
24 1218 9.229507e-01 1.586e-02 1.000e+00 1.486e-01 1.453e-01
25 1268 9.174597e-01 3.731e-02 3.430e-01 3.172e-01 2.888e-01
26 1351 9.194210e-01 3.361e-02 1.176e-01 1.635e-02 1.436e-01
27 1399 9.246186e-01 1.902e-02 4.900e-01 1.790e-01 1.188e-01
28 1447 9.282432e-01 1.243e-02 4.900e-01 4.659e-02 1.218e-01
29 1504 9.269571e-01 1.659e-02 2.825e-02 2.655e-02 1.415e-01
30 1551 9.319542e-01 9.556e-03 7.000e-01 6.073e-02 9.891e-02
So my question actually is: Which two columns represent my TolCon and TolFun? I need to know this so I can understand when the optimization should stop. I thought Feasibility _ was TolCon and _First-order optimality was TolFun, but I seem to be wrong.
Please advise!
Thanks!

Best Answer

According to here
the column "Feasibility" represents the maximum constraint violation. So, that column would let you track convergence to TolCon.
TolFun would be accounted for in the f(x) column. It measures the difference between two successive entries in this column.