Istanbul Bilgi University Department of Computer Science
Previous Home > Courses > Year 4 > Comp 431 Next
Home
   About This Site
   Academic Policies
   Academic Staff
   Acm-istanbul
   Courses
      Course Descriptions
      Year 0
      Year 1
      Year 2
      Year 3
      Year 4
         Comp 403
         Comp 404
         Comp 412
         Comp 421
         Comp 422
         Comp 431
            Archive
         Comp 451
         Comp 452
         Comp 461
         Comp 471
         Comp 472
         Comp 474
         Comp 497
         Comp 498
   Curiosity Corner
   High School Computer Clubs Project
   Lab Rules
   Links
   Member Help
   News
   Other Stuff
   Standards Project
   Tanitim
   Turing Days
   Usage Statistics
   Yarýţma

COMP 431 - Artificial Intelligence and Symbolic Programming
Istanbul Bilgi University, Department of Computer Science, 2008-2009 Fall

Description

This course introduces computational techniques to account for intelligence. The techniques explored include search algorithms, knowledge representation and logic programming, machine learning and multi-agent systems. These techniques are applied to problems such as games and puzzles, planning problems, constraint satisfaction or optimization problems.

Prerequisites

Although the course is aimed at general audience, prior experience with some computer programming language is highly recommended.

Course Information

Instructor
: Mehmet Gençer
email: mgencer@cs.bilgi.edu.tr
home-page: http://cs.bilgi.edu.tr/~mgencer/
Phone: 0212-3115412
Office: Dolapdere-321
Course website
http://cs.bilgi.edu.tr/pages/courses/year_4/comp_431/
Online facilities
There are two mailing lists for the course: comp-431-announce is used for announcement of assignments and deadlines by the lecturers, and comp-431-discuss is available for course related discussions. The mailing lists can be accessed at
http://cs.bilgi.edu.tr/mailman/listinfo/.

Objectives

This is an introduction to Artificial Intelligence for undergraduate students. It provides an overview of intelligent agent design where agents perceive their environment and act rationally to fulfill their goals. In addition to fundamental search techniques, students are exposed to first-order logic and use symbollic programming in AI applications. Class sections provide hands on experience on programming aspects of intelligent systems.

A student completing this course will be able to:

  • Explain the basic knowledge representation and problem solving techniques of Artificial Intelligence.
  • Assess suitability, advantages and disadvantages of the basic techniques to particular engineering problems.
  • Develop intelligent systems by constructing programs to solve concrete computational problems.
  • Assess suitability of alternative techniques such as genetic algorithms or multi-agent programming for AI problems.

Resources

The book “Artificial Intelligence, a Modern Approach”, by Stuart Russell and Peter Norvig (Prentice Hall), is recommended to all students . Several copies are available at Istanbul Bilgi University’s Dolapdere Library. The textbook also has a website at http://aima.cs.berkeley.edu that provides some sample chapters and a code repository. In addition MIT opencourseware materials at http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-034Spring-2005/CourseHome/index.htm are highly recommended.

Additional online and printed resources will be provided during the course.

Weekly outline

  • AI definition, history, and terms. Taxonomic overview of models and features of intelligent agents and their environments. Knowledge, inference, and logic. Exploration versus goal based systems. Programming GNU Robots.
  • Propositional logic, forward and backward chaining for resolution. Using Prolog for simple logical programming.
  • Solving problems by searching.
  • Informed search and heuristics.
  • Local search, exploration, and genetic algorithms.
  • Constraint satisfaction problems.
  • First-order logic and using Prolog for problem solving. Planning problems.
  • Intelligent agents in physical world: summary of robotics, perception, and natural language processing issues.
  • Learning, decision nets and Bayesian networks.
  • Multi-agent systems.
  • Contemporary applications of AI.

Assessment

The assessment will be based on portfolios developed by every student by carrying out assignments given by the lecturer or chosen through mutual aggreement with the student.

You will be given frequent project assignments during the course. The assignments have two purposes. First is to put what you have learned in the lectures or during self study into work and get proficient in applying the techniques you have learned. Second purpose is to demonstrate that you can do these things. Projects should be both submitted in printed form in due time and also you must keep electronic copies until the end of the term. Assignments should be submitted via the online system. Please consult your instructors for details of how to do this.

In order to fulfill the two purposes mentioned above, following criteria shall be applied for evaluation of projects:

  • Correctness: Whether a submitted project satisfies the requirements of the assignment. In other words whether the program works correctly, the digital system design comprises a working system, the logic proof is correct. It is to your advantage to work together with your classmates to check correctness of one another’s solutions, and seek help or start with easier problems when you are unable to solve assigned problems.
  • Timeliness: Late submissions will not be accepted.
  • Style: Your projects should not only be correct, but they should also convey your solution well. Therefore you are expected to be expressive and demonstrate good language skills when writing down your projects. This includes following coding conventions and using expressive comments when writing computer programs, in accordance with literate programming practices.
  • Originality: There is always more than one way to solve problems. A way of solving problems you have seen in the lectures may not be the best way to solve another problem. Designing logic circuits or programs is a creative task and we do expect you to seek alternative, novel ways of solving problems. Therefore you must try to come up with solutions that are original and different, in addition to being correct.
  • Cooperation: In most real tasks you will be working with other computer scientists. We consider development of your abilities to share work and complete tasks as a team as an essential part of your progress. Some of your assignments will be group projects and your partners’ experience about working with you will be a part of your performance evaluation. While in most cases you will be your own judge or cooperate with your classmates to evaluate one another, you will be asked during the lectures to present your solutions to assigned problems. As this will be the major change of your lecturers to judge your proficiency on course subject, you are advised to come to lectures well prepared.

In addition to project assignments, there will be several quizzes for this course; and grades you take from these exams will provide a double check of your performance. Content and difficulty of quizzes will not be substantially different from the assignments and will not require additional work on your part other than working towards your assignments. Your final grade for the course will be a weighted sum of your grade from projects (60%), and your quizzes average (40%).

In order to help you monitor your progress during the course you will be asked to evaluate your overall progress midway through the semester and discuss with your lecturers the ways to improve your performance. At the end of the semester you will be asked to write an overall evaluation and grade your performance on the course. Although your lecturers will have the final say on your grades, these practices are proven to be extremely useful for self-diagnosis of your problems and for taking timely action to improve your performance.


This document was translated from LATEX by HEVEA.