260 likes | 382 Views
Artificial Intelligence Programming. Course CS II Prof. Dr. U. Quevedo University of Wisconsin- Parkside. International Summer University 2011. University of Wisconsin-Parkside.
E N D
Artificial Intelligence Programming Course CS II Prof. Dr. U. Quevedo University of Wisconsin-Parkside
University of Wisconsin-Parkside UW-Parkside is one of 13 four-year campuses in the University of Wisconsin System. UW-P is located in Kenosha, Wisconsin, between Milwaukee and Chicago on 700 acres with natural prairies and woodlands.
Computer Science Department • The department offers a high quality Bachelor of Science in Computer Science and a Master of Science in Computer and Information Systems.
Success stories • Our programs are highly respected in the region with virtually 100% of our students employed in professional positions when they graduate
Course Syllabus • Course Description • Resources • Schedule • Format / Activities • Grading
Artificial Intelligence • Artificial Intelligence is the study of how to make computers do things at which, at the moment, people are better. • Artificial Intelligence is the branch of computer science that is concerned with the automation of intelligent behavior.
Intelligence • Intelligence is the computational part of the ability to achieve goals in the world. • Isn't there a solid definition of intelligence that doesn't depend on relating it to human intelligence?
Other Basic Questions • How to identify “intelligent behavior”? • What is an intelligent computer program? • Alan Turing discussed conditions for considering a machine to be intelligent.
Turing Test • Turing argued that if the machine could successfully pretend to be human to a knowledgeable observer then you certainly should consider it intelligent. • The observer could interact with the machine and a human by teletype (to avoid requiring that the machine imitate the appearance or voice of the person), and the human would try to persuade the observer that it was human and the machine would try to fool the observer
The Anti-Turing test: Captcha • A CAPTCHA is a program that can generate and grade tests that humans can pass but current computer programs cannot.
Principles of Computer Science needed in AI • Data Structures (knowledge representation, scheme) • Algorithms (needed to apply knowledge) • Languages (the medium of implementation) • Programming Techniques
AI Languages • AI languages should be constrained to take the form of explicit structures for representing categories of knowledge. • Programming languages are the medium of implementation; the data structure is the scheme. • Their medium of implementation might be Prolog, Lisp or more common languages like C++ or Java.
Knowledge representation languages • These are high level representation formalisms, and can in principle be implemented using a whole range of programming languages • They should support inference
Inference Mechanism • We can't represent explicitly everything that the system might ever need to know – some things should be left implicit, to be deduced by the system as and when needed in problem solving. • Examples: • Smart people -> computer science students • X is not the president of the U.S. • Location of Y’s office
A good knowledge representation language • It should allow you to express the knowledge you wish to represent in the language • It should allow new knowledge to be inferred from a basic set of facts • It should be clear, and have a well defined syntax and semantics
Languages • Prolog (Swi-Prolog) • How to create, load prolog programs and execute queries • MatLab(SciLab) • How to load and manipulate images
Prolog Facts: statement assumed to be true Predicates: relations that are either true or false Rules: if-then statements
Family facts and relations • Facts and relations are defined in lower case, and they end with a period. male(john). female(mary). mother(mary, john). Data types like “atoms“ are indicated using lower case too.
Statements and Variables • All statements end with a period. friend(John, peter). • All variables start with a capital LETTER. friend(X, peter). Prolog uses unification to solve queries.
Family tree Example • Write some facts, relations and rules for: mother, father, parent, grandparent, sibling, brother, sister, married, cousins