CleverAlgorithms
Clever Algorithms: Nature-Inspired Programming Recipes
Install / Use
/learn @Jason2Brownlee/CleverAlgorithmsREADME
h1. Clever Algorithms: Nature-Inspired Programming Recipes
!release/cover_3d.jpg!
"Read Online":https://cleveralgorithms.com/nature-inspired/index.html | "Amazon":https://amzn.to/4iKM9uc | "GoodReads":https://www.goodreads.com/book/show/10321060-clever-algorithms | "Google Books":https://www.google.com.au/books/edition/Clever_Algorithms/SESWXQphCUkC | "Download PDF":https://raw.githubusercontent.com/Jason2Brownlee/CleverAlgorithms/master/release/clever_algorithms.pdf ("code":https://raw.githubusercontent.com/Jason2Brownlee/CleverAlgorithms/master/release/clever_algorithms-src.zip)
h2. Overview
Clever Algorithms: Nature-Inspired Programming Recipes is an open source book that describes a large number of algorithmic techniques from the the fields of Biologically Inspired Computation, Computational Intelligence and Metaheuristics in a complete, consistent, and centralized manner such that they are accessible, usable, and understandable. This is a repository for the book project.
h3. Book Details
| Title | Clever Algorithms | | Subtitle | Nature-Inspired Programming Recipes | | Author | Jason Brownlee | | Publication Date | Revision 2. 16th June 2012 | | Publisher | Independently Published | | ISBN-13 (paperback) | 978-1446785065 | | Length (paperback) | 454 pages | | License | Creative Commons Attribution-Noncommercial-Share Alike 2.5 Australia License |
h3. Blurb
bq. Implementing an Artificial Intelligence algorithm is difficult. Algorithm descriptions may be incomplete, inconsistent, and distributed across a number of papers, chapters and even websites. This can result in varied interpretations of algorithms, undue attrition of algorithms, and ultimately bad science. This book is an effort to address these issues by providing a handbook of algorithmic recipes drawn from the fields of Metaheuristics, Biologically Inspired Computation and Computational Intelligence, described in a complete, consistent, and centralized manner. These standardized descriptions were carefully designed to be accessible, usable, and understandable. Most of the algorithms described were originally inspired by biological and natural systems, such as the adaptive capabilities of genetic evolution and the acquired immune system, and the foraging behaviors of birds, bees, ants and bacteria. An encyclopedic algorithm reference, this book is intended for research scientists, engineers, students, and interested amateurs. Each algorithm description provides a working code example in the Ruby Programming Language.
h3. Table of Contents
Background
Introduction
Algorithms
Stochastic Algorithms
Random Search
Adaptive Random Search
Stochastic Hill Climbing
Iterated Local Search
Guided Local Search
Variable Neighborhood Search
Greedy Randomized Adaptive Search
Scatter Search
Tabu Search
Reactive Tabu Search
Evolutionary Algorithms
Genetic Algorithm
Genetic Programming
Evolution Strategies
Differential Evolution
Evolutionary Programming
Grammatical Evolution
Gene Expression Programming
Learning Classifier System
Non-dominated Sorting Genetic Algorithm
Strength Pareto Evolutionary Algorithm
Physical Algorithms
Simulated Annealing
Extremal Optimization
Harmony Search
Cultural Algorithm
Memetic Algorithm
Probabilistic Algorithms
Population-Based Incremental Learning
Univariate Marginal Distribution Algorithm
Compact Genetic Algorithm
Bayesian Optimization Algorithm
Cross-Entropy Method
Swarm Algorithms
Particle Swarm Optimization
Ant System
Ant Colony System
Bees Algorithm
Bacterial Foraging Optimization Algorithm
Immune Algorithms
Clonal Selection Algorithm
Negative Selection Algorithm
Artificial Immune Recognition System
Immune Network Algorithm
Dendritic Cell Algorithm
Neural Algorithms
Perceptron
Back-propagation
Hopfield Network
Learning Vector Quantization
Self-Organizing Map
Extensions
Advanced Topics
Programming Paradigms
Devising New Algorithms
Testing Algorithms
Visualizing Algorithms
Problem Solving Strategies
Benchmarking Algorithms
Appendix A - Ruby: Quick-Start Guide
h2. Project
h3. How to Build
Assumes a POSIX workstation with LaTex installed.
<code>git clone https://github.com/Jason2Brownlee/CleverAlgorithms.git</code>
@cd CleverAlgorithms@
@make dist@
h2. License
(c) Copyright 2011-2024 Jason Brownlee. Some Rights Reserved. This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/au/">Creative Commons Attribution-Noncommercial-Share Alike 2.5 Australia License</a>. <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/au/"> <img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc-sa/2.5/au/88x31.png" /> </a>
