FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

ronwade/aima-java at AIMA4e · GitHub

 
 

Repository files navigation

AIMA4e-Java (JDK 8+)

Java implementation of algorithms from Norvig And Russell's "Artificial Intelligence - A Modern Approach 4th Edition." You can use this in conjunction with a course on AI, or for study on your own. We're loooking for solid contributors to help.


NOTE: This is an in progress complete rewrite of the algorithms, leveraging JDK 8's new language features, from the AIMA3e branch (currently master branch). This will also become the new master branch once the 4th edition of "Artificial Intelligence - A Modern Approach" is published.


Index of Implemented Algorithms

Fig Page Name/Pseudocode (in book) Implementation(s)
2.1 35 Agent Agent
2.3 36 Table-Driven-Vacuum-Agent TableDrivenVacuumAgent
2.7 47 Table-Driven-Agent TableDrivenAgent
2.8 48 Reflex-Vacuum-Agent ReflexVacuumAgent
2.10 49 Simple-Reflex-Agent SimpleReflexAgent
2.12 51 Model-Based-Reflex-Agent ModelBasedReflexAgent
3 66 Problem Problem
3.1 67 Simple-Problem-Solving-Agent SimpleProblemSolvingAgent
3.2 68 Romania SimplifiedRoadMapOfPartOfRomania
3.7 77 Tree-Search TreeSearch
3.7 77 Graph-Search GraphSearch
3.10 79 Node Node
3.11 82 Breadth-First-Search BreadthFirstGraphSearch
BreadthFirstTreeSearch
3.14 84 Uniform-Cost-Search UniformCostGraphSearch
UniformCostTreeSearch
3 85 Depth-first Search DepthFirstGraphSearch
DepthFirstTreeSearch
3.17 88 Depth-Limited-Search DepthLimitedTreeSearch
3.18 89 Iterative-Deepening-Search IterativeDeepeningSearch
3 92 Best-First search BestFirstGraphSearch
BestFirstTreeSearch
3 92 Greedy best-First search GreedyBestFirstGraphSearch
GreedyBestFirstTreeSearch
3 93 A* Search AStarGraphSearch
AStarTreeSearch
3.26 99 Recursive-Best-First-Search RecursiveBestFirstSearch
4.2 122 Hill-Climbing HillClimbingSearch
4.5 126 Simulated-Annealing SimulatedAnnealingSearch

TODO (REMEMBER - KEEP IT SIMPLE SIMPLE SIMPLE!!!! :)

CURRENT (Rewrite of chapters 3 to 6)

Chp 3

  • GraphShortestPathPrioritySearch and TreeShortestPathPrioritySearch potentially need a better mechanism for determining state containment and removal of a node with a lower priority.
  • Recursive-Best-First-Search - look to improve/tidy up implementation.
  • Add a mechanism for gathering search metrics. Want to make more flexible and introduce less clutter into the core algorithms in order to support.

Chp 4

  • Follow up on Genetic Algorithm experiments on N-Queens problem (based on aima3e implementation) to determine if performs no better than random selection.

Chp 5

Chp 6

LATER

Chapter 4 'core' module.

  • Add tests for all implemented algorithms.

Chapter 3 'core' module.

  • Add tests for all implemented algorithms.

Chapter 2 'core' module.

  • Add tests for all implemented algorithms.

Chapter 2 'extra' module.

  • Environment definition: Consider specifying Dimensions in API, see pg. 42.
  • Environment Simulator referenced on pg. 45 (this will be a re-factor of a lot of the environment stuff in aima3e-core).

USEFUL RESOURCES

GUI

About

Java implementation of algorithms from Norvig And Russell's "Artificial Intelligence - A Modern Approach"

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages


Back | FazBrowse Home | New Git URL