help me to use a gamu/pareto to solve an optimization problem

1 vue (au cours des 30 derniers jours)
Zinedine Gueddal
Zinedine Gueddal le 10 Mai 2020
I want to use a gamu program to solve an optimization problem of 6 variables and draw the 3D pareto curve of 3 functions of nonlinear objectives which are in the first m.file, under constraints of 3 nonlinear constraints which are in the second m.file, and the third m.file dedicate for initial data and options:premier m.file:
fonction [F]=obj(x)
t1=1;
t2=1;
t3=1;
f(1)=t1*(x(1)-x(4));
f(2)=t2*(x(2)-x(5));
f(3)=t3*(x(3)-x(6));
end
second m.file:
(x(1)^2-1)=0;
(x(2)^2-4)=0;
(x(3)^2-9)=0;
t1*(x(1))-x(4)=0;
t2*(x(2))-x(5)=0;
t3*(x(3))-x(6)=0;
third m.file:
x0=[1 2 3 1 2 3];
how to make a simulation and change in t1 and t2 and t3 between [0,1: 1]? and how to draw the pareto curve of f(1) = function (f(2), f(3)).

Réponses (1)

Alan Weiss
Alan Weiss le 12 Mai 2020
Your three objective functions are t(1)(x(1) - x(4)),..., and your second condition contains the equations t(1)(x(1) - x(4)) = 0,...
So how can you expect to minimize anything? You have already constrained the objectives to all be zero, whatever the variables are.
Furthermore, the second equation can be solved to say x(1) = ±1, x(2) = ±2, and x(3) = ±3. So what is there to plot? What is there to compute?
Alan Weiss
MATLAB mathematical toolbox documentation
  2 commentaires
Zinedine Gueddal
Zinedine Gueddal le 13 Mai 2020
excuse me, i tramped the data: i have 3 m.file when i look for maximize f(x) and simulate the change of t1, t2, t3 between [0.5:1.5] and draw the pareto 3D curve of f(1)=[f(2), f(3)] following changes to t1, then t2, then t3
m.file (1):
function F = fun(x)
t1=1;
t2=1;
t3=1;
F(1)=x(1);
F(2)=x(2);
F(3)=x(3);
m.file(2):
function [CCC,ceq]=confuneq(x)
t1=1;
t2=1;
t3=1;
CCC=[];
ceq=[((x(1)^2)-1)-x(4)
((x(2)^2)-4)-x(5);
((x(3)^2)-9)-x(6);
t1*x(1)-(1/2)*(x(2));
t2*x(2)-(2/3)*(x(3));
t3*x(3)-x(1)-x(2)];
m.file(3)
x0=[1 2 3 0 0 0];
lb=[0 0 0 0 0 0];
options = optimoptions('gamultiobj','UseParallel',true,'plotFcn',{@gaplotpareto,@gaplotscorediversity});
[x,fval,exitflag,output] = gamultiobj(@fun,6,[],[],[],[],lb,[],@confuneq);
result:
Infeasible individuals are present in the final population.
Optimization terminated: average change in the spread of Pareto solutions less than options.FunctionTolerance.
Constraints are not satisfied within constraint tolerance.
x=[2,14099260945409 2,84568488801590 4,14148670616499 3,58384930477328 4,09792249880503 8,15191211772837]
fval=[2,14099260945409 2,84568488801590 4,14148670616499]
were is the problem? why don't affichate courbe of pareto?
how i can simulate the change in t1 then t2 then t3 [0.5:1.5] and trace courbe pareto 3D for f(1)= [f(2), f(3)]?
Zinedine Gueddal
Zinedine Gueddal le 16 Mai 2020
I need your help and guidance

Connectez-vous pour commenter.

Catégories

En savoir plus sur Multiobjective Optimization dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by