I would like to ask information about the implementation of PSO in matlab or if possible in Fortran as well as to ask if it can be connected to FEM commercial software. Any suggestions on related issues?
In the optimization processing, you need to run many simulations to reach the optimum design. In other word you need to open the software and change the input variables or modelling in any simulation. This is very time-consuming. If the input models to the considered software is text form, you could to write a coding in the MATLAB or FORTRAN to change the input text based on input random variables in each step. After that, you need additional code to call up the software in each step and analysis the input modified text. In this case, you could to use C# or C++ or Python coding. It's better to get help from a software specialist.
There are a lot of codes available for particle swarm optimization on the internet and no need to write. Your difficulty is to call up the software using C# or C++ or python coding.
Modelcenter does exactly what you want, it implements different types of SwarmOps algorythms, and can basically integrate almost any know engineering code into a workflow, with very little effot.