Particle Swarm Optimization in MATLAB
- Optimization, specially intelligent optimization tools
- MATLAB programming
Particle Swarm Optimization (PSO) is an intelligent optimization algorithm based on the Swarm Intelligence. It is based on a simple mathematical model, developed by Kennedy and Eberhart in 1995, to describe the social behavior of birds and fish. The model relies mostly on the basic principles of self-organization which is used to describe the dynamics of complex systems. PSO utilizes a very simplified model of social behavior to solve the optimization problems, in a cooperative and intelligent framework. PSO is one of the most useful and famous metaheuristics and it is successfully applied to various optimization problems.
In this video tutorial, implementation of Particle Swarm Optimization (PSO) in MATLAB is discussed in detail. In the first part, theoretical foundations of PSO is briefly reviewed. Next, PSO is implemented line-by-line and from scratch, and every line of code is described in detail. The instructor of this course is Dr. S. Mostapha Kalami Heris, Control and Systems Engineering PhD and member of Yarpiz Team.
After watching this video tutorial, you will be able to know what is PSO, and how it works, and how you can use it to solve your own optimization problems. Also, you will learn how to implement PSO in MATLAB programming language. If you are familiar with other programming languages, it is easy to translate the MATLAB code and rewrite the PSO code in those languages.
- Students working on optimization problems and methods, specially engineering and science students, can use PSO as an optimization tool; so this course can help them to enhance their knowlodge about one of most useful meta-heuristics.
- Anyone who is interested in artifical and computational intelligence will find this course useful.
- History of PSO and its Simplified Model
- Mathematical Model of PSO
- Optimization Problem Definition
- PSO Parameters
- Initialization of PSO
- PSO Main Loop
- Finalizing the Optimization Process
- Converting the Code to a Function
- Adding Position and Velocity Bounds
- Constriction Coefficients for PSO
The Yarpiz project is aimed to be a resource of academic and professional scientific source codes and tutorials, specially Computational Intelligence, Machine Learning, and Evolutionary Computation. Beside video tutorials, various source codes are available to download, via Yarpiz website.
The word Yarpiz (pronounced /jɑrpəz/) is an Azeri Turkish word, meaning Pennyroyal or Mentha Pulegium plant.
Mostapha Kalami Heris was born in 1983, in Heris, Iran. He received B.S. from Tabriz University in 2006, M.S. from Ferdowsi University of Mashad in 2008, and PhD from Khaje Nasir Toosi University of Technology in 2013, all in Control and Systems Engineering.
Dr. Kalami is also co-founder of, executive officer of, and an instructor in FaraDars, an online education organization located in Iran. Also, he is a member of Yarpiz Team, which is provider of academic source codes and tutorials. He is mostly interested in the computer programming, machine learning, artificial intelligence, meta-heuristics and control engineering topics.