Search Resources

Codecademy https://www.codecademy.com/about has a list of AI search algorithms.

University of California Berkeley, CS 188 Intro to AI course had useful slides on search, https://inst.eecs.berkeley.edu/~cs188/sp20/

  • Depth-first search (DFS)
  • Breadth-first search (BFS)
  • Iterative deepening search

References

Vincent Conitzer and Aditi Raghunathan. 2023. 15-281 Artificial Intelligence: Representation and Problem Solving Course. Carnegie Mellon University, School of Computer Science.

Andrew Joseph Davies. 2022. Breadth-First Search, Depth-First Search, Dijakras and A* Pathfinding Algorithms in Python. Codex. Medium. https://medium.com/codex/python-project-idea-graph-traversal-and-pathfinding-algorithm-visualisations-99595c414293

Bryan Gibson, Ph.D., principal data scientist https://www.linkedin.com/in/bryanrgibson/, former instructor at University of Wisconsin-Madison https://pages.cs.wisc.edu/~bgibson/

Mussmann, Steve, and Abi See. n.d. Graph Search Algorithms. https://cs.stanford.edu/people/abisee/gs.pdf.

frontier data structure is a priority queue

  • Uniform cost search
    • Select node n with the lowest cost g(n), summ of the costs of the edges in the path from source to n
  • Best-first search
    • Greedy search (or best-first search)
      • Select node n with the lowest estimated cost from n to the goal, h(n)
    • A* search
      • Select node the lowest-cost node n that has the lowest estimated cost from n to the goal, f(n) = g(n) + h(n)

References

Vincent Conitzer and Aditi Raghunathan. 2023. 15-281 Artificial Intelligence: Representation and Problem Solving Course. Carnegie Mellon University, School of Computer Science.

Anthony Rhodes, senior research scientist (https://www.linkedin.com/in/anthonydrhodes/)

Mussmann, Steve, and Abi See. n.d. Graph Search Algorithms. https://cs.stanford.edu/people/abisee/gs.pdf.

Great Learning Team. 2022. Best First Search Algorithm in AI | Concept, Implementation, Advantages, Disadvantages. Great Learning Blog. Great Learning Educational Services Private. Limited. https://www.mygreatlearning.com/blog/best-first-search-bfs/

Search Example

See search example and use it to trace uninformed and informed search algorithms.

  • Hill climbing
  • Random walk
  • Simulated annealing

References

Harvard University. 2023. CS50 Intro to AI - Lecture 3 Local Search. https://cs50.harvard.edu/ai/2023/notes/3/

Vincent Conitzer and Aditi Raghunathan. 2023. 15-281 Artificial Intelligence: Representation and Problem Solving Course. Carnegie Mellon University, School of Computer Science.

Anthony Rhodes, senior research scientist (https://www.linkedin.com/in/anthonydrhodes/)

  • Mini-max
  • Alpha-pruning
  • Monte Carlo tree search

References

Mayefsky, Eric, Francine Anene, and Marina Sirota. 2003. Strategies and Tactics for Intelligent Search: MiniMax and Alpha-Beta Pruning.

https://cs.stanford.edu/people/eroberts/courses/soco/projects/2003-04/intelligent-search/minimax.html

https://cs.stanford.edu/people/eroberts/courses/soco/projects/2003-04/intelligent-search/alphabeta.html

Philip Muens. 2021. Minimax and Monte Carlo Tree Search. https://philippmuens.com/minimax-and-mcts

Ben Mitchell. 2020. TCS drawbacks. CS63 Artificial Intelligence, Swarthmore CollegeM https://www.cs.swarthmore.edu/~mitchell/classes/cs63/f20/reading/mcts.html

Keyon, Morgan. 2020. SharperDeve Blog. Coding a perfect Tic-Tac-Toe Bot. https://thesharperdev.com/coding-the-perfect-tic-tac-toe-bot/

Cruz, Clederson. 2019. Tic-Tac-Tow mini–max. GitHub. https://github.com/Cledersonbc/tic-tac-toe-minimax/tree/master

Stochastic Gradient Descent

Mirko Stojiljković. 2021. Stochastic Gradient Descent Algorithm With Python and NumPy. Real Python. https://realpython.com/gradient-descent-algorithm-python/

Other Optimization Algorithms: Dynamic Programming

MIT Courseware. 2011. Lecture 19: Dynamic Programming: Fibonacci and Shortest Path. Instructor: Erik Demaine. https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/resources/lecture-19-dynamic-programming-i-fibonacci-shortest-paths/.