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

1 visualización (últimos 30 días)
Keisuke goto
Keisuke goto el 30 de Jun. de 2018
Respondida: Naoya el 3 de Jul. de 2018
global optimization toolbox のparticleswamにて、HybridFcnにfminconが指定できますが、 fminconで使用する変数の指定方法が良く理解できません。 変数の指定方法に関してご教授頂けませんでしょうか。

Respuesta aceptada

Naoya
Naoya el 3 de Jul. de 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 の説明が参考になれます。

Más respuestas (0)

Categorías

Más información sobre Particle Swarm en Help Center y File Exchange.

Productos


Versión

R2017b

Community Treasure Hunt

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

Start Hunting!