Multi-Objective Particle Swarm Optimization (MOPSO)

Bearable and compressed implementation of Multi-Objective Particle Swarm Optimization (MOPSO)
ダウンロード: 8.4K
更新 2019/11/27


This function performs a Multi-Objective Particle Swarm Optimization (MOPSO) for minimizing continuous functions. The implementation is bearable, computationally cheap, and compressed (the algorithm only requires one file: MPSO.m). An 'example.m' script is provided in order to help users to use the implementation. It is also noteworthy to mention that the code is highly commented for easing the understanding. This implementation is based on the paper of Coello et al. (2004), "Handling multiple objectives with particle swarm optimization".

IMPORTANT: the objetive function that you specify must be vectorized. This means that it will take the entire population (i.e., a matrix Np x nVar, which Np is the number of particles and nVar is the number of variables) and it expects to receive a fitness value for each particle (i.e., a vector Np x 1). If the function is not vectoriyed and receives only a single value, the code will obviously rise an error.


Víctor Martínez-Cagigal (2024). Multi-Objective Particle Swarm Optimization (MOPSO) (, MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2016a
Windows macOS Linux
Help Center および MATLAB AnswersParticle Swarm についてさらに検索

ヒントを与えたファイル: Multiple Design Options - MOPSO (MDO-MOPSO)

Community Treasure Hunt

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

Start Hunting!
バージョン 公開済み リリース ノート

Now the function raises a warning if the objective function is badly programmed, which is usually the issue that is reported in some comments.

ParetoFront folder is now uploaded

Optimal Pareto Fronts are updated.
Function is modified in order to return the data form the repository

More benchmark functions and optimal Pareto Fronts are implemented

Mutation operator and crowding factor for repository removing are applied.