Simpleai

simple artificial intelligence utilities
Alternatives To Simpleai
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Recommenders15,3272a day ago11April 01, 2022156mitPython
Best Practices on Recommendation Systems
Imageai7,576124a month ago9January 05, 2021297mitPython
A python library built to empower developers to build applications and systems with self-contained Computer Vision capabilities
Ailab7,171
4 months ago75mitC#
Experience, Learn and Code the latest breakthrough innovations with Microsoft AI
Machine Learning Course6,654
3 years agon,ullPython
:speech_balloon: Machine Learning Course with Python:
Awful Ai6,525
2 months ago18
😈Awful AI is a curated list to track current scary usages of AI - hoping to raise awareness
Ai Learn5,131
9 months ago19
人工智能学习路线图,整理近200个实战案例与项目,免费提供配套教材,零基础入门,就业实战!包括:Python,数学,机器学习,数据分析,深度学习,计算机视觉,自然语言处理,PyTorch tensorflow machine-learning,deep-learning data-analysis data-mining mathematics data-science artificial-intelligence python tensorflow tensorflow2 caffe keras pytorch algorithm numpy pandas matplotlib seaborn nlp cv等热门领域
Algowiki4,059
3 months ago37mitCSS
Repository which contains links and resources on different topics of Computer Science.
Ai Job Notes3,861
a month ago2
AI算法岗求职攻略(涵盖准备攻略、刷题指南、内推和AI公司清单等资料)
Scikit Opt3,82033a month ago23January 14, 202253mitPython
Genetic Algorithm, Particle Swarm Optimization, Simulated Annealing, Ant Colony Optimization Algorithm,Immune Algorithm, Artificial Fish Swarm Algorithm, Differential Evolution and TSP(Traveling salesman)
Awesome Quantum Machine Learning2,206
18 days ago8cc0-1.0HTML
Here you can get all the Quantum Machine learning Basics, Algorithms ,Study Materials ,Projects and the descriptions of the projects around the web
Alternatives To Simpleai
Select To Compare


Alternative Project Comparisons
Readme

Simple AI

Project home: simpleai-team/simpleai

This lib implements many of the artificial intelligence algorithms described on the book "Artificial Intelligence, a Modern Approach", from Stuart Russel and Peter Norvig. We strongly recommend you to read the book, or at least the introductory chapters and the ones related to the components you want to use, because we won't explain the algorithms here.

This implementation takes some of the ideas from the Norvig's implementation (the aima-python lib), but it's made with a more "pythonic" approach, and more emphasis on creating a stable, modern, and maintainable version. We are testing the majority of the lib, it's available via pip install, has a standard repo and lib architecture, well documented, respects the python pep8 guidelines, provides only working code (no placeholders for future things), etc. Even the internal code is written with readability in mind, not only the external API.

At this moment, the implementation includes:

  • Search
    • Traditional search algorithms (not informed and informed)
    • Local Search algorithms
    • Constraint Satisfaction Problems algorithms
    • Interactive execution viewers for search algorithms (web-based and terminal-based)
  • Machine Learning
    • Statistical Classification

Installation

Just get it:

pip install simpleai

And if you want to use the interactive search viewers, also install:

pip install pydot flask

You will need to have pip installed on your system. On linux install the python-pip package, on windows follow this. Also, if you are on linux and not working with a virtualenv, remember to use sudo for both commands (sudo pip install ...).

Examples

Simple AI allows you to define problems and look for the solution with different strategies. Another samples are in the samples directory, but here is an easy one.

This problem tries to create the string "HELLO WORLD" using the A* algorithm:

from simpleai.search import SearchProblem, astar

GOAL = 'HELLO WORLD'


class HelloProblem(SearchProblem):
    def actions(self, state):
        if len(state) < len(GOAL):
            return list(' ABCDEFGHIJKLMNOPQRSTUVWXYZ')
        else:
            return []

    def result(self, state, action):
        return state + action

    def is_goal(self, state):
        return state == GOAL

    def heuristic(self, state):
        # how far are we from the goal?
        wrong = sum([1 if state[i] != GOAL[i] else 0
                    for i in range(len(state))])
        missing = len(GOAL) - len(state)
        return wrong + missing

problem = HelloProblem(initial_state='')
result = astar(problem)

print(result.state)
print(result.path())

More detailed documentation

You can read the docs online here. Or for offline access, you can clone the project code repository and read them from the docs folder.

Help and discussion

Join us at the Simple AI google group.

Authors

  • Many people you can find on the contributors section.
  • Special acknowledgements to Machinalis for the time provided to work on this project. Machinalis also works on some other very interesting projects, like Quepy and more.
Popular Artificial Intelligence Projects
Popular Algorithms Projects
Popular Artificial Intelligence Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Python
Algorithms
Search
Artificial Intelligence