Skip to main content

Theoretically optimal learning via algorithmic information theory and Solomonoff induction

Project description

💰 Support This Research - Please Donate!

🙏 If this library helps your research or project, please consider donating to support continued development:

💳 DONATE VIA PAYPAL - CLICK HERE

CI PyPI version Python 3.9+ License


Universal Learning

🧠 AIXI theoretical framework

Hutter, M. (2005) - "Universal Artificial Intelligence"

📦 Installation

pip install universal-learning

🚀 Quick Start

import universal_learning
import numpy as np

# Create universal learner
learner = universal_learning.UniversalLearner(
    alphabet_size=2,
    max_program_length=100
)

# Simple binary sequence learning
sequence = [0, 1, 0, 1, 0, 1]  # Alternating pattern

# Learn from sequence
learner.observe_sequence(sequence)

# Predict next symbols
prediction = learner.predict_next(sequence[-3:])
print(f"✅ Predicted next symbol: {prediction.symbol}")
print(f"✅ Confidence: {prediction.probability:.4f}")

# Use Solomonoff induction directly
inductor = universal_learning.SolomonoffInductor()
inductor.update(sequence)
next_prob = inductor.predict_next()
print(f"✅ Solomonoff prediction probabilities: {next_prob}")

🎓 About the Implementation

Implemented by Benedict Chen - bringing foundational AI research to modern Python.

📧 Contact: benedict@benedictchen.com

📖 Citation

If you use this implementation in your research, please cite the original paper:

Hutter, M. (2005) - "Universal Artificial Intelligence"

📜 License

Custom Non-Commercial License with Donation Requirements - See LICENSE file for details.


💰 Support This Work - Donation Appreciated!

This implementation represents hundreds of hours of research and development. If you find it valuable, please consider donating:

💳 DONATE VIA PAYPAL - CLICK HERE

Your support helps maintain and expand these research implementations! 🙏

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

universal_learning-1.1.0.tar.gz (51.3 kB view details)

Uploaded Source

Built Distribution

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

universal_learning-1.1.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file universal_learning-1.1.0.tar.gz.

File metadata

  • Download URL: universal_learning-1.1.0.tar.gz
  • Upload date:
  • Size: 51.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3+

File hashes

Hashes for universal_learning-1.1.0.tar.gz
Algorithm Hash digest
SHA256 087d3d0ca82a082347ea7bddb8cc6f8214868445a96b4ca34497a79f1a4baca9
MD5 86ec6dda74c4f7296a5b0c5b5c01f0c8
BLAKE2b-256 4a23d29b222c4b78e134771b604a70f62b49aa55498066451818ccd10d78f745

See more details on using hashes here.

File details

Details for the file universal_learning-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for universal_learning-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b70cb860599777c89279d991d8998bcc69357ef20a25ba8e9688402ebf19e43
MD5 66d4ee7dfccbbc4fd14079fe74b5a737
BLAKE2b-256 49c84763f437a945f06caed1d13a9eb26d1e3bb248c9b4644861fc3f01bd4922

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