📄 newsolverdefinitions.m
字号:
solver(i) = sdpsolver;
solver(i).tag = 'CSDP';
solver(i).version = '';
solver(i).checkfor= {'csdp','readsol','writesdpa'};
solver(i).call = 'callcsdp';
solver(i).constraint.equalities.linear = 0;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'MAXDET';
solver(i).version = '';
solver(i).checkfor= {'maxdet.m'};
solver(i).call = 'callmaxdet';
solver(i).objective.maxdet = 1;
solver(i).dual = 0;
i = i+1;
% solver(i) = sdpsolver;
% solver(i).tag = 'SPECSDP';
% solver(i).version = '';
% solver(i).checkfor= {'specsdp'};
% solver(i).call = 'callspecsdp';
% solver(i).constraint.equalities.linear = 0; % Does not handle equality constraints
% solver(i).constraint.inequalities.semidefinite.quadratic = 1;
% i = i+1;
%OLD
% solver(i).tag = 'specsdp';
% solver(i).version = '';
% solver(i).bmi = 0;
% solver(i).pmi = 0;
% solver(i).maxdet = 0;
% solver(i).sdp = 1;
% solver(i).kyp = solver(i).sdp;
% solver(i).lp = 1;
% solver(i).qp = 0;
% solver(i).gp = 0;
% solver(i).ncqp = 0;
% solver(i).socp = 0;
% solver(i).rotsocp = 0;
% solver(i).equalities = 0;
% solver(i).duals = 1;
% solver(i).complex = 0;
% solver(i).integer = 0;
% solver(i).binary = 0;
%solver(i).parametric = 0;
% solver(i).checkfor= {'SPSDPLSCX'};
% solver(i).call = 'callspecsdp';
% solver(i).subcall = '';
% solver(i).show = 1;
% i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'PENSDP';
solver(i).version = 'PENOPT';
solver(i).checkfor= {'pensdpm'};
solver(i).call = 'callpensdpm';
solver(i).constraint.equalities.linear = 0;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'PENSDP';
solver(i).version = 'TOMLAB';
solver(i).checkfor= {'pensdp'};
solver(i).call = 'callpensdp';
solver(i).constraint.equalities.linear = 0;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'PENBMI';
solver(i).version = 'PENOPT';
solver(i).checkfor= {'penbmim'};
solver(i).call = 'callpenbmim';
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.equalities.linear = 0;
solver(i).constraint.inequalities.semidefinite.quadratic = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'PENBMI';
solver(i).version = 'TOMLAB';
solver(i).checkfor= {'penbmi'};
solver(i).call = 'callpenbmi';
solver(i).objective.quadratic.convex = 1;
solver(i).objective.quadratic.nonconvex = 1;
solver(i).constraint.equalities.linear = 0;
solver(i).constraint.inequalities.semidefinite.quadratic = 1;
solver(i).constraint.inequalities.elementwise.quadratic.convex = 1;
solver(i).constraint.inequalities.elementwise.quadratic.nonconvex = 1;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'LMILAB';
solver(i).version = '';
solver(i).checkfor= {'setlmis'};
solver(i).call = 'calllmilab';
solver(i).dual = 0;
solver(i).constraint.equalities.linear = 0;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'LMIRANK';
solver(i).version = '';
solver(i).checkfor= {'lmirank'};
solver(i).call = 'calllmirank';
solver(i).dual = 0;
solver(i).constraint.inequalities.rank = 1;
solver(i).objective.linear = 0;
solver(i).constraint.equalities.linear = 0;
i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'MPT';
solver(i).version = '';
solver(i).checkfor= {'mpt_mpqp'};
solver(i).call = 'callmpt';
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).parametric = 1;
i = i+1;
solver(i) = sdpsolver;
solver(i).tag = 'KYPD';
solver(i).version = '';
solver(i).checkfor= {'kypd_solver'};
solver(i).call = 'callkypd';
i = i+1;
solver(i) = emptysolver;
solver(i).tag = 'fmincon';
solver(i).version = 'geometric';
solver(i).checkfor= {'fmincon.m'};
solver(i).call = 'callfmincongp';
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 = 'fmincon';
solver(i).version = 'standard';
solver(i).checkfor= {'fmincon.m'};
solver(i).call = 'callfmincon';
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).constraint.inequalities.semidefinite.linear = 1;
%solver(i).constraint.inequalities.semidefinite.quadratic = 1;
%solver(i).constraint.inequalities.semidefinite.polynomial = 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).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).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).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;
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.integer = 1;
solver(i).constraint.binary = 1;
solver(i).dual = 1;
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).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).constraint.inequalities.secondordercone = 1;
solver(i).constraint.inequalities.rotatedsecondordercone = 1;
solver(i).constraint.inequalities.rank = 1;
solver(i).constraint.binary = 1;
solver(i).constraint.integer = 1;
i = i+1;
% solver(i) = emptysolver;
% solver(i).tag = 'GLOBAL';
% solver(i).version = 'BMI';
% solver(i).checkfor= {'bmibnb'};
% solver(i).call = 'bmibnb';
% solver(i).objective.linear = 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).constraint.inequalities.secondordercone = 1;
% solver(i).constraint.inequalities.rotatedsecondordercone = 1;
% i = i+1;
%
% solver(i) = emptysolver;
% solver(i).tag = 'GLOBAL';
% solver(i).version = 'DISCRETE';
% solver(i).checkfor= {'bnb'};
% solver(i).call = 'bnb';
% solver(i).objective.linear = 1;
% solver(i).objective.sigmonial = 1;
% solver(i).objective.quadratic.convex = 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.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;
% 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).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;
i = i+1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -