KHÜ DERS KATALOG FORMU (COURSE CATALOGUE FORM) Kodu (Code) Dersin Adı Course Name Yapay Zeka Artifical Intelligence Yarıyılı (Semester) CE480 7 Bölüm / Program (Department/Program) Dersin Türü (Course Type) Dersin Önkoşulları (Course Prerequisites) Dersin mesleki bileşene katkısı, % (Course Category by Content, %) Kredisi (Local Credits) AKTS Kredisi (ECTS Credits) 3 8 Ders Uygulaması, Saat/Hafta (Course Implementation, Hours/Week) Ders Uygulama Laboratuar (Theoretical) (Tutorial) (Laboratory) 3 0 0 Bilgisayar Muhendisliği (Computer Engineering) Dersin Dili İngilizce (English) (Course Language) – Giriş programlama bilgisi (Introductory programming) – Ayrık Hesaplama Yapıları (Discrete Computational Structures) – Veri yapıları (Data Structures) Mühendislik İnsan ve Toplum Temel Mühendislik Temel Bilim Tasarım Bilim (Engineering (Basic Sciences) (Engineering (General Science) Design) Education) 10 45 45 0 Seçmeli (Elective) Dersin İçeriği Course Description Problem çözme teknikleri: durum-uzay yaklaşımı, problem indirgeme yaklaşımı, problem modeli, problem temsili, tümleyen arama algoritmaları, buluşsal arama algoritmaları (A*). Oyun oynama. Bilgi temsili ve mantık temellendirme: sintaks, semantik, önermesel mantığın ispat teorisi, birinci-derece yüklemsel mantık, üretim sistemleri, semantik ağlar ve çerçeveler. Bilgi temeli, uzman sistemler, çıkarsama motoru. Makine öğrenme teknikleri: çıkarsama, yönlendirmeli öğrenme, yapay sinir ağları Problem-solving techniques: state-space approach, problem-reduction approach, problem model, problem representation, exhaustive search algorithms, heuristic search algorithms (A*). Game-playing. Knowledge representation and reasoning: syntax, semantics, and proof theory of propositional logic, first-order predicate logic, production systems, semantic nets, and frames. Knowledge base, expert systems, inference engine. Machine learning: inference, learning by instruction, neural networks Dersin Amacı Course Objectives The main objective of this course is to provide the Bu dersin temel amacı öğrenciye yapay zekanın temel students with a knowledge on foundations of artificial kuram ve tekniklerini kavratmak ve bu temel teknikleri intelligence and the main AI techniques, and to provide hesapsal problemlerin çözümünde verimli bir şekilde them the necessary ability and experience to apply those uygulama beceri ve tecrübesini kazandırmaktır. techniques in solving basic computational problems. Dersin Öğrenme Çıktıları 1. Yapay zeka tekniklerinin temellerini anlamak 2. Hesapsal problemleri çözmek için arama tekniklerinin uygulanması becerisi 3. Bilgi temsili, mantık ve çıkarım konularında temel anlayış 4. Fonksiyonel bir programlama dili öğrenme ve bunu yapay zeka tekniklerinin uygulanmasında kullanma becerisi 5. Zor hesapsal problemlerin çözümünde makine öğrenme tekniklerini uygulama becerisi. Course Learning Outcomes 1. Understanding the basics of artifical intelligence techniques 2. Ability to apply search techniques to solve computational problems 3. Gaining an understanding of knowledge representation and reasoning 4. Learning a functional language and employing it to apply artifical intelligence techniques 5. Ability to apply machine learning techniques to solve hard computational problems Artificial Intelligence: A Modern Approach, Stuart Russell & Peter Norvig, Prentice-Hall (2003), 2nd Edition Ders Kitabı (Textbook) Diğer Kaynaklar (Other References) Ödevler Sınıfta öğrendiğini sınıfta yapabilme yeteneğini test edebilmek amacıyla bu derste yazılı ev ödevi yerine benzer sorular içeren sınıf içi kısa sınavlar yapılacaktır. Derste öğrenilen yapay zeka tekniklerinin uygulaması amaçlı programlama ödevleri de verilecektir. Homework In order to test the ability to apply the concepts and techniques learned in class instead of written homework assignments, the students will be given in class short exams with problems similar to those of a homework. In order to apply the main artifical intelligence techniques leraned in class programming asignment qill also be given. Laboratuar Uygulamaları Laboratory Work Bilgisayar Kullanımı Computer Use Diğer Uygulamalar Other Activities Verili bir yapay zeka tekniğini kullanarak hesapsal bir A project which involves employing a given artifical probleme çözüm geliştirme, kod gerçekleştirimini intelligence technique in solving a computational sağlama ve performans/doğruluk sınaması amaçlı test problem, implementing it, and designing tests for geliştirmeyi gerektiren bir kodlama projesi verilecektir. correctness/performance will be given. The students will Proje için öğrencilerin bir demo sunumu yapmaları do a demo presentation of their projects. gereklidir. Faaliyetler Adedi Değerlendirmedeki Katkısı, % (Activities) (Quantity) (Effects on Grading, %) Yıl İçi Sınavları 2 30 (Midterm Exams) Kısa Sınavlar (Quizzes) Ödevler 3 15 Değerlendirme (Homework) Sistemi Projeler 1 15 (Projects) (Assessment Criteria) Dönem Ödevi/Projesi (Term Paper/Project) Laboratuar Uygulaması (Laboratory Work) Diğer Uygulamalar (Other Activities) Final Sınavı 1 40 (Final Exam) DERS PLANI (COURSE PLAN) Hafta (Week) 2 3 4 5 6 7 8 9 10 11 12 13 14 Dersin genel özeti, bilgisayar bilimlerinde yapay zekanın rolü Akıllı ajanlar ve çevreler, rasyonalite, ajan ve çevre tipleri Gözü kapalı arama: arama stratejileri, genişlik öncelikli ve derinlik öncelikli arama, düzenli harcama aramaları. Buluşsal arama: Arama stratejileri, obur eniyi-öncelikli arama, A* arama Oyunlar: Arama olarak oyun oynama, minimax algoritması, alfa-beta budaması Mantıklı ajanlar Birinci derece mantık: Birinci derece mantık ve çıkarsama Sınav1, çözümlerin tartışılması Bilgi temsili, gösterimi, ve mantık programlama Bilinmezlik, bayez ağları Makine öğrenme: Karar ağaçları, yapay sinir ağları Makine öğrenme: Destek vektör makineleri Bilgisayarlı Görme de uygulamalar Sınav2, çözümlerin tartışılması, Proje demo sunumları Dönemin genel değerlendirmesi Dersin Öğrenme Çıktılarının ve Program Çıktılarıyla İlişkisi Relationship between the course and Program Outcomes Programa Çıktıları (Program Outcomes) Dersin Öğrenme Çıktıları 1 Konular Dersin Çıktıları Topics (Course Outcomes) General overview of the course, role of 1 artifical intelligence in computer science Intelligent agents, agents and environments, 1, 2, 3 rationality, environment and agent types Blind search: Search strategies, breadth1, 2, 3 first and depth-first search, uniform cost search. Heuristic search: Search strategies, greedy 2 best-first search, A* search Games: Game playing as search, minimax 1, 2, 3 algorithm, alpha-beta pruning Logical Agents 1, 2, 3, 4 First Order Logic: FOL, inference in first- 3, 4 order logic Exam1, discussing solutions 3 Knowledge representation, logic 3 programming Uncertainty, bayesian networks 1, 2, 3 Machine learning: Decision trees, neural 5 networks Machine learning: Support vector 5 machines Applications in Computer Vision 5 Exam2, discusssing solutions, 5 Project demos Overall evaluation of the course a b c 1 X X X 2 X X X 3 e f g h i X X X 4 5 d X X X X X X X j k l Dersin Bilgisayar Mühendisliği Programıyla İlişkisi (Relationship between the Course and Computer Engineering Curriculum) Program Çıktıları a b c d e f g h i Temel Bilimler, Temel Mühendislik ve Bilgisayar Mühendisliği tasarım ilke ve yöntemlerini, mühendislik problemlerinin modellenmesi ve çözümü için Uygulayabilme becerisi Ayrık Matematik kavram ve konularını uygulayabilme becerisi Karmaşık mühendislik problemlerini tanımlama, veri toplama, yorumlama, problemleri analiz etme, modelleme ve etkin çözümler geliştirme ve uygulama becerisi Donanım ve Yazılım bileşenleri ile bir bilgisayar sisteminin, gerçekçi kısıtlar ve koşullar altında, analizini, tasarımını ve yönetimini, modern mühendislik yöntemleri ile gerçekleştirebilme becerisi Modern mühendislik teknik ve araçları ile bilişim teknolojileri ve yazılımlarını geliştirme, seçme ve etkin bir şekilde kullanabilme becerisi Mühendislik problemlerinin incelenmesi için laboratuvar ve bilgisayar ortamında deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi Tek ve çok disiplinli takım çalışması yürütebilme becerisi, buna yönelik bireysel becerilere de sahip olma Türkçe ve İngilizce olarak, yazılı ve sözlü etkili iletişim kurabilme becerisi, Kendi alanındaki uluslararası çalışmaları takip edebilme becerisi j Yaşam boyu öğrenmenin gerekliliği bilinci, bilimi ve teknolojildeki gelişmeleri izleyerek kendini sürekli yenileyebilme becerisi, Mesleki ve etik sorumluluk bilinci k Proje yönetimi, girişimcilik ve toplam kalite yönetimi konularında farkındalık l Çağdaş toplumsal sorunlara duyarlılık, mühendislik çözümlerinin etik ve hukuksal sonuçları konusunda farkındalık Katkı Seviyesi (Contribution level) 1 2 3 Program Outcomes Ability to apply the knowledge of mathematics, science and engineering principles to solve problems in computer engineering Ability to understand and apply discrete mathematics Ability to define complex engineering problems, collect, analyze data, analyze problems and develop models and implement solutions for the engineering problems Ability to analyze, design and manage the hardware/software computer system requirements with limited resources and conditions by modern engineering principles X X X X Ability to use modern engineering techniques, tools and information technologies and develop software equipment and software Ability to conduct lab experiments by using computers and to have the ability of collecting data, analyze, interpret data and to solve engineering problems X X Ability to work on multidisciplinary topics with teams as well as individually Ability to communicate in Turkish and English very well in the written and oral form Ability to follow international works in his or her field Ability to follow technological innovations and to engage in life-long learning in order to adapt himself/herself to the changing conditions of the future with professional and ethical responsibility Ability to make a difference about the project management, entrepreneurship and quality control An understanding of current contemporary issues and impact of engineering solutions in legal and ethical levels X 1: Az (Little), 2. Kısmi (Partial), 3. Tam (Full) Düzenleyen (Prepared by) Tarih (Date) Assoc. Prof. Cesim Erten 15/06/2015 İmza (Signature)