multi-objective particle swarm optimization with constrained, mixed integer, real valued variables?

5 ビュー (過去 30 日間)
Yunhyeok Ko
Yunhyeok Ko 2022 年 3 月 30 日
回答済み: Poorna 2024 年 2 月 9 日
Hi.
I'm trying to solve multi-objective optimization problems with PSO algorithm.
In the problem, variables to be optimized is comprised as follows.
  1. 0< [x1, x2, x3 ... xn] < 255, real-valued
  2. y is one of integer set = [2, 3, 4, 5 ,6 7, 8, 9, 10]
If I neglect the integer constraint y, and consider only one objective funtion F1, it was possible to optimize x = [x1 ...xn] with matlab built-in particleswarm function.
If I want to extend the optimization problem having multi-objective function (F1, F2) with both mixed variable constraint 1, 2
What should I do?
Please give me any ideas for this problem.

回答 (1 件)

Poorna
Poorna 2024 年 2 月 9 日
Hi Yunhyeok,
I see that you are trying to optimize your function along two dimensions.
Currently MathWorks doesn’t have built-in function to do Multi-Objective Particle swarm optimization. But there are few File exchange submissions which implement MOPSO which you could try.
Alternatively, MATLAB has a built-in solve function, which can be used to solve multi-objective optimization problems.
Considering the specific nature of your problem, where the domain for the variable "y" is limited, you could try a manual search for the optimum value. You can iterate over the entire domain of "y", substituting each value of "y" into your function, and then utilizing the particleswarm function to optimize the variable "x" for each instance of "y".
Now, you can evaluate the set of optimal values and find the maximum among them. The corresponding pair of "x" and "y" values associated with this maximum will represent the optimal solution to your problem.
To know more about above functions please refer to the following documentation:

カテゴリ

Help Center および File ExchangeParticle Swarm についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by