Particle Swarm Optimization in MATLAB

A video tutorial on PSO and its implementation in MATLAB from scratch
Rating: 4.5 out of 5 (1,506 ratings)
20,132 students
Particle Swarm Optimization in MATLAB
Rating: 4.5 out of 5 (1,506 ratings)
20,132 students
Undertand what is Particle Swarm Optimization (PSO) and how it works
Implement PSO in MATLAB from scratch
Improve the PSO using Constriction Coefficients
Solve optimization problems using PSO


  • 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.

Who this course is for:
  • 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.
Course content
4 sections • 11 lectures • 1h 21m total length
  • Introduction
  • 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

Academic Education and Research Group
Yarpiz Team
  • 4.3 Instructor Rating
  • 1,946 Reviews
  • 41,871 Students
  • 9 Courses

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.

Programmer and Instructor
Mostapha Kalami Heris
  • 4.3 Instructor Rating
  • 1,946 Reviews
  • 41,871 Students
  • 9 Courses

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.