Ders Adı Kodu Yarıyıl T+U Saat Kredi AKTS
Algoritma Analizi ve Tasarımı BSM 312 6 3 + 0 3 5
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin Dili Türkçe
Dersin Seviyesi Lisans
Dersin Türü Zorunlu
Dersin Koordinatörü Prof.Dr. NEJAT YUMUŞAK
Dersi Verenler
Dersin Yardımcıları

Arş.Gör.Hüsrev YUMUŞAK

Dersin Kategorisi Alanına Uygun Temel Öğretim
Dersin Amacı

Algoritma tasarım tekniklerini problem çözümlerinde kulanabilmek ve evrensil ölçütlere göre karşılaştırabilmek için yöntemler sunmak dersin amacını oluşturmaktadır. 

Dersin İçeriği

Algoritma etkinliği, Etkinlik sınıflandırmaları, algoritmalarının çalışma zamanı ve bellek maliyetlerinin hesplanması; Brute Force (Kaba kuvvet), "Böl ve yönet",  "dönüştür ve yönet", "Azalt ve Yönet", Dinamik Progrmlma, Greedy,  yaklaşımlarının incelenmesi hedeflenmektedir. Arama, sıralama, Graf ve sınıflandırma algoritmalarının incelenmesi ve karşılaştırılması. Evrensel karmaşık problemler için temel tasarım tekniklerinin uygulanmasına ilişkin becerilerin geliştirilmes

# Ders Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
1 Algoritma Tasarım Tekniklerinin kavramsal olarak bilinmesi ve karşılaştırılması Problem Çözme, Yazılı Sınavlar (Kısa ve Uzun Yanıtlı), Ödev / Evde-Çöz Sınavlar,
2 Evrensel problemler için çözüm yöntemleri önerme ve değerlendirme Problem Çözme, Yazılı Sınavlar (Kısa ve Uzun Yanıtlı), Ödev / Evde-Çöz Sınavlar,
3 Problem dönüştürme, analiz ve iyileştirme süreçlerinin tanımlanması Tartışma, Bireysel Çalışma, Yazılı Sınavlar (Kısa ve Uzun Yanıtlı),
4 Çözüm yöntemlerinin evrensel ölçütlere göre değerlendirilmesi Problem Çözme, Yazılı Sınavlar (Kısa ve Uzun Yanıtlı),
Hafta Ders Konuları Ön Hazırlık
1 Algoritma genel kavramlar. tasarım tekniklerinin tanıtılması ve Asimptotik notasyonlar Ders konusuna ait sunu dosyaları
2 Algoritma Analiz teknikleri-Temel işlemlerin sayılması Ders konusuna ait sunu dosyaları
3 Algoritma Analiz teknikleri-Rekürsif çağrımların sayılması sayılması Ders konusuna ait sunu dosyaları
4 Algoritma Analiz teknikleri-Master Teoremi Karakteristik denklemin kökleri ile analiz. Ders konusuna ait sunu dosyaları
5 Dİnamik Programlama_Matris Zincirleri Çarpımı Ders konusuna ait sunu dosyaları
6 Dinamik Programlama_ (Longest Common Subsequences Problem), Floyd Warshall Algoritması Ders konusuna ait sunu dosyaları
7 Sırt çantası Problemi (Dinamik programlama ve Greedy çözümleri) Ders konusuna ait sunu dosyaları
8 Greedy Tasarım yaklaşımı (Dikstra, Huffman ...) Ders konusuna ait sunu dosyaları
9 Azalt ve Yönet Paradigması (Decrase & Conquer) Ders konusuna ait sunu dosyaları
10 Dönüştür ve Yönet (Transform & Conquer) paradigması (Heap sort, ) Ders konusuna ait sunu dosyaları
11 Dönüştür ve Yönet (Transform & Conquer)(Polinom hesapları, Karesel maliyetten logaritimik maiyete indirgeme ) Ders konusuna ait sunu dosyaları
12 Dönüştür ve Yönet paradigması (B2-3 ağaçları, AVL ağaçları) Ders konusuna ait sunu dosyaları
13 Complexity: P, NP, NP-completeness, Reductions Ders konusuna ait sunu dosyaları
14 Karmaşıklık sınıfları (P, NP, NP-Tam problemler) Ders konusuna ait sunu dosyaları
Kaynaklar
Ders Notu

Ders notları SABİS platformunda paylaşılmıştır.

Ders Kaynakları

Algorithm Design and Applications, Michale T. Goodrich, Roberto Tamassia, Wiley.

Algoritmalar, Vasif Vagıfoğlu Nabiyev, Seçkin Yayıncılık.

Sıra Program Çıktıları Katkı Düzeyi
1 2 3 4 5
3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. X
3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi.
3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi.
3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi.
4 Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi.
4 Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. X
8 Yaşam boyu öğrenmenin gerekliliği konusunda farkındalık; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi.
12 Bilişim Teknolojilerinin yönetim, denetim, gelişim ve güvenliği/güvenilirliği hakkında bilgi sahibi olma ve farkındalık,
# Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı PÇ 3 PÇ 3 PÇ 3 PÇ 3 PÇ 4 PÇ 4 PÇ 8 PÇ 12
1 Algoritma Tasarım Tekniklerinin kavramsal olarak bilinmesi ve karşılaştırılması 5 5 5 5 5 5
2 Evrensel problemler için çözüm yöntemleri önerme ve değerlendirme 5 5 5 5 5 5
3 Problem dönüştürme, analiz ve iyileştirme süreçlerinin tanımlanması 5 5 5 5 5 5
4 Çözüm yöntemlerinin evrensel ölçütlere göre değerlendirilmesi 5 5 5 5 5 5
Değerlendirme Sistemi
Yarıyıl Çalışmaları Katkı Oranı
Toplam 0
Toplam 0
AKTS - İş Yükü Etkinlik Sayı Süre (Saat) Toplam İş Yükü (Saat)
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) 14 3 42
Kısa Sınav 2 6 12
Ödev 1 10 10
Ara Sınav 1 16 16
Final 1 20 20
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) 14 1 14
Toplam İş Yükü 114
Toplam İş Yükü / 25 (Saat) 4,56
dersAKTSKredisi 5