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.1.tar.gz (31.1 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.1-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mosa-0.9.1.tar.gz
  • Upload date:
  • Size: 31.1 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.1.tar.gz
Algorithm Hash digest
SHA256 7bb37c77ae6ce50bac52ad39867853b2b78b9d3d1dd99f7b683dfd37113236dd
MD5 fda62df6dad1b2a17f4da7666f979045
BLAKE2b-256 d30e086d565021a8b638c3a413132c23ee0df5d4727af4c871df610f1f402eb8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mosa-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 32.5 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e73d9fb749a4204e555b2d0696e61548268cfcdc28b22a5f840fb18d2117e226
MD5 366b39b76ca70c60f13f19d239b07674
BLAKE2b-256 feb24ddf0f8b6f96b13f0ce44aa22fff7f56934e0d3143817431859d82822e50

See more details on using hashes here.

Release history Release notifications | RSS feed

0.9.3

2 files

This release

0.9.1 This release

2 files

0.9.0

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