Specifying custom feasibility tolerance in MATLAB extendedFeatures

Skip to first unread message

Mark L. Stone

Dec 31, 2021, 12:42:58 PM12/31/21
to Artelys Knitro forum
I do not understand what the syntax is for use of the extendedFeature fields for AFeasTols, AeqFeasTols, cFeasTols, ceqFeasTols, and xFeasTols to specify custom feasibility tolerances in MATLAB

Let's say I want custom feasibility tolerance of 1e-5 for c (nonlinear inequality) constraints 6:10.
I would set extendedFeatures.cFeasTols = ?


Richard Waltz

Dec 31, 2021, 1:19:16 PM12/31/21
to kni...@googlegroups.com


When using these custom feasibility tolerances through the MATLAB interface you have to specify the full array.  A negative values tells Knitro to use the default tolerance.  So for example, if the dimension of cFeasTols (i.e. the number of nonlinear inequalities) is "m", then you can first initialize the full array to -1 (i.e. default values), and then just set custom values for the indices 6 through 10 as follows:

extendedFeatures.cFeasTols = -1*ones(m,1);

extendedFeatures.cFeasTols(6:10,1) = 1e-5;

One more thing, when setting custom feasibility tolerances through extendedFeatures do not set user options "feastol" or "feastol_abs" through "knitro_options".  It looks like in some instances "feastol"/"feastol_abs" overwrites the custom tolerances in extendedFeatures, which should not happen.  We will investigate and fix this.

Best regards,


Richard WALTZ
Senior Scientist
Artelys USA

From: 'Mark L. Stone' via Artelys Knitro forum <kni...@googlegroups.com>
Sent: Friday, December 31, 2021 11:14:25 AM
To: Artelys Knitro forum
Subject: [Knitro] Specifying custom feasibility tolerance in MATLAB extendedFeatures
You received this message because you are subscribed to the Artelys "Knitro Nonlinear Optimization Solver" google group.
To post to this group, send email to kni...@googlegroups.com
To unsubscribe from this group, send email to knitro-un...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/knitro?hl=en
Thank You,
You received this message because you are subscribed to the Google Groups "Artelys Knitro forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to knitro+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/knitro/a14571e5-548e-416b-a2a6-82296e753356n%40googlegroups.com.

Mark L. Stone

Dec 31, 2021, 7:54:22 PM12/31/21
to Artelys Knitro forum
Fantastic. Thanks.
Reply all
Reply to author
0 new messages