Ich verwende die fminsearch Methode von Matlab eine Funktion zu minimieren:Wie lassen sich mit fminsearch nur ganze Zahlen durchsuchen?
c = cvpartition(200,'KFold',10);
minfn = @(z)kfoldLoss(fitcsvm(cdata,grp,'CVPartition',c,...
'KernelFunction','rbf','BoxConstraint',exp(z(2)),...
'KernelScale',exp(z(1))));
opts = optimset('TolX',5e-4,'TolFun',5e-4);
[searchmin fval] = fminsearch(minfn,randn(2,1),opts)
Die Minimierung über zwei Parameter ist.
Nun würde Ich mag einen dritten Parameter zu minimieren, aber diese Parameter nur positive ganzzahlige Werte annehmen, das heißt 1,2,3, ...
Wie kann ich sagen fminsearch nur positive ganze Zahlen in Betracht ziehen?
Zweitens, wenn mein dritter Parameter auf 10 initialisiert wird, aber der tatsächliche beste Wert 100 ist, konvergiert fminsearch in solchen Fällen schnell?
die ganze Zahl von der kontinuierlichen Optimierungsproblem Die Trennung scheint groß. Kennen Sie andere 1D oder nD diskrete Optimierungsverfahren? – machinery
Es gibt viele. Ob es Ihren speziellen Bedürfnissen entspricht, weiß ich nicht. Sie könnten zB mit der [Wikipedia-Seite] (https://en.wikipedia.org/wiki/Discrete_optimization) zur diskreten Optimierung beginnen. –