How can we insert upper and lower bounds in particle swarm optimization for more than one variable parameters that need to be optimized.

6 ビュー (過去 30 日間)
Hi sir/ madam,
I am using particle swarm optimization method for optimizing maximum amount of energy dissipated in an absorber (objective function). For this I have to go through solving ODE consists of more than one variable parameters. I am stucked while giving upper and lower bound for the variable parameters in (particleswarm) function for more than one variable. i actually want to know how can i feed upper and lower bound inside the particleswarm function for more than one variable parameter.

回答 (1 件)

Alan Weiss
Alan Weiss 2021 年 3 月 30 日
I am not sure that I understand you. You might be asking about bounding some control variables. Generally, all of your control variables are in one vector, typically called x, and your bounds are a vector of lower bounds and a vector of upper bounds. See Writing Scalar Objective Functions and Bound Constraints.
However, you might be asking about how to bound nonlinear functions of your control variables, meaning functions that depend on your control variables but are not, themselves, control variables. Those are called nonlinear inequality constraints, and are not available in the particleswarm solver. See Nonlinear Constraints. You can use patternsearch or ga for those constraints.
Alan Weiss
MATLAB mathematical toolbox documentation
  6 件のコメント
Walter Roberson
Walter Roberson 2021 年 3 月 31 日
The ub and lb vectors you pass to particleswarm should be the same length as the number of variables. particleswarm will use the bounds automatically for the creation function.
Rajni kant kumar
Rajni kant kumar 2021 年 3 月 31 日
Thanks Walter Roberson for the help.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeDirect Search についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by