Browse free open source Python Algorithms and projects below. Use the toggles on the left to filter open source Python Algorithms by OS, license, language, programming language, and project status.

  • Build Agents and Models on One Platform Icon
    Build Agents and Models on One Platform

    Everything you need to build production-ready agents and models. Access 200+ Google and third-party AI models and tools.

    Gemini Enterprise Agent Platform is Google Cloud's comprehensive platform for developers to build, scale, govern, and optimize agents and models. Choose from Google's most advanced models and third-party models like Anthropic's Claude Model Family.
    Start Free
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 1
    Evolving Objects

    Evolving Objects

    This project have been merged within Paradiseo.

    See the new project page: https://nojhan.github.io/paradiseo/ (Archived project page: http://eodev.sourceforge.net/)
    Downloads: 5 This Week
    Last Update:
    See Project
  • 2

    FRODO 2

    Open-Source Framework for Distributed Constraint Optimization (DCOP)

    FRODO is a Java platform to solve Distributed Constraint Satisfaction Problems (DisCSPs) and Optimization Problems (DCOPs). It provides implementations for a variety of algorithms, including DPOP (and its variants), ADOPT, SynchBB, DSA...
    Downloads: 3 This Week
    Last Update:
    See Project
  • 3
    CloudI: A Cloud at the lowest level
    CloudI is an open-source private cloud computing framework for efficient, secure, and internal data processing. CloudI provides scaling for previously unscalable source code with efficient fault-tolerant execution of ATS, C/C++, Erlang/Elixir, Go, Haskell, Java, JavaScript/node.js, OCaml, Perl, PHP, Python, Ruby, or Rust services. The bare essentials for efficient fault-tolerant processing on a cloud!
    Downloads: 8 This Week
    Last Update:
    See Project
  • 4
    IMPORTANT: The project moved over to github! You can find it at: https://github.com/exhuma/python-cluster
    Downloads: 6 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    C++, Matlab and Python library for Hidden-state Conditional Random Fields. Implements 3 algorithms: LDCRF, HCRF and CRF. For Windows and Linux, 32- and 64-bits. Optimized for multi-threading. Works with sparse or dense input features.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 6
    A univariate and multivariate analysis UI. This project is no longer under development. Please use as you wish.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    Modular toolkit for Data Processing MDP
    The Modular toolkit for Data Processing (MDP) is a Python data processing framework. From the user's perspective, MDP is a collection of supervised and unsupervised learning algorithms and other data processing units that can be combined into data processing sequences and more complex feed-forward network architectures. From the scientific developer's perspective, MDP is a modular framework, which can easily be expanded. The implementation of new algorithms is easy and intuitive. The new implemented units are then automatically integrated with the rest of the library. The base of available algorithms is steadily increasing and includes signal processing methods (Principal Component Analysis, Independent Component Analysis, Slow Feature Analysis), manifold learning methods ([Hessian] Locally Linear Embedding), several classifiers, probabilistic methods (Factor Analysis, RBM), data pre-processing methods, and many others.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    UIMP(Unified Image Manipulation Program) is an OS independent Image Processing system, which provides over 1000 algorithms and supports web online, console and GUI program.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9

    ktree

    clustering, machine learning, algorithms

    This project has moved to github at http://lmwtree.devries.ninja.
    Downloads: 3 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 10
    A threaded Web graph (Power law random graph) generator written in Python. It can generate a synthetic Web graph of about one million nodes in a few minutes on a desktop machine. It implements a threaded variant of the RMAT algorithm.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11
    This is a Python script for Blender which uses short (quaternion-based, floretion-based) algorithms to draw curves in space. The user can create new shapes and curves by setting a variety of parameters.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    Digraph3

    Digraph3

    A collection of python3 modules for Algorithmic Decision Theory

    This collection of Python3 modules provides a large range of implemented decision aiding algorithms useful in the field of outranking digraphs based Multiple Criteria Decision Aid (MCDA), especially best choice, linear ranking and absolute or relative rating algorithms with multiple incommensurable criteria. Technical documentation and tutorials are available under the following link: https://digraph3.readthedocs.io/en/latest/ The tutorials introduce the main objects like digraphs, outranking digraphs and performance tableaux. There is also a tutorial provided on undirected graphs. Some tutorials are problem oriented and show how to compute the winner of an election, how to build a best choice recommendation, or how to linearly rank or rate with multiple incommensurable performance criteria. Other tutorials concern more specifically operational aspects of computing maximal independent sets (MISs) and kernels in graphs and digraphs.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    Open Metaheuristic (oMetah) is a library aimed at the conception and the rigourous testing of metaheuristics (i.e. genetic algorithms, simulated annealing, ...). The code design is separated in components : algorithms, problems and a test report generator
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    The optex module for Python 2.4 helps user scripts to parse command line arguments found in sys.argv. Options are parsed in a different manner than the Unix getopt() and Python getopt module.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    PI-Based Image Encoder / Converter

    PI-Based Image Encoder / Converter

    Python code able to convert / compress image to PI (3.14, π) Indexes

    Image processing tool that encodes pixel data as indices within the first 16.7 million digits of PI (π). Features high-performance Numba-accelerated search and a signature 'film-grain' aesthetic upon reconstruction. ZIP also include 16 MB file with 16,7 mil numbers of PI Benchmark(Single-Thread): Hardware & Environment Apple Silicon: Apple M2 (Mac mini/MacBook) x86_64 Platform: Intel Core Ultra 5 225F (Arrow Lake, 10 Cores) OS 1: Fedora 43 (GNOME) OS 2: Windows 11 Pro (23H2/24H2) Software: Python 3.14.3 + Numba JIT (latest) Results (Lower is better) Platform / OS CPU Time (Seconds) macOS (Native) Apple M2 52.151311 s (in default setup) Fedora Linux Intel Core Ultra 5 225F 58.536457 s (in default Power Management: Balanced) Windows 11 Intel Core Ultra 5 225F 59.681427 s (important! Power Management set as High Performance .. in Balanced is slow)
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Sorting-Visualizer

    Sorting-Visualizer

    A GUI sorting visualizer desktop application

    A GUI sorting visualizer desktop application that helps to visualize various sorting algorithms interactively. Visualizer the sorting algorithms like Bubble sort, Insertion sort, Selection sort, Gnome sort, Shaker sort and Odd even sort. Change the bar color and background by customizing. Increase or decrease speed of animation to visualize the sorting process. Download now!
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    AStro inFER - a rule miner and executer
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    3D Box rotation

    3D Box rotation

    Simple example of draw and rotate 3D box

    Simple source .java file; .bat for fast re-compile and run; and pre-compiled .jar Java program with example from scratch writed in Notepad++ without Eclipse, etc., How to draw and rotate 3D box most simple way. Rotation speed regulated in simple Loop with 10 ms sleep. Use Java version 8 (OpenJDK 8, OracleJDK 8, OracleJRE 8, ..). Higher versions have an anti-aliasing error in the BufferedImage ( Windows 10 ). Python version with tkinter and math imports. Including calculated faces, moving lights and shadows only with CPU.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Based on the introduction of Genetic Algorithms in the excellent book "Collective Intelligence" I have put together some python classes to extend the original concepts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    The Automatic Model Optimization Reference Implementation, AMORI, is a framework that integrates the modelling and the optimization processes by providing a plug-in interface for both. A genetic algorithm and Markov simulations are currently implemented.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Active Learning

    Active Learning

    Framework and examples for active learning with machine learning model

    Active Learning is a Python-based research framework developed by Google for experimenting with and benchmarking various active learning algorithms. It provides modular tools for running reproducible experiments across different datasets, sampling strategies, and machine learning models. The system allows researchers to study how models can improve labeling efficiency by selectively querying the most informative data points rather than relying on uniformly sampled training sets. The main experiment runner (run_experiment.py) supports a wide range of configurations, including batch sizes, dataset subsets, model selection, and data preprocessing options. It includes several established active learning strategies such as uncertainty sampling, k-center greedy selection, and bandit-based methods, while also allowing for custom algorithm implementations. The framework integrates with both classical machine learning models (SVM, logistic regression) and neural networks.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    All RL Algorithms from Scratch

    All RL Algorithms from Scratch

    Implementation of all RL algorithms in a simpler way

    All RL Algorithms from Scratch is an educational reinforcement learning repository built around readable Python and Jupyter Notebook implementations. Its goal is to help learners understand how major reinforcement learning algorithms work under the hood instead of hiding the logic behind large frameworks. The project includes notebooks for value-based methods, policy-gradient methods, actor-critic algorithms, model-based learning, multi-agent reinforcement learning, planning, and hierarchical approaches. Implemented topics include Q-learning, SARSA, Expected SARSA, Dyna-Q, REINFORCE, PPO, A2C, A3C, DDPG, SAC, TRPO, DQN, MADDPG, QMIX, HAC, MCTS, and PlaNet. The code prioritizes clarity, experimentation, and mathematical intuition over production speed. A companion cheat sheet gives learners a quick reference for formulas, pseudocode, and key concepts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    AsyncSocket is a python module used for asynchronous socket connections that supports connection and read/write timeouts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Baselines

    Baselines

    High-quality implementations of reinforcement learning algorithms

    Unlike the other two, openai/baselines is not currently a maintained or prominent repo in the OpenAI organization (and I found no strong reference in OpenAI’s main GitHub). Historically, “baselines” repositories are often used for baseline implementations of reinforcement learning algorithms or reference models (e.g. in the RL domain). If there was an OpenAI “baselines” repo, it might have contained reference implementations for reinforcement learning or model policy baselines to compare new work against. However, I couldn’t locate an active “openai/baselines” in the latest OpenAI repos, so it may have been archived, removed, or merged into other projects. If you meant a different “baselines” (e.g. OpenAI Baselines for reinforcement learning), I can look up that specific one.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Belkerda

    Belkerda

    a customizable number-guessing system

    Belkerda is a simple Python AI program that takes a user's input, builds a log of random numbers, picks a random entry, and displays it. If it is correct, then it reenters that number back into the log several times, overwriting the original, random numbers. If it is not, however, it overwrites a lower amount of entries.
    Downloads: 0 This Week
    Last Update:
    See Project