paretosearch にて、"この型の変数ではドット インデックスはサポートされていません。"とエラーが生じます。
102 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
いつもお世話になっております。
今回は paretosearch についてお伺いしたく、質問しました。
paratesearch により、AI 二つが目標値を満たす予測をするプログラムを作成しています。
target1 = 1.10;
target2 = 1.10;
FitnessFcn = @(x)[abs(AI1(x')-target1), abs(AI2(x')-target2)]
num_Var = 246;
minx = minmaxx(1,:); %最小値を指定
maxx = minmaxx(2,:); %最大値を指定
A = [];
b = [];
Aeq = [];
beq = [];
nonlcon = [];
SeedConditions = (ub-lb).*rand(6,1);
Pop_size = 500;
Max_gen = 24600
options = optimoptions('paretosearch','ParetoSetSize',Pop_size,...
'MaxIterations',Max_gen,'InitialPoints',SeedConditions,'Display','iter','UseParallel',true);
[hvec, fvalvec, exitflag,output] = paretosearch(FitnessFcn, num_Var, A, b, Aeq, beq, minx, maxx, nonlcon, options);
しかし、以下のエラーが生じます。
この型の変数ではドット インデックスはサポートされていません。
エラー: globaloptim.internal.linConstrProjection (行 120)
[sol, ~, exitflag] = LPalg.runNoChecks(f, A, bcat, Aeq, beq, lb, ub);
エラー: globaloptim.paretosearch.coldstart (行 26)
[InitialPoints, noProjection] = globaloptim.internal.linConstrProjection(InitialPoints.', ...
エラー: globaloptim.paretosearch.warmstart (行 29)
globaloptim.paretosearch.coldstart(objfun,linConstr,nonlcon,optimState,options);
エラー: globaloptim.paretosearch.initialize (行 42)
globaloptim.paretosearch.warmstart(objfun,linConstr,nonlcon,optimState,options);
エラー: globaloptim.paretosearch.driver (行 28)
globaloptim.paretosearch.initialize(objfun,linConstr,nonlcon,optimState,options);
エラー: paretosearch (行 234)
[X,FVAL,EXITFLAG,OUTPUT,CINEQ,CEQ] = globaloptim.paretosearch.driver(objfun,nonlcon,optimState,linConstr,options,OUTPUT);
エラー: paratosearch_ver1 (行 194)
[pre_hvec,fvalvec, exitflag,output] = paretosearch(FitnessFcn,num_Var,A,b,Aeq,beq,minx,maxx,nonlcon,options);
options を消すとプログラムは動くため、原因は options にある事は判明しています。
しかし、エラーの対応方法がわかりません。
ご教授の方、何卒よろしくお願い申し上げます。
0 Commenti
Risposta accettata
Naoya
il 5 Apr 2023
エラーメッセージが分かりづらく恐れ入ります。
optimoptions 側の InitialPoints の ベクトルのいずれかの値が、minx ~ maxx の範囲の領域外の値になっているものと思われます。
一度、 InitialPoints の すべてのベクトル値を minx ~ maxx の範囲に含まれるように設定をお願いいたします。
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Optimization Toolbox 入門 in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!