Step 4
Artificial Intelligence
Computers solving problems by searching, reasoning and trying. Search, games, constraints and nature-inspired optimization algorithms live here.
Know these firstAlgorithms
- Search and A*
- Games and minimax
- Constraint satisfaction
- Logic and knowledge representation
- Probability and Bayes
- Genetic algorithms
- Swarm intelligence
Why it matters
Today "AI" usually means large language models, but the foundations of the field are in this course: describing a problem as states and moves and searching for the best solution. Routes in navigation, moves in chess, timetables and delivery routes are all solved with these ideas. It is also the prerequisite for machine learning.
What to know
- Framing a problem as search: states, actions, goal and cost.
- Uninformed search (BFS, DFS) and heuristic search (greedy, A*); why a good heuristic helps.
- Two-player games: minimax and alpha-beta pruning.
- Constraint satisfaction problems: backtracking and constraint propagation.
- Propositional and first-order logic for knowledge representation.
- Reasoning under uncertainty: probability, Bayes' rule, naive Bayes.
- Heuristic optimization: hill climbing, simulated annealing, genetic algorithms.
- Swarm intelligence: ant colony (ACO), particle swarm (PSO), artificial bee colony (ABC) and grey wolf optimization (GWO). The artificial bee colony algorithm was developed in Türkiye by Derviş Karaboğa at Erciyes University.
Practice and projects
- Write BFS and A* for a maze or the 8-puzzle and compare how many nodes each expands.
- Write an unbeatable tic-tac-toe or Connect Four player with minimax.
- Solve the travelling salesman problem with both a genetic algorithm and ant colony optimization; compare results and run times on a chart.
Common mistakes
- Judging a heuristic algorithm by a single run; there is randomness, so try several seeds and look at the average.
- Using an A* heuristic that overestimates the real cost and missing the best solution.
- Treating every problem as an AI problem; sometimes a plain algorithm is faster and exact.