CSCA 5002: Intelligent Agents and Search Algorithms
Preview this course in the non-credit experience today!
Start working toward program admission and requirements right away. Work you complete in the non-credit experience will transfer to the for-credit experience when you upgrade and pay tuition. See How It Works for details.
- Course Type: Breadth (MS-AI) Elective (MS-CS)
- Specialization: Introduction to Artificial Intelligence/Algorithmic Foundations of AI
- Instructor: Dr. Rhonda Hoenigman
- Prior knowledge needed:
- Programming languages: Basic experience with Python
- Technical requirments: Windows or Mac, Linux, VS Code
Learning Outcomes
- Identify the qualities of rational agents, including rational decision making, performance measures, and agent design for different types of environments (e.g., deterministic vs. stochastic, episodic vs. Sequential).
- Analyze search strategies (e.g., breadth-first, depth-first) using standard measures of algorithm performance - completeness, optimality, time, and space complexity.
- Formulate heuristics for informed search algorithms.
- Implement search algorithms(e.g., A*, greedy best-first search) to solve pathfinding orother common search problems.
- Evaluate adversarial search algorithms in game trees, including pruning algorithms to improve search performance.
Course Grading Policy
| Assessment | Percentage of Grade | AI Usage Policy |
|---|---|---|
| Programming Assignment 1 | 19 | Conditional |
| Programming Assignment 2 | 19 | Conditional |
| Chat GPT Activity | 20 | Conditional |
| Quizzes | 10 | Conditional |
| Final Exam | 30 | Conditional |
Course Content
Duration: 3 hours, 16 minutes
Module 1 introduces the core concepts that form the foundation of intelligent systems in artificial intelligence. You will explore the historical development of AI and how early problem-solving approaches led to the development of intelligent agents and search-based reasoning. The module focuses on understanding rational agents, the environments in which they operate, and the different types of agents used to make decisions and solve problems. Through examples and activities, you will begin connecting these foundational ideas to how AI systems search, reason, and act in real-world environments.
Duration: 2 hours, 41 minutes
In this module, you will explore how complex problems can be represented and solved through search. You will learn how to define a search problem by identifying states, actions, goals, and costs, and examine how these components guide an algorithm’s ability to find solutions. Through toy examples and hands-on practice, you will see how problems are structured so that search algorithms can navigate possible paths toward a goal. You will also compare common uninformed search strategies—including breadth-first search (BFS), depth-first search (DFS), and uniform-cost search—to understand how different approaches affect efficiency and performance.
Duration: 3 hours, 27 minutes
In this module, you will explore informed search methods that improve problem-solving efficiency by guiding algorithms with heuristics. You will examine how objective functions help algorithms prioritize promising paths and learn how strategies such as greedy best-first search and A* search use heuristic information to find solutions more efficiently. You will also investigate conditions for optimality in A*, explore variations such as IDA* and weighted A*, and implement A* in a practical activity.You will also analyze how heuristic quality influences algorithm performance, including runtime complexity and branching behavior. By studying approaches for developing heuristics—such as relaxed problems, sub-problems, and experience-based learning—you will gain insight into how well-designed heuristics can dramatically improve search performance in complex problem spaces.
Duration: 2 hours, 41 minutes
In this module, you will explore search problems where the objective is to find an optimal state rather than a sequence of actions. Using the classic 8-queens problem, you will examine how local search algorithms such as hill climbing navigate solution spaces and learn key concepts including local and global optima. You will also study strategies that improve local search performance, such as random restarts, sideways moves, and allowing downhill steps to escape local optima. The module introduces broader optimization approaches including simulated annealing, genetic algorithms, beam search, and tabu search, along with nature-inspired algorithms like particle swarm optimization and ant colony optimization, helping you understand how these methods are applied to solve complex real-world optimization problems.
Duration: 1 hour
In this module, you will explore how artificial intelligence approaches decision-making in competitive environments through game playing. You will examine the structure of games commonly studied in AI, focusing on two-player, turn-taking games with complete information. The module introduces the minimax algorithm as a method for evaluating possible game outcomes and selecting optimal moves, and explains how alpha-beta pruning improves efficiency by reducing the number of game states that must be evaluated. You will also explore the historical foundations of AI game playing, including early work on computer chess, and review examples of games where AI techniques are applied today.
Duration: 1 hour, 12 minutes
Final Exam Format: Timed, in-course multiple choice exam, not proctored
This module contains materials for the proctored final exam/project. If you've upgraded to the for-credit version of this course, please make sure you review the additional for-credit materials in the Introductory module and anywhere else they may be found.
Notes
- Cross-listed Courses: Courses that are offered under two or more programs. Considered equivalent when evaluating progress toward degree requirements. You may not earn credit for more than one version of a cross-listed course.
- Page Updates: This page is periodically updated. Course information on the Coursera platform supersedes the information on this page. Click the View on Coursera button above for the most up-to-date information.