Unformatted text preview:

CS 430 - Artificial IntelligenceSpring 2007 - Programming Project 340 PointsOut : March 28, 2007Due: April 23, 2007In this project, you will experiment with representing knowledge logically in Prolog. The application will be a simple academic advisor that is aware of (some of) the registration requirements for the computer science major at UE.Part 1: First Order Logic (pencil and paper)The first part of the assignment is to simply represent some important rules in first order logic. For this part, you may use any equivalent form. If appropriate, you can translate a single sentence into multiple rules.1. A student may not take a course unless they have taken all of its prerequisites.2. A student may only take a course in a semester when it is offered.3. A student must take CS 101, CS 210, CS 215, CS 220, CS 290, CS 315, CS 320, CS 380, CS 381, CS 390, CS 470, CS 494, CS 495, and CS 497 for a major in computer science.4. A student must take 4 computer science technical elective courses for a major in computer science.You may substitute your major's requirements, if your major is not computer science. Rule 3 is the required major-specific courses, and rule 4 is the major-specific elective course requirements.Part 2: PrologRepresent the four rules above in Prolog. Enter facts consisting of available courses from the 2005-2007 catalog, the Fall 2007 class schedule (both are available on ACELINK, under the Areas tab, then Registrar), and information about your own progress toward the computer science (or other) major as relevant to the rules. Also make up a second student whose profile is different from your own. Using these rules and any additional ones that you need, have your system suggest which courses you and the other student should consider for this Fall. (You are welcome to include rules and information that go beyond the four rules from part 1 for a more realistic system).03/27/07 1Part 3: DiscussionBriefly describe the strategies that you used for your project. Explain what felt “natural” and what felt like “fighting the system/language”. If you were to write an advisor in Scheme (or C++), would it be more or less complex? Why?What to hand inEmail your Prolog code file to the instructor. Also submit a hardcopy of the your well-comment Prolog code along with your answers to parts 1 & 3 to the instructor. The comments or discussion should include instructions on what query should be used to generate the course list for consideration for you and the other student.03/27/07


View Full Document

UE CS 430 - Programming Project 3

Documents in this Course
Load more
Download Programming Project 3
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Programming Project 3 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Programming Project 3 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?