Skip to main content

Algorithm OS: An extensible operating system for algorithmic development

Project description

AlgOS: Algorithm Operating System

Algorithm Operating System (AlgOS) is an unopinionated, extensible, modular framework for algorithmic implementations. AlgOS offers numerous features: integration with Optuna for automated hyperparameter tuning; automated argument parsing for generic command-line interfaces; automated registration of new classes; and a centralised database for logging experiments and studies. These features are designed to reduce the overhead of implementing new algorithms and to standardise the comparison of algorithms. The standardisation of algorithmic implementations is crucial for reproducibility and reliability in research. AlgOS combines Abstract Syntax Trees with a novel implementation of the Observer pattern to control the logical flow of algorithmic segments.

Installation

Install via pip:

pip install algos_core

Install from cloned repository:

pip install -e .

Use in python via

import algos

Modules

AlgOS is designed to be extensible for any algorithm that can be constructed as a cyclic or acyclic graph.

Currently the available modules are:

The intention is to expand this in the future. If you use this library and would like to include a module please let us know.

Examples

The tests contain some examples of how to construct basic algorithms using AlgOS. AlgOSRL contains concrete examples of how to construct reinforcement learning algorithms using AlgOS.

Documentation

TBA

Citing the Project

To cite this repository in publications:

@misc{algos,
      title={AlgOS: Algorithm Operating System}, 
      author={Llewyn Salt and Marcus Gallagher},
      year={2025},
      eprint={2504.04909},
      archivePrefix={arXiv},
      primaryClass={cs.SE},
      url={https://arxiv.org/abs/2504.04909}, 
}

Project details


Download files

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

Source Distribution

algos-0.1.0.tar.gz (65.1 kB view details)

Uploaded Source

Built Distribution

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

algos-0.1.0-py3-none-any.whl (76.2 kB view details)

Uploaded Python 3

File details

Details for the file algos-0.1.0.tar.gz.

File metadata

  • Download URL: algos-0.1.0.tar.gz
  • Upload date:
  • Size: 65.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for algos-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9beec74ddcf410e7ff2bae17ed6b2821f64c3d41f1205155c1dfd780118fccb3
MD5 1a10fe108d05b9011bf3f161e52a8e5f
BLAKE2b-256 a86b35f09fd933017d755fc691b5f9b77ad6f5eff49597aa3d09027a289ac72c

See more details on using hashes here.

File details

Details for the file algos-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: algos-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 76.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for algos-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3f348f32ed02eec5439c1e28e49d2b6aa9fdce8573dcc357e0b92059264e22f9
MD5 c6c9094dfb1c14c3f89c3b71de8e503b
BLAKE2b-256 7dd92c9c97424bbf769e79aafa11364bb14b72d033c6b3081009ebeedb135b48

See more details on using hashes here.

Supported by

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