📄 definesolvers.m
字号:
% solver(i).objective.polynomial = 1;
% solver(i).objective.sigmonial = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).evaluation = 1;
% i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'sqplab';
% solver(i).version = '';
% solver(i).checkfor= {'sqplab.m'};
% solver(i).call = 'callsqplab';
% solver(i).objective.linear = 1;
% solver(i).objective.quadratic.convex = 1;
% solver(i).objective.quadratic.nonconvex = 1;
% solver(i).objective.polynomial = 1;
% solver(i).objective.sigmonial = 1;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.equalities.quadratic = 1;
% solver(i).constraint.equalities.polynomial = 1;
% solver(i).constraint.equalities.sigmonial = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
% solver(i).constraint.inequalities.elementwise.polynomial = 1;
% solver(i).constraint.inequalities.elementwise.sigmonial = 1;
% solver(i).dual = 1;
% solver(i).evaluation = 1;
% i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'lindo';
% solver(i).version = 'geometric';
% solver(i).checkfor= {'mxlindo'};
% solver(i).call = 'calllindo_geo';
% solver(i).objective.sigmonial = 1;
% solver(i).constraint.inequalities.elementwise.sigmonial = 1;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.equalities.quadratic = 1;
% solver(i).constraint.equalities.polynomial = 1;
% solver(i).constraint.equalities.sigmonial = 1;
% i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'lindo';
solver(i).version = 'NLP';
solver(i).checkfor= {'mxlindo'};
solver(i).call = 'calllindo_nlp';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.sigmonial = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.equalities.quadratic = 1;
solver(i).constraint.equalities.polynomial = 1;
solver(i).constraint.equalities.sigmonial = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.elementwise.polynomial = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).dual = 1;
solver(i).evaluation = 1;
solver(i).constraint.integer = 1;
i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'ipopt';
solver(i).version = 'geometric';
solver(i).checkfor= {'ipopt.m'};
solver(i).call = 'callipoptgp';
solver(i).objective.sigmonial = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.equalities.quadratic = 1;
solver(i).constraint.equalities.polynomial = 1;
solver(i).constraint.equalities.sigmonial = 1;
i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'ipopt';
solver(i).version = 'standard';
solver(i).checkfor= {'ipopt'};
solver(i).call = 'callipopt';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.sigmonial = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.equalities.quadratic = 1;
solver(i).constraint.equalities.polynomial = 1;
solver(i).constraint.equalities.sigmonial = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.elementwise.polynomial = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).dual = 0;
solver(i).evaluation = 1;
i = i+1;
solver(i) = lpsolver;
solver(i).tag = 'GPPOSY';
solver(i).version = '';
solver(i).checkfor= {'gpposy'};
solver(i).call = 'callgpposy';
solver(i).objective.sigmonial = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).constraint.equalities.elementwise.nonlinear = 1;
i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'pennlp';
% solver(i).version = 'standard';
% solver(i).checkfor= {'pennlp'};
% solver(i).call = 'callpennlp';
% solver(i).objective.linear = 1;
% solver(i).objective.quadratic.convex = 1;
% solver(i).objective.quadratic.nonconvex = 1;
% solver(i).objective.polynomial = 1;
% solver(i).objective.sigmonial = 1;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.equalities.quadratic = 1;
% solver(i).constraint.equalities.polynomial = 1;
% solver(i).constraint.equalities.sigmonial = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
% solver(i).constraint.inequalities.elementwise.polynomial = 1;
% solver(i).constraint.inequalities.elementwise.sigmonial = 1;
% solver(i).dual = 1;
% i = i+1;
% solver(i) = qpsolver;
% solver(i).tag = 'pennlp';
% solver(i).version = 'QP';
% solver(i).checkfor= {'pennlpm'};
% solver(i).call = 'callpennlp';
% solver(i).objective.linear = 1;
% solver(i).objective.quadratic.convex = 1;
% solver(i).objective.quadratic.nonconvex = 0;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).dual = 1;
% i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'pennlp';
% solver(i).version = 'standard';
% solver(i).checkfor= {'pennlpm'};
% solver(i).call = 'callpennlp';
% solver(i).objective.linear = 1;
% solver(i).objective.quadratic.convex = 0;
% solver(i).objective.quadratic.nonconvex = 0;
% solver(i).objective.polynomial = 1;
% solver(i).objective.sigmonial = 1;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.equalities.quadratic = 1;
% solver(i).constraint.equalities.polynomial = 1;
% solver(i).constraint.equalities.sigmonial = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
% solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
% solver(i).constraint.inequalities.elementwise.polynomial = 1;
% solver(i).constraint.inequalities.elementwise.sigmonial = 1;
% solver(i).constraint.inequalities.semidefinite.linear = 0;
% solver(i).constraint.inequalities.semidefinite.quadratic = 0;
% solver(i).constraint.inequalities.semidefinite.polynomial = 0;
% solver(i).dual = 1;
% i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'fminsearch';
solver(i).version = '';
solver(i).checkfor= {'fminsearch.m'};
solver(i).call = 'callfminsearch';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.sigmonial = 1;
solver(i).evaluation = 1;
solver(i).dual = 0;
i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'mpcvx';
% solver(i).tag = 'mpcvx';
% solver(i).version = '';
% solver(i).checkfor= {'mpcvx'};
% solver(i).call = 'mpcvx';
% solver(i).objective.linear = 1;
% solver(i).objective.quadratic.convex = 1;
% solver(i).objective.quadratic.nonconvex = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).constraint.inequalities.secondordercone = 1;
% solver(i).constraint.inequalities.elementwise.polynomial = 1;
% solver(i).constraint.inequalities.semidefinite.linear = 1;
% solver(i).parametric = 1;
% i = i+1;
% % ***************************************
% % SOMEWHAT MORE COMPLEX DEFINITIONS OF
% % THE INTERNAL MICP SOLVER
% % ***************************************
solver(i) = emptysolver;
solver(i).tag = 'BNB';
solver(i).version = '';
solver(i).checkfor= {'bnb'};
solver(i).call = 'bnb';
solver(i).objective.linear = 1;
solver(i).objective.sigmonial = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.maxdet = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).constraint.inequalities.elementwise.polynomial = 1;
solver(i).constraint.inequalities.semidefinite.linear = 1;
solver(i).constraint.inequalities.secondordercone = 1;
solver(i).constraint.inequalities.rotatedsecondordercone = 1;
solver(i).constraint.integer = 1;
solver(i).constraint.binary = 1;
solver(i).evaluation = 1;
i = i+1;
solver(i) = lpsolver;
solver(i).tag = 'BINTPROG';
solver(i).version = '';
solver(i).checkfor= {'bintprog.m'};
solver(i).call = 'callbintprog';
solver(i).constraint.binary = 1;
solver(i).constraint.integer = 1;
solver(i).dual = 0;
i = i+1;
% % ***************************************
% % Experimental min-max solver
% % ***************************************
% solver(i) = emptysolver;
% solver(i).tag = 'minmax';
% solver(i).version = '';
% solver(i).checkfor= {'callminmax'};
% solver(i).call = 'callminmax';
% solver(i).objective.linear = 1;
% solver(i).objective.sigmonial = 0;
% solver(i).objective.polynomial = 0;
% solver(i).objective.quadratic.convex = 0;
% solver(i).constraint.equalities.linear = 1;
% solver(i).constraint.inequalities.elementwise.linear = 1;
% solver(i).constraint.inequalities.elementwise.sigmonial = 0;
% solver(i).constraint.inequalities.elementwise.polynomial = 0;
% solver(i).constraint.inequalities.semidefinite.linear = 0;
% solver(i).constraint.inequalities.secondordercone = 0;
% solver(i).constraint.inequalities.rotatedsecondordercone = 0;
% solver(i).constraint.integer = 0;
% solver(i).constraint.binary = 0;
% i = i+1;
% % ***************************************
% % SOMEWHAT MORE COMPLEX DEFINITIONS OF
% % THE INTERNAL MICP SOLVER
% % ***************************************
solver(i) = emptysolver;
solver(i).tag = 'CUTSDP';
solver(i).version = '';
solver(i).checkfor= {'cutsdp'};
solver(i).call = 'cutsdp';
solver(i).objective.linear = 1;
solver(i).objective.sigmonial = 0;
solver(i).objective.polynomial = 0;
solver(i).objective.quadratic.convex = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.semidefinite.linear = 1;
solver(i).constraint.inequalities.secondordercone = 1;
solver(i).constraint.integer = 1;
solver(i).constraint.binary = 1;
solver(i).dual = 1;
solver(i).complex = 0;
i = i+1;
% ***************************************
% SOMEWHAT MORE COMPLEX DEFINITIONS OF
% THE INTERNAL GLOBAL BMI SOLVER
% ***************************************
solver(i) = emptysolver;
solver(i).tag = 'BMIBNB';
solver(i).version = '';
solver(i).checkfor= {'bmibnb'};
solver(i).call = 'bmibnb';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).objective.polynomial = 1;
solver(i).objective.sigmonial = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.equalities.polynomial = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.elementwise.polynomial = 1;
solver(i).constraint.inequalities.elementwise.sigmonial = 1;
solver(i).constraint.inequalities.semidefinite.linear = 1;
solver(i).constraint.inequalities.semidefinite.quadratic = 1;
solver(i).constraint.inequalities.semidefinite.polynomial = 1;
solver(i).constraint.inequalities.secondordercone = 1;
solver(i).constraint.inequalities.rotatedsecondordercone = 1;
solver(i).constraint.inequalities.rank = 0;
solver(i).constraint.binary = 1;
solver(i).constraint.integer = 1;
solver(i).evaluation = 1;
i = i+1;
solver(i) = qpsolver;
solver(i).tag = 'kktqp';
solver(i).version = '';
solver(i).checkfor= {'kktqp'};
solver(i).call = 'kktqp';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.equalities.linear = 0;
solver(i).constraint.inequalities.elementwise.linear = 1;
i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'none';
solver(i).version = '';
solver(i).checkfor= {'callnone.m'};
solver(i).call = 'callnone';
solver(i).objective.linear = 1;
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.equalities.linear = 1;
solver(i).constraint.inequalities.elementwise.linear = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
solver(i).constraint.inequalities.semidefinite.linear = 1;
solver(i).constraint.inequalities.semidefinite.quadratic = 1;
solver(i).evaluation = 1;
i = i+1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -