{"id":14977231,"url":"https://github.com/hchasestevens/monkeys","last_synced_at":"2025-08-20T23:32:35.308Z","repository":{"id":57443018,"uuid":"79379609","full_name":"hchasestevens/monkeys","owner":"hchasestevens","description":"A strongly-typed genetic programming framework for Python","archived":false,"fork":false,"pushed_at":"2018-06-13T00:22:02.000Z","size":181,"stargazers_count":122,"open_issues_count":4,"forks_count":14,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-12-05T09:27:52.305Z","etag":null,"topics":["ai","ant-colony-optimization","framework","genetic-programming","ipynb","metaprogramming","optimization","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hchasestevens.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-18T20:11:46.000Z","updated_at":"2024-11-15T22:56:49.000Z","dependencies_parsed_at":"2022-09-26T17:21:30.562Z","dependency_job_id":null,"html_url":"https://github.com/hchasestevens/monkeys","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hchasestevens%2Fmonkeys","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hchasestevens%2Fmonkeys/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hchasestevens%2Fmonkeys/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hchasestevens%2Fmonkeys/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hchasestevens","download_url":"https://codeload.github.com/hchasestevens/monkeys/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230471175,"owners_count":18231193,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ant-colony-optimization","framework","genetic-programming","ipynb","metaprogramming","optimization","python"],"created_at":"2024-09-24T13:55:19.732Z","updated_at":"2024-12-19T17:08:24.415Z","avatar_url":"https://github.com/hchasestevens.png","language":"Python","funding_links":[],"categories":["Genetic Programming"],"sub_categories":["Others","NLP"],"readme":"# monkeys\n[![PyPI version](https://badge.fury.io/py/monkeys.svg)](https://badge.fury.io/py/monkeys)\n\n\u003e \"If an army of monkeys were strumming on typewriters they might write all the books in the British Museum.\"\n\n`monkeys` is a framework designed to make genetic programming in Python accessible, quick, flexible, and fun.\n\n[**Get started here**](examples/notebooks/Getting%20started%20with%20monkeys.ipynb).\n\n\n## What is genetic programming?\n\nGenetic programming algorithms are a class of evolutionary algorithms in which solutions to a problem are represented as executable tree \nstructures - programs. In order to use genetic programming in order to solve a problem, two things must be specified:\n\n1. What form(s) a potential solution can take.\n\n2. A method of scoring solutions based on their meritoriousness.\n\nGiven these, a genetic programming system can perform intelligent exploration and search through the space of potential solutions, \nnarrowing in on those programs that best solve the problem as specified. Genetic programming has achieved human-competitive \nresults in a wide swath of domains, including:\n\n- Satellite [antenna design](https://ti.arc.nasa.gov/m/pub-archive/1244h/1244%20(Hornby).pdf) for NASA\n- The creation of novel [quantum computing algorithms](http://faculty.hampshire.edu/lspector/pubs/GP-quantum-GP98-with-cite.pdf)\n- Evolving [game AI](https://cs.gmu.edu/~sean/papers/robocupShort.pdf)\n- The [automatic repair](http://dijkstra.cs.virginia.edu/genprog/papers/weimer-icse2012-genprog-preprint.pdf) of buggy code.\n\n\n## monkeys to the rescue!\n\n\u003e \"Ford, there's an infinite number of monkeys outside who want to talk to us about this script for Hamlet they've worked out.\"\n\n`monkeys` makes getting started with genetic programming painless and fun. Install `monkeys` by running:\n\n```\npip install monkeys\n```\n\n`monkeys` uses a variant of genetic programming called \"strongly-typed genetic programming\" in order to allow you to quickly and easily\nspecify how your programs should be structured. \n\n`monkeys` supports Python 2.7 and 3.x.\n\n\n## Examples \n\n### Tutorials:\n- [**Getting started with monkeys**](examples/notebooks/Getting%20started%20with%20monkeys.ipynb): An introduction to the `monkeys` framework, which outlines the type system. \n- [**Monkeys in abstract syntax trees**](examples/notebooks/Monkeys%20in%20abstract%20syntax%20trees.ipynb): using `monkeys` to generate Python code directly.\n- [**Debugging with monkeys**](examples/notebooks/Debugging%20with%20monkeys.ipynb): A guide for discovering and diagnosing bugs in your codebase with `monkeys`.\n\n### Sample usages:\n- [**Linting by example**](examples/notebooks/Linting%20by%20example.ipynb): Generating linting rules by supplying positive/negative code examples.\n- [**Solving logic puzzles with monkeys**](examples/notebooks/Solving%20logic%20puzzles%20with%20monkeys.ipynb): Solving logic puzzles using the `monkeys` diagnostic tool.\n- More to come!\n\n\n## Contacts\n\n* Name: [H. Chase Stevens](http://www.chasestevens.com)\n* Twitter: [@hchasestevens](https://twitter.com/hchasestevens)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhchasestevens%2Fmonkeys","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhchasestevens%2Fmonkeys","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhchasestevens%2Fmonkeys/lists"}