particlesw​arm最適化時のHy​bridFcnにfm​inconを指定した​際の、fmincon​への変数指定方法につ​いて

1 visualizzazione (ultimi 30 giorni)
Keisuke goto
Keisuke goto il 30 Giu 2018
Risposto: Naoya il 3 Lug 2018
global optimization toolbox のparticleswamにて、HybridFcnにfminconが指定できますが、 fminconで使用する変数の指定方法が良く理解できません。 変数の指定方法に関してご教授頂けませんでしょうか。

Risposta accettata

Naoya
Naoya il 3 Lug 2018
質問内容から詳細を判断し兼ねていますが、目的関数内の最適化したい変数ではなく、最適化対象外のパラメータ値を設定した場合の指定方法となりますでしょうか?
上記の場合でしたら、 Passing Extra Parameters に説明がありますが、下記例のような方法で対応可能です。
>> nvars = 2;
>> lb = [-10,-15];
>> ub = [15,20];
>> options = optimoptions('particleswarm','SwarmSize',100,'HybridFcn',@fmincon);
>> a = 6; % 目的関数内で扱うパラメータ
>> fun = @(x) x(1)*exp(-norm(x-a)^2); % 関数ハンドル
>> x = particleswarm(fun,nvars,lb,ub,options) % 最適化
或いは fmincon側のoptions を別途指定されることを想定されている場合は、 Hybrid Functions の説明が参考になれます。

Più risposte (0)

Prodotti


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!