We may earn an affiliate commission when you visit our partners.
Udacity logo

Classical Search

Sebastian Thrun, Thad Starner, and Peter Norvig
Learn classical graph search algorithms--including uninformed search techniques like breadth-first and depth-first search and informed search with heuristics including A*. These algorithms are at the heart of many classical AI techniques, and have been used...
Read more
Learn classical graph search algorithms--including uninformed search techniques like breadth-first and depth-first search and informed search with heuristics including A*. These algorithms are at the heart of many classical AI techniques, and have been used for planning, optimization, problem solving, and more. Complete the lesson by teaching PacMan to search with these techniques to solve increasingly complex domains.

What's inside

Syllabus

Peter Norvig, co-author of _Artificial Intelligence: A Modern Approach_, explains a framework for search problems, and introduces uninformed & informed search strategies to solve them.
Read more
Peter introduces uninformed search strategies—which can only solve problems by generating successor states and distinguishing between goal and non-goal states.
Peter introduces informed search strategies, which means that they use problem-specific knowledge to find solutions more efficiently than an uninformed search.
Complete a practice exercise where you'll implement informed and uninformed search strategies for the game PacMan.
References to additional readings on search.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches classical graph search algorithms, which are at the heart of many classical AI techniques and have been used for planning, optimization, problem solving, and more
Taught by Peter Norvig, co-author of _Artificial Intelligence: A Modern Approach_, Thad Starner, and Sebastian Thrun, who are recognized for their work in the topic that the course teaches
Includes hands-on practice exercises where learners will implement informed and uninformed search strategies for the game PacMan
Takes a creative approach to an otherwise established topic, field, or subject by teaching classical graph search algorithms through the lens of a game
Explicitly requires that learners come in with extensive background knowledge first

Save this course

