
Courses
Numerical Root Finding Methods in Python and MATLAB: Video Tutorial
Implement bisection, a bracketed secant update and Newton-Raphson in Python and MATLAB. Compare assumptions, stopping criteria and two worked equations.

20+ years in software, AI, machine learning and EdTech. Creator of Yarpiz.
Mostapha Kalami Heris has worked for more than 20 years across software engineering, artificial intelligence, machine learning and online education. He co-founded FaraDars, the largest online education platform in Iran, and created Yarpiz to share clear, well documented MATLAB and Python implementations of metaheuristics, machine learning and numerical methods, with tutorials and video courses that explain how they work.
The code has been downloaded about 200,000 times from the MATLAB File Exchange, and the courses have reached more than 75,000 learners in 175 countries. He holds a PhD in Electrical Engineering (Control Systems) from K. N. Toosi University of Technology. He now teaches control, programming, computer vision and robotics as a lecturer at Sheffield Hallam University, where he also researches optimization, agentic AI and large language models.

Courses
Implement bisection, a bracketed secant update and Newton-Raphson in Python and MATLAB. Compare assumptions, stopping criteria and two worked equations.
Read the post

Metaheuristics
Build binary and real-coded genetic algorithms in MATLAB and Python, with seven videos on selection, crossover, mutation, bounds, and implementation.
Read the post

Courses
Learn PCA in Python and MATLAB, from covariance and eigenvectors to projection, reconstruction, explained variance, and worked iris and digits examples.
Read the post

Courses
A guided MATLAB course covering equations, matrices, interpolation, integration, polynomials, differential equations and optimization, with links to all seven chapters.
Read the post

Courses
Model linear, integer, quadratic and nonlinear optimization problems in MATLAB. Follow worked examples and check feasibility, solver termination and local solutions.
Read the post

Courses
Solve initial value, boundary value and delay differential equations in MATLAB. Follow oscillator examples and check tolerances, boundary conditions and history functions.
Read the post

Courses
Work with MATLAB coefficient vectors to evaluate, fit, multiply, divide, differentiate and integrate polynomials. Check roots and division remainders.
Read the post

Courses
Compute integrals and derivatives in MATLAB using functions or sampled data. Explore quadrature, trapezoidal integration, gradients, tolerances and sample spacing.
Read the post

Courses
Compare polynomial fitting, grid interpolation, Fourier interpolation, splines and scattered-data methods in MATLAB, with practical checks for noisy data and extrapolation.
Read the post

Courses
Learn eigenvalues, eigenvectors and SVD in MATLAB, including diagonalization, low rank image approximation and checks on the reconstructed matrices.
Read the post

Courses
Solve polynomial, nonlinear and linear equations in MATLAB with roots, fzero, fsolve and linsolve. Compare the worked examples and learn how to check residuals.
Read the post

Courses
Fit linear-in-parameter models in MATLAB, Python and JavaScript. Learn intercepts, feature matrices, pseudoinverses, rank conditions and practical checks on prediction error.
Read the post

Courses
Solve linear difference equations using characteristic roots, initial conditions and particular solutions. Follow Fibonacci and repeated-root examples and verify each formula.
Read the post

Courses
Build an RK4 solver in Python and MATLAB, simulate a predator-prey model and compare step sizes to understand accuracy and the limits of a fixed-step method.
Read the post

Courses
Build linear programming models in MATLAB with linprog. Follow a worked maximization and a transportation model, then check constraints, bounds and variable ordering.
Read the post

Metaheuristics
Define an optimization problem once in MATLAB and solve it with 15 algorithms through YPEA, with shared variable types, settings, and result histories.
Read the post

Metaheuristics
Run particle swarm optimization in Python with NumPy, a reusable problem dictionary, configurable parameters, and a bounded Sphere example.
Read the post

Multiobjective Optimization
Explore NSGA-III in MATLAB with reference points, objective normalization, association, niching, and a configurable optimization example.
Read the post

Metaheuristics
Learn PSO in three videos, from the update equations to a MATLAB implementation with position bounds, velocity limits, and constriction coefficients.
Read the post

Machine Learning
Extract supervised linear features in MATLAB with Fisher LDA, within- and between-class scatter, a generalized eigenproblem, and the iris dataset.
Read the post

Metaheuristics
Implement a Cultural Algorithm in MATLAB with shared situational and normative knowledge, Gaussian moves, and a bounded Sphere example.
Read the post

Metaheuristics
Apply simulated annealing to continuous variables in MATLAB, with Gaussian neighbors, bound handling, cooling, and a Sphere test problem.
Read the post

Applications
Reduce image colors in MATLAB with k-Means, fuzzy c-Means, or a self-organizing map, using RGB or weighted HSV values and a smaller palette.
Read the post

Applications
Study graph encoding in MATLAB with PSO, ICA, and Firefly search for a minimum spanning tree, and compare the result with an exact baseline.
Read the post