Syllabus:This syllabus is a work in progress; expect changes!
|Jan 17:||Introduction and Intelligent Agents. Reading: Chapters 1 and 2|
|Intro presentation (PDF). (PPT). (KEY).|
|Note: Additional versions of slides for the book are available at the text book web page.|
|Lab Presentation (PDF). (PPT). (KEY).|
|Jan 24::||Basic Search. Reading: Chapter 3|
|Uninformed Search presentation (PDF). (PPT). (KEY).|
|Lab Presentation. (PDF) (PPT) (KEY)|
|Prolog Presentation. (PDF) (PPT) (KEY)|
|Dragon Program. Assignment 2. program.pl. time.pl.|
|Jan 31:||Informed and Adversarial Search. Reading: Chapters 4 and 5.|
|Informed Search presentation. (PDF) (PPT) (KEY)|
|Prolog 2 Presentation. (PDF) (PPT) (KEY)|
|Project Info and Assignment 3.|
|Feb 7:||Constraint Satisfaction. Reading: Chapter 6.|
|Constraint Satisfaction presentation (PDF). (PPT). (KEY).|
|Prolog Lists Presentation (PDF). (PPT). (KEY).|
|Simple Puzzle Example Negatives Puzzle Example|
|Position Puzzle Example Next To Puzzle Example|
|Feb 14:||Logical Agents. Reading: Chapters 7-9.|
|Logical Agents (PDF). (PPT). (KEY).|
|Logical Agents Lab (PDF). (PPT). (KEY).|
|Assignment 5. resolve.pl baby|
|Feb 21:||Knowledge Representation. Reading: Chapter 12.|
|Knowledge Representation (PDF). (PPT). (KEY).|
|Midterm Notes. Assignment 6.|
|Mar 7:||Spring Break.|
|March 14:||Machine Learning 1 Reading: Chapters 18-19.|
|Machine Learning 1 (PDF). (PPT). (KEY).|
|Weka Lab 1 (PDF). (PPT). (KEY).|
|Knowledge Flow Tutorial (PDF).|
|Mar 21:||Machine Learning 2 Reading: Chapters 20-21|
|Machine Learning 2 (PDF). (PPT). (KEY).|
|Weka Lab 2 (PDF). (PPT). (KEY).|
|Mar 28:||Easter Break.|
|April 4:||Planning. Reading: Chapter 10.|
|Planning(PDF). (PPT). (KEY).|
|Planning Lab (PDF). (PPT). (KEY).|
|Assignment 8. planner.pl plannerTire.pl (code for lab exercise) adts.pl|
|Apr 11:||Natural Language Processing. Reading: Chapter 22|
|Natural Language Processing (PDF). (PPT). (KEY).|
|Apr 18:||Robotics. Guest speaker: Cynthia Matuszek. Reading: Chapter 25|
|Robotics Presentation (PDF). (PPT). (KEY).|
|April 25:||Student presentations/TBD.|
Jeff Zurita: Machine Learning in Board Games. - Neural Networks, Genetic Algorithms and Propositional Nets. My class presentation will cover the topic of Machine Learning in Board Games. The presentation will focus on the AI techniques used in computer versions of common board games not to just play a given game, but to actually improve performance by playing some number of times. The presentation will summarize the techniques used in some historic cases such as Samuel's checkers program, the backgammon program TD-gammon, the checkers program Blondie24, and my own thesis work in the game of Hex. Finally, I will summarize the approaches used to implement General Game Playing (GGP), in which computer programs are developed which can learn and play well any arbitrary game without human intervention.
Andrew Larkin: Shaping a Personality Using Prolog. Virtual personalities can be useful in the creation of software to which a user can relate. This is particularly useful in the realm of gaming and interactive storytelling, where having non-player characters with believable personalities that respond to user actions improves the immersive quality of the story. This project will explore the creation of a character with a personality that is influenced by the user. Using prolog, I will create an agent that attempts to determine if an input affects the agent positively or negatively. The agent will initially reference a knowledge base of known inputs and determine if an action is positive or negative (i.e, a hug is positive, a slap to the face is negative). However, the agent will also learn based on experience. Therefore, if a hug is usually followed by a slap, then the agent will begin to associate the hug as negative. The ultimate goal is to create a personality that responds to the actions of the user and conveys to the user some sense of consequence in the way they treat this virtual companion.
Dieter Bender: Unsupervised Learning.
Christopher Chestnut: Robotic Emotion: AI, the Brain, and the Limitations of Both. Robotic cognition is a large topic in artificial intelligence with many avenues to explore. One such branch that I located in my research is robotic emotion. As robotic entities progress technologically, research is being performed to more closely imitate the human being both physically and mentally. Neuroscientists and computer scientists agree upon the importance of emotions in human behavior thus emotions would be necessary for any artificially intelligent agent to accurately imitate the human person. I will explore the role emotions play in both human behavior and in the brain itself. I will make connections to how computer scientists are using this knowledge of how our brains work to craft emotional machines. The distinction between an AI agent having emotion and imitating emotion will also be discussed as well as the benefits both give. I will discuss the progress in robotic emotion being done today and also the future possibilities of the field; both positive and negative.
James Bradley: Uncertainty: Probabilities, the use of Bayes' Theorem and Markov Chains. Uncertainty is very important in many aspects of artificial intelligence, specifically machine learning. I will begin defining uncertainty in relation to artificial intelligence, and then I will narrow my focus onto the Bayes' Theorem and the uses and importance of it in the field of artificial intelligence. This theorem or equation is one of the most fundamental theorems in "modern artificial intelligence systems for probabilistic inference"; more specifically Bayesian statistics is a framework for building better machine learning systems. Next I will be discussing Markov chains and how they pertain to machine learning algorithms and game theory. After my discussion of these topics, I will demonstrate an example application of either Bayes' theory or Markov chains in artificial intelligence
|May 2:||Student Presentations/TBD.|
Donald Letts: Natural Language for a Game. Many games integrate some form of natural language processing, however since some of the early chatbots, there has not been much progress. In this project, I will look into how natural language processing can be used in game design, then using a small training set, I will demo a project in prolog where I attempt to determine the sentiment of an English sentence, ie, whether the statement is positive, negative, or neutral.
Anthony Dovelle: Current AI in Games. Description
James Brennan: Genetic Algorithms. While the Drone puzzle solved earlier in our class was easily solved by Prolog, constraint satisfaction serves as an excellent medium to discuss how to implement and use a Genetic Algorithm (GA) to find solutions for a problem. I will demonstrate a program I created that solves the Drone puzzle using a GA and discuss the mechanics behind how the program works. After covering the basics of genetic algorithm implementation with the Drone GA program, I will demonstrate a simulation I have created that uses a GA to evolve players in a combat simulator.
Suseela Bhaskari: Exploring RapidMiner. In Machine Learning the task of inferring a function from a labeled training data is referred as supervised learning. I am trying to explore "RapidMiner" an open source Machine learning tool and focus mainly on supervised learning algorithms on the datasets and will be providing a demo on my understanding of the tool and how the supervised learning algorithms are implemented on this tool using the sample datasets.
Final Exam Review.
|Notes for Final (PDF). (PPT). (KEY).|
|May 9:||Final Exam.|