Skip to main content

MOSA

Multi-Objective Simulated Annealing (MOSA)

Simulated Annealing (SA) has been initially proposed in Optimization by Simulated Annealing 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.

If you have any questions, corrections, comments or suggestions, just drop a message.

You can also reach me on Linkedin or follow me on X. When I have some free time, which is rare, I publish articles on Medium.

If you want to support this and other open source projects that I maintain, become a sponsor on Github.

Installation

The easiest way to install MOSA is using pip:

pip install mosa

Documentation

You can access the API documentation for MOSA on the project's GitHub Pages site.

Performance

MOSA keeps its internal solution archive as an incremental Pareto front and uses copy-on-write candidate generation for large discrete populations.

Checkpoint and archive writes occur after every temperature by default. For long runs, they can be deferred while retaining a guaranteed final save:

optimizer.checkpoint_interval = 0
optimizer.archive_save_interval = 0

Positive interval values specify the number of completed temperatures between writes. Use python benchmarks/benchmark_performance.py from the repository root to run the deterministic performance scenarios.

Contribution

Contributions are definitely welcome. However, it should be mentioned that this repository uses poetry as a package manager.

Source code must be formatted using black.

Disclaimer

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.

Bugs must be reported as issues on the project's GitHub repository.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mosa-0.9.0.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mosa-0.9.0-py3-none-any.whl (29.3 kB view details)

Uploaded Python 3

File details

Details for the file mosa-0.9.0.tar.gz.

File metadata

  • Download URL: mosa-0.9.0.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.9 Windows/10

File hashes

Hashes for mosa-0.9.0.tar.gz
Algorithm Hash digest
SHA256 9125fc35d1dc2bbea0274ced7fd8be0074d2007941c378b53c8b6b204bf97228
MD5 3ca731d23ce35f6651cbb02d7863510b
BLAKE2b-256 8390e382ae4630f43db7d98aa2c6c332a484796a320a980d8b3502dbb17832c4

See more details on using hashes here.

File details

Details for the file mosa-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: mosa-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 29.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.9 Windows/10

File hashes

Hashes for mosa-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 305ccda4f1d1d6913a3f603b242fe72ba7c1b84f82f3f7a76a03d692589e0eac
MD5 bab1446e3d04dbdcedda4624d8ee6cd7
BLAKE2b-256 b9563efa8d856d067d566b2717cbf3a8763f5050633e1e40a3049edab28ec84a

See more details on using hashes here.

Release history Release notifications | RSS feed

0.9.3

2 files

0.9.1

2 files

This release

0.9.0 This release

2 files

0.8.7

2 files

0.8.6

2 files

0.8.5

2 files

0.8.0

2 files

0.7.5

2 files

0.7.0

1 file

0.5.0

2 files

0.4.9

1 file

0.4.8

1 file

0.4.7

1 file

0.4.6

1 file

0.4.5

1 file

0.4

1 file

0.3.5

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page