CEN226
Ders Bilgileri
Ders Kodu Yarıyıl T + U (Saat) Kredi AKTS
Otomata CEN 226 4 3 + 0 3 5
 
Ön Koşul Dersleri  
 
Dersin Dili İngilizce
Dersin Seviyesi Lisans
Dersin Türü Zorunlu
Dersi Veren Öğretim Üyesi Dr. Öğr. Üyesi Esra SARAÇ EŞSİZ
Dersin Yardımcıları  
Dersin Amacı  Bilgisayar bilimlerinin matematiksel temellerini daha iyi anlamak, genel olarak matematiksel kanıtlarla deneyim kazanmak, ispat ve algoritmalar arasındaki ilişkileri ve algoritmaların doğruluğunu kanıtlamak, nondeterminizm kavramını anlamak ve determinizm ve bilgisayarlarla nasıl ilişki kurduğunu anlamak, Düzenli dil, deterministik sonlu otomata, nondeterministik sonlu otomata, düzenli ifadeler, bağlamsız gramerler, aşağı itme otomatları, Turing Makineleri, kararsızlık, hesaplama karmaşıklığı ve diğer dilbilgisi konularının anlaşılması, biçimsel diller ve otomata uygulamaları için bir takdir kazanmak.

Dersin İçeriği Ders, gramer, sonlu otomasyon, düzenli ifade, biçimsel dil, aşağı itme otomatı ve Turing makinesi dahil olmak üzere, otomata teorisi ve biçimsel dillerdeki bazı temel kavramları tanıtmaktadır. Bunlar sadece temel hesaplama modelleri oluşturmazlar, aynı zamanda bilgisayar bilimlerinin birçok dalının da temelini oluştururlar, ör. derleyiciler, yazılım mühendisliği, eşzamanlı sistemler, vb. Bu modellerin özellikleri üzerinde çalışılacak ve bunları analiz etmek ve karşılaştırmak için çeşitli titiz teknikler, hem biçimcilik hem de örnekler kullanılarak tartışılacaktır.
 
Dersin Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
Bilgisayar bilimlerinin matematiksel temellerini anlamak 1, 3, 14 A, C
İspatlar ve algoritmalar arasındaki ilişkiyi ve algoritmaların doğruluğunun ispatlarını anlamak 1, 3, 14 A, C
Nondeterminizm kavramını ve bunun determinizm ve bilgisayarlarla olan bağlantısını anlamak 1, 3, 14 A, C
Düzenli diller, deterministik sonlu otomata, nondeterministik sonlu otomata, düzenli ifadeler, Turing makineleri gibi kavramları anlamak 1, 3, 14 A, C
 
Öğretim Yöntemleri:  1: Anlatım, 2: Soru-Cevap, 3: Tartışma, 4: Alıştırma ve Uygulama, 5: Gösteri, 6: Gösterip Yaptırma,, 7: Rol Yapma, 8: Grup Çalışmas, 9: Benzetim, 10: Beyin Fırtıması, 11: Örnek Çalışmalar, 12: Deney/Laboratuvar, 13: Bireysel Çalışma, 14: Proje Çalışması, 15: Proje Temelli Öğrenme, 16: Tanımsız
Ölçme Yöntemleri:  A: Sınav , B: Sözlü Sınav, C: Ödev, D: Proje/Tasarım, E: Performans Görevi, F: Portfolyo, G: Tanımsız
 
DERS AKIŞI
Hafta Konular       Ön Hazırlık
1 Teorik bilgisayar bilimlerinin kısa tarihçesi, Derse genel bakış  
2 Setlerin, dizilerin, fonksiyonların, grafiklerin gözden geçirilmesi. Dizeler, diller. Yapı, çelişki, indüksiyon ile kanıtlama  
3 Deterministik sonlu otomat: Tanım, DFA ve dil örnekleri, Bir bilgisayar programından bir DFA oluşturulması, Giriş ve algoritmalara karşı diller ve otomatlar, Uygulamalar: dinamik modelleme, bilgisayar mimarisi, dizgi eşleştirme  
4 Belirleyici olmayan sonlu otomasyon: Tanımı, Neden Silikon bilgisayarlar belirsiz değildir, deterministik olmayan e-NFA'lara ve NFA'lara eşdeğerliklere nondeterministik sonlu otomatlar tarafından kabul edilen dillerin denkliği  
5 Düzenli ifadeler: Tanımlar, Sonlu otomata için düzenli ifade eşdeğeri, Uygulamalar: desen eşleştirmesi, sözcüksel analiz, Düzenli olmayan diller ve pumping lemması  
6 Gramer ve jeneratörler alıcılara karşı. Dilbilgisi tarihi, doğal diller, programlama dilleri. Bağlamsız gramer. Ayrıştırma, işaretleme, XML uygulamaları. Pushdown automata. Pushdown automata'nın içerikten bağımsız dilbilgisine eşdeğerliği. Pumping Lemma  
7 Gramer ve jeneratörler alıcılara karşı. Dilbilgisi tarihi, doğal diller, programlama dilleri. Bağlamsız gramer. Ayrıştırma, işaretleme, XML uygulamaları. Pushdown automata. Pushdown automata'nın içerikten bağımsız dilbilgisine eşdeğerliği. Pumping Lemma- devam  
8 Deterministic turing makineleri: Tanım, Örnekler, Turing makinelerini programlar, Depolama varyantları ve denkliği  
9 Rasgele erişim makineleri ve Turing Makinelerinin rastgele erişim makinelerine denkliği  
10 Church Turing Tezi ve Evren  
11 Karar verilemeyen Turing Makineleri  
12 Karar verilemeyen sorunlara kısa bir giriş. Hesaplama karmaşıklığına kısa bir giriş  
13 Yazılım Yönetimi  
14 Problem çözme  
           
KAYNAKLAR
Ders Notu 1- John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Introduction to Automata Theory, Languages, and Computation, 3rd Edition, Addison-Wesley, 2006.
 
Diğer Kaynaklar  
 
 
           
           
MATERYAL PAYLAŞIMI 
Dökümanlar 1-8 hafta  
Sınav Soruları  
9-14 hafta  
Ödevler Ödevler  
Sınavlar Sınav Tarihleri  
ArasinavTarihleri  
 
DEĞERLENDİRME SİSTEMİ
YARIYIL İÇİ ÇALIŞMALARI SAYISI KATKI YÜZDESİ
Ara Sınav 1 50
Kısa sınav 0 0
Ödev 9 50
Proje 0 0
Toplam 100
Yıliçinin Başarıya Oranı 50
Finalin Başarıya Oranı 50
Toplam 100
 
DERS KATEGORİSİ Mesleki
 
DERSİN PROGRAM ÇIKTILARINA KATKISI
No Program Öğrenme Çıktıları Katkı Düzeyi
1 Matematik, Fen Bilimleri ve temel mühendislik alanlarında bilgi birikimi ve bu birikimi uygulamaya dönüştürebilme yeteneğine sahip olma, 5
2 Bilgisayar Mühendisliği’nin temel prensipleri hakkında bilgiye sahip olma ve bu alandaki problemleri tanımlama, modelleme ve çözme yeteneğine sahip olma, 5
3 Bilişim teknolojileri bilgisi ve bu teknolojileri aktif olarak kullanabilme yeteneğine sahip olma, 5
4 Kendi alanında veri toplama, deney yapma, deney sonuçlarını analiz ve yorumlama yeteneğine sahip olma, 5
5 Problem çözümlerinde ve uygulamalarda modern mühendislik araçlarını ve yöntemlerini kullanabilme yeteneğine sahip olma, 4
6 Sistem ve sistem bileşenini veya süreci istenilen kriterlere uygun olarak tasarlama ve uygulama yeteneğine sahip olma, 4
7 Disiplin içi ve disiplinler arası takımlarda çalışabilme yeteneğine sahip olma, 4
8 Bilgi edinimi araştırması yapabilme, veri tabanlarına ve diğer bilgi kaynaklarına erişebilme becerisine sahip olma, 4
9 Yaşam boyu öğrenme gerekliliğinin farkındalığına sahip olma ve bu farkındalığı uygulayarak kendini yenileyebilme yeteneği sahip olma, 3
10 Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi uygulamalar ile girişimcilik ve yenilikçilik hakkında bilgi sahibi olma, 3
11 İletişim de etkin olabilme yeteneğine sahip olma, 1
12 Mesleki özgüven, bağımsız davranma, yaratıcılık gibi özelliklere sahip olma, 4
13 Mesleki ve etik sorumluluk bilinçlerine sahip olma, 1
KATKI DÜZEYİ: 1:Çok-Düşük, 2: Düşük, 3: Orta, 4: Yüksek, 5: Çok-Yüksek
AKTS / İŞ YÜKÜ TABLOSU
Etkinlik SAYISI Süresi (saat) Toplam İş Yükü (saat)
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) 16 3 48
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) 16 4 64
Ödev 9 4 36
Proje 0 0 0
Ara sınav 1 1 1
Uygulama 0 0 0
Final sınavı 1 1 1
Toplam İş Yükü 150
Toplam İş Yükü / 30 (saat) 5
Dersin AKTS Kredisi 5