# Multi-Objective Simulated Annealing (MOSA)

Simulated Annealing (SA) has been initially proposed in [*Optimization by Simulated Annealing*](https://doi.org/10.1126/science.220.4598.671) as an optimization heuristic. Multi-objective Simulated Annealing (MOSA) extends the original, single-objective SA to approximate the Pareto front in multi-objective optimization problems. A comprehensive discussion on MOSA and its algorithm variants can be found in [*Multi-objective Simulated Annealing: Principles and Algorithm Variants*](https://doi.org/10.1155/2019/8134674).

This library implements the MOSA algorithm in Python. Jupyter notebooks in the *examples* directory provide usage examples.

The easiest way to install MOSA is using **pip**:

```
pip install mosa
```

The code is provided "as is," with no guarantees regarding the accuracy of its results. The author assumes no responsibility for any losses arising from the use of the code. If you have any questions, comments, or suggestions about the code, feel free to [send a message](mailto:roberto.veiga@ufabc.edu.br) or open an issue on the [project's GitHub repository](https://github.com/rgaveiga/mosa).