Save Classical Search to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Classical Search. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Classical Search will develop knowledge and skills that may be useful to these careers:
AI Researcher
AI Researchers develop new and innovative AI techniques and algorithms. They work in a variety of settings, including academia, industry, and government. AI Researchers typically have a PhD degree in computer science or a related field. This course may be helpful for aspiring AI Researchers, as it will help them learn basic search algorithms and how to use them to develop more powerful and efficient AI systems.
Machine Learning Engineer
Machine Learning Engineers develop and implement machine learning models. They work in a variety of industries, including finance, healthcare, and retail. Machine Learning Engineers typically have a bachelor's or master's degree in computer science or a related field. This course may be helpful for aspiring Machine Learning Engineers, as it will help them learn basic search algorithms and how to use them to develop more accurate and efficient machine learning models.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical techniques to solve problems in the financial industry. They work with a team of traders and portfolio managers to develop investment strategies. Quantitative Analysts typically have a bachelor's or master's degree in mathematics, statistics, or a related field. This course may be helpful for aspiring Quantitative Analysts, as it will help them learn basic search algorithms and how to use them to develop more accurate and efficient trading strategies.
Computer Scientist
Computer Scientists design, develop, and analyze computer systems. They work in a variety of industries, including finance, healthcare, and retail. Computer Scientists typically have a bachelor's or master's degree in computer science or a related field. This course may be helpful for aspiring Computer Scientists, as it will help them learn basic search algorithms and how to use them to create more efficient and effective computer systems.
Game Programmer
Game Programmers design and develop video games. They work with a team of artists, designers, and engineers to create games that are fun and engaging. Game Programmers typically have a bachelor's degree in computer science or a related field. This course may be helpful for aspiring Game Programmers, as it will help them learn basic search algorithms and how to use them to create more complex and challenging games.
Data Analyst
Data Analysts use data to identify trends and patterns. They work in a variety of industries, including finance, healthcare, and retail. Data Analysts typically have a bachelor's degree in statistics, computer science, or a related field. This course may be helpful for aspiring Data Analysts, as it will help them learn basic search algorithms and how to use them to identify trends and patterns in data.
Software Engineer
Software Engineers design, develop, and maintain software applications. They work in a variety of industries, including finance, healthcare, and retail. Software Engineers typically have a bachelor's degree in computer science or a related field. This course may be helpful for aspiring Software Engineers, as it will help them learn basic search algorithms and how to use them to create more efficient and effective software.
Web Developer
Web Developers design and develop websites. They work with a team of designers and engineers to create websites that are visually appealing, functional, and easy to use. Web Developers typically have a bachelor's degree in computer science or a related field. This course may be helpful for aspiring Web Developers, as it will help them learn basic search algorithms and how to use them to create more efficient and effective websites.
Data Scientist
Data Scientists use data to solve problems and make decisions. They work in a variety of industries, including finance, healthcare, and retail. Data Scientists typically have a master's or PhD degree in a field such as statistics, computer science, or operations research. This course may be helpful for aspiring Data Scientists, as it will help them learn basic search algorithms and how to use them to solve real-world problems.
Robotics Engineer
Robotics Engineers design and develop robots. They work with a team of engineers and scientists to create robots that can perform a variety of tasks, such as manufacturing, healthcare, and space exploration. Robotics Engineers typically have a bachelor's or master's degree in robotics, mechanical engineering, or a related field. This course may be helpful for aspiring Robotics Engineers, as it will help them learn basic search algorithms and how to use them to create more intelligent and autonomous robots.
Software Development Manager
Software Development Managers oversee the development of software applications. They work with a team of engineers to plan, design, and implement software systems. Software Development Managers typically have a bachelor's or master's degree in computer science or a related field. This course may be helpful for aspiring Software Development Managers, as it will help them learn basic search algorithms and how to use them to create more efficient and effective software development processes.
Systems Engineer
Systems Engineers design and develop complex systems. They work with a team of engineers and scientists to create systems that meet the needs of their customers. Systems Engineers typically have a bachelor's or master's degree in systems engineering or a related field. This course may be helpful for aspiring Systems Engineers, as it will help them learn basic search algorithms and how to use them to create more reliable and efficient systems.
Operations Research Analyst
Operations Research Analysts use mathematical and analytical techniques to solve problems in a variety of industries, including manufacturing, transportation, and healthcare. Operations Research Analysts typically have a master's or PhD degree in operations research, industrial engineering, or a related field. This course may be helpful for aspiring Operations Research Analysts, as it will help them learn basic search algorithms and how to use them to solve complex problems.
Product Manager
Product Managers develop and manage products. They work with a team of engineers, designers, and marketers to create products that meet the needs of their customers. Product Managers typically have a bachelor's or master's degree in business administration or a related field. This course may be helpful for aspiring Product Managers, as it will help them learn basic search algorithms and how to use them to identify and develop new products.
AI Engineer
An AI Engineer designs and develops artificial intelligence systems. These systems can be used for a variety of tasks, including automating tasks, improving decision-making, and even creating new products and services. While a bachelor's degree in computer science or a related field is a common requirement, some AI Engineer roles may also seek candidates with master's or PhD degrees. This course may be helpful for aspiring AI Engineers, as it will help them gain a foundational understanding of search algorithms and AI techniques.

Reading list

We've selected 11 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Classical Search.
Provides a comprehensive overview of search engine technology, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about how search engines work.
Provides a comprehensive overview of the foundations of artificial intelligence, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about the theoretical foundations of AI.
Provides a comprehensive introduction to artificial intelligence, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about AI.
Provides a comprehensive introduction to machine learning, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive introduction to data mining, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive introduction to information retrieval, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive overview of automated planning, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive overview of constraint satisfaction problems and constraint programming, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive overview of graph algorithms, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive overview of combinatorial optimization, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.
Provides a comprehensive overview of algorithms and theory of computation, including a discussion of search algorithms. It valuable resource for anyone interested in learning more about this topic.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Classical Search.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser