forked from skytreader/CleverAlgorithms-Python
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Jason Brownlee
authored and
Jason Brownlee
committed
Jan 15, 2010
1 parent
04c8dbe
commit b94b5f2
Showing
3 changed files
with
27 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,28 +2,29 @@ h1. Clever Algorithms | |
|
||
h2. Overview | ||
|
||
The Clever Algorithms project is an effort to describe a large number of algorithmic techniques from the the fields of Biologically Inspired Computation and Computational Intelligence in a complete, consistent, and centralized manner such that they are accessible, usable, and understandable. | ||
The Clever Algorithms project is an effort to describe a large number of algorithmic techniques from the the field of Artificial Intelligence in a complete, consistent, and centralized manner such that they are accessible, usable, and understandable. | ||
|
||
The Clever Algorithms project is currently hosted online at "http://www.CleverAlgorithms.com":http://www.CleverAlgorithms.com | ||
|
||
This is a repository for the Clever Algorithms project for hosting, versioning and collaboration, used during the development of the content for deliverables (website and book), as well as for the ongoing maintenance of the outcomes of the project. | ||
This is a repository for the Clever Algorithms project for hosting, versioning, and collaboration, used during the development of the content for deliverables (website and book), as well as for the ongoing maintenance of the outcomes from the project. | ||
|
||
h2. Outcomes | ||
|
||
A listing of outcomes from the project. | ||
|
||
h3. Book Manuscripts | ||
|
||
* Milestone 01: Draft book structure including title, parts, chapters, sections, and subsections. ( "done":http://github.com/jbrownlee/CleverAlgorithms/raw/master/book/milestones/milestone01-20100113.pdf ) | ||
* Milestone 02: Draft preface and background chapters. (_in progress_) | ||
* Milestone 03: Draft 10 algorithm descriptions. (_next_) | ||
* Milestone 04: Draft 20 algorithm descriptions. (_future_) | ||
* Milestone 05: Draft 30 algorithm descriptions. | ||
* Milestone 06: Draft 40 algorithm descriptions. | ||
* Milestone 07: Draft 50 algorithm descriptions. | ||
* Milestone 08: Draft extension chapters. | ||
* Milestone 09: Edit the first complete draft. | ||
* Milestone 10: Send out complete draft for third-party editing & review. | ||
* Content Development | ||
** Milestone 01: Draft book structure including title, parts, chapters, sections, and subsections. ( "done":http://github.com/jbrownlee/CleverAlgorithms/raw/master/book/milestones/milestone01-20100113.pdf ) | ||
** Milestone 02: Draft preface and background chapters. (_in progress_) | ||
** Milestone 03: Draft 10 algorithm descriptions. (_next_) | ||
** Milestone 04: Draft 20 algorithm descriptions. (_future_) | ||
** Milestone 05: Draft 30 algorithm descriptions. | ||
** Milestone 06: Draft 40 algorithm descriptions. | ||
** Milestone 07: Draft 50 algorithm descriptions. | ||
** Milestone 08: Draft extension chapters. | ||
** Milestone 09: Edit the first complete draft. | ||
** Milestone 10: Send out complete draft for third-party editing & review. | ||
* ... | ||
|
||
h3. Technical Reports | ||
|
@@ -51,25 +52,13 @@ This project is partitioned into five efforts: | |
|
||
h2. How to Contribute | ||
|
||
Found a bug in the sample code or a typo in the content? Want to suggest an algorithm to include? Want to contribute a description of an algorithm or background content for the book? | ||
Have you found a type in some copy? Don't agree with some statements in the content? Found a bug in the sample source code? Want to suggest an algorithm to include? Want to contribute a description of an algorithm or background content for the book? | ||
|
||
You may want to: | ||
* Email the author: "[email protected]":mailto:[email protected] | ||
* or, Message the author though the github website: (signup and login to github, go to "http://github.com/jbrownlee":http://github.com/jbrownlee and click "Message") | ||
* or, Fork the CleverAlgorithms project on github, make changes, and request a pull into the main project (again, you must signup and login to github and follow the github documentation for forking, contributing, and making a pull request). | ||
|
||
h2. History | ||
|
||
A summary of how the project has developed over its lifetime. | ||
|
||
* January 2010: An assessment of the project to-date (previous 2 years) and the development of a plan to ensure the continued capture of ad hoc effort contributions. Project renamed to "CleverAlgorithms.com":http://www.cleveralgorithms.com and moved into a public repository under a distributed version control system. The renewed project facilitates contributions under a facade that includes content development, book preparation, source code, and webpage. A methodology of discrete formal knowledge capture was promoted for content development in the form of small, formal, and independent technical reports (2-4 man days) on topics and algorithms that may be related to the book or incorporated into the book structure. | ||
* August 2009: The development of a some-what systematic methodology for selecting the algorithms to include in the book. A study was performed and presented entitled: "What is a good optimization algorithm? A data-driven method for algorithm selection":http://www.neverreadpassively.com/2009/08/what-is-good-optimization-algorithm.html that proposed the top 10 most popular algorithms in the fields of evolutionary computation, swarm intelligence, probabilistic algorithms, stochastic algorithms, and overall. | ||
* July 2009: A return to the book format, and a consolidation of all previous effort into a single book structure. The mixture of styles of the formal algorithm presentation and tutorials provided a confusing organization. A second attempt as made in the same month, stripping all content and starting the project again with a blank book structure. | ||
* January-February 2009: A focus on the tutorial presentation of algorithms. A blog was created called "InspiredAlgorithms.com":http://www.inspiredalgorithms.com with the tag line "This project aims to be the largest set of explained and executable computational intelligence algorithms on the planet". A series of eight blog posts were created, that included the presentation of seven stochastic search algorithms in tutorial form. Sample source code was presented in the Ruby programming language. The blog was supported by a google code project for the standalone source code, and a google group to facilitate discussions about the presented algorithms. It was believed that the tutorial format would be more accessible and that the blog and supporting sites would provide the basis for building a community and ultimately revenue stream. | ||
* December 2008-January 2009: An updated perspective on the project toward a more practical presentation of the material with code examples in a tutorial format. A cookbook-like approach to algorithm presentation with both a standardized technical description and programatic implementation in the Ruby programming language that follows best practices. The formal presentation structure for algorithm presentation was updated to: inspiration, strategy, heuristics, further reading, and tutorial. A long list of potential algorithms was defined, and an aggressive schedule was described where 2-3 algorithm descriptions were to be produced per week with a an expected July project completion. A more elaborate book-like LaTex organization was prepared with explicit support for Ruby code examples. | ||
* December 2008: A jump in the project focus to code examples and practical tutorials. A series of 10 evolutionary algorithms were implemented in the Ruby programming language with basic algorithm overviews (inspiration, strategy, procedure, heuristic, tutorial) separate source code, and source code tutorials. This code focus provided a departure from the book structure and focus on formal algorithm presentation toward practical implementation-centric (recipes or cookbook style) presentation. | ||
* January 2008: Initial conceptualization of the project as an atlas of artificial intelligence algorithms, specifically computational intelligence algorithms presented in a consistent and structured manner. This initial effort proposed a one-page summary of each algorithm presented with the formal structure: metaphor, strategy, operations, heuristics, and more information. Algorithms were to be drawn from the fields: ant colony optimization, artificial immune systems, evolutionary computation, and swarm intelligence. Pseudo code for each algorithm was to be presented separately in an appendix. | ||
|
||
h2. License | ||
|
||
Copyright (C) 2008-2010 Jason Brownlee | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters