PSO in simulink
44 views (last 30 days)
Show older comments
Hi. I want to run PSO algorithm in Simulink with s-functions.I will do optimization of control system with PSO. Could you help me? You can suggest anathor way for this. Thank you very much.
12 Comments
Answers (3)
Seth Popinchalk
on 10 Feb 2011
Edited: John Kelly
on 27 May 2014
In general, optimization is applied to a Simulink model using MATLAB commands to adjust variables that define the parameters of the simulation. Using Particle Swarm Optimization (PSO) to optimize a system modeled in Simulink can use the same approach. Define the system you would like to optimize in Simulink and some measurement of quality of the solution based on the outputs of the simulation. Use MATLAB workspace variables to define the parameters of the system that are changing, including initial conditions or input signals to the model. The simulation can be run using the sim command to generate the outputs of the model.
Using a PSO Algorithm initialize the particles using random positions in your solution space. Run a simulation for each particle so you can calculate the quality measure. Update the particles best known position if you have improved this measure of quality.
Each particle solution can be run in parallel by running the sim command within a parfor loop.
5 Comments
Sriniwas@AT
on 13 Jun 2013
Seth Popinchalk - Is it really possible to implement Partcile Swarm Optimization algorithm for online optimization rather than offline optimization?
My idea was to perform this PSO algorithm using an Embedded Matlab Function block inside a simulink model.
Bahaa Abdulkhaliq
on 3 Dec 2018
hello, please how can i perform pso code inside an embedded function . lhave some problems
mohamed elbesealy
on 8 Oct 2016
hello
4 Comments
Quan Zhou
on 31 Jan 2017
this is an offline optimisation, the connection among m-file and Simulink is in the tracklsq.m file. hope this would help. In addition, have you find any online demo using PSO controller in the loop.
syukron jamil
on 13 Sep 2017
Kiprono
on 12 Feb 2013
Have a look at this paper. It explains pso implementation as an s-function: http://www.sciencedirect.com/science/article/pii/S0038092X12001247
0 Comments
See Also
Categories
Find more on Particle Swarm in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!