Computer Science 470

Introduction to Artificial Intelligence

Fall 2010

<h3> Course Goals </h3>
At the end of this course, and for at least one year after, you should be able to:
<br><br>
<table border="3" summary="Goals for CS470">
<tr><td>
Recognize an AI problem, no matter the source of the problem
<ul>
<li> Medicine </li>
<li> Gaming</li>
<li> Robotics </li>
<li> Research, etc. </li>
</ul>
<tr><td> Identify the component elements of the problem:
<ul>
<li> Does it require basic control? </li>
<li> Does it involve uncertain reasoning? </li>
<li> Does it have a simple goal, sophisticated utility, or multiple attributes? </li>
<li> Does it require sequential choice/planning?</li>
<li> How many of decision makers are involved?</li>
</ul>
</td>
<tr> <td>Formalize the problem in a way that is amenable to a solution.
<ul>
<li> Representation or reaction </li>
<li> PEAS and the nature of environment </li>
<li> CSA, states, and sequencing </li>
<li> Random variables, pdfs, cdfs, joint distributions </li>
<li> Values </li>
</ul>
</td>
<tr> <td>Recall the names and use for different classes of algorithms
<ul>
<li> Uninformed, informed, constraint-satisfaction, and hill-climbing search </li>
<li> Markov processes, Bayes rule, Bayes nets, HMMs, grid filters, and Kalman filters </li>
<li> Expected utility theory and multi-attribute utility theory </li>
<li> Sequential choice under uncertainty: value and policy iteration </li>
<li> Game theory </li>
</ul>
</td>
<tr><td> Implement several algorithms using the specifications from a book
</td>
<tr><td> Determine whether your solution is correct and what to do if it's not
</td>
<tr><td> Value the quality of a well-communicated solution
</td>
</table>