AKTS - Algoritma ve Optimizasyon Yöntemleri
Algoritma ve Optimizasyon Yöntemleri (SE328) Ders Detayları
Ders Adı | Ders Kodu | Dönemi | Saati | Uygulama Saati | Laboratuar Hours | Kredi | AKTS |
---|---|---|---|---|---|---|---|
Algoritma ve Optimizasyon Yöntemleri | SE328 | 6. Dönem | 3 | 0 | 0 | 3 | 5 |
Ön Koşul Ders(ler)i |
---|
CMPE226 |
Dersin Dili | İngilizce |
---|---|
Dersin Türü | Zorunlu Bölüm Dersleri |
Dersin Seviyesi | Lisans |
Ders Verilme Şekli | Yüz Yüze |
Dersin Öğrenme ve Öğretme Teknikleri | Anlatım. |
Dersin Öğretmen(ler)i |
|
Dersin Amacı | Bu ders, öğrencilere algortimaların nasıl analiz ve dizayn edileceğini öğretmeyi hedeflemektedir. Ayrıca, öğrenciler optimizasyon problemleri için optimizasyon yöntemlerini uygulamayı da başarabileceklerdir. |
Dersin Eğitim Çıktıları |
Bu dersi başarıyla tamamlayabilen öğrenciler;
|
Dersin İçeriği | Algoritma tasarımı ve analizi; algoritmaların matematiksel karmaşıklığı; master teoremi; azalt-ve-fethet; böl-ve-fethet; dönüştür-ve-fethet, bazı optimizasyon tekniklerine giriş; dinamik programlama; açgözlü tekniği; döngülü iyileştirme; algoritma güç sınırlamaları ile başa çıkma. |
Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları
Hafta | Konular | Ön Hazırlık |
---|---|---|
1 | Algoritmaların Rolü ve Başlangıç | CLRS Bölüm 1-2 |
2 | Fonksiyonların Büyümesi ve Asimtotik gösterim | CLRS Bölüm 3 |
3 | Özyinelemeli Eşitliklerinin Çözümü: Yerine koyma Metodu | CLRS Bölüm 4 |
4 | Özyinelemeli Eşitliklerin Çözümü: Özyineleme-Ağacı Metodu, Master Metodu | CLRS Bölüm 4 |
5 | Kaba Kuvvet Yaklaşımı ve Kapsamlı Arama | LVTN Bölüm 3 & CLRS Bölüm 22 |
6 | Azalt-ve- Fethet | LVTN Bölüm 4 & CLRS Bölüm 22 |
7 | Böl-ve-Fethet | LVTN Bölüm 5 & CLRS Bölüm 7 |
8 | Dönüştür-ve- Fethet | LVTN Bölüm 6 & CLRS Bölüm 6 |
9 | Dinamik Programlama | LVTN Ch. 8 & CLRS Ch. 15 |
10 | Dinamik Programlama | LVTN Bölüm 8 & CLRS Bölüm 15 |
11 | Açgözlü Algoritmalar | LVTN Bölüm 9 & CLRS Bölüm 16 |
12 | Açgözlü Algoritmalar | LVTN Bölüm 9 & CLRS Bölüm 16 |
13 | Döngüsel İyileştirme: Simplex Metodu | LVTN Bölüm 10 |
14 | Algoritmik Gücün Sınırları ve Bunlarla Başa Çıkma, P, NP, NP-Tam Sınıfları | LVTN Bölüm 11 |
15 | Final Sınavı | |
16 | Final Sınavı |
Kaynaklar
Ders Kitabı | 1. Anany Levitin, Introduction to the Design & Analysis of Algorithms, 3rd edi-tion, Pearson, 2012. |
---|---|
Diğer Kaynaklar | 2. T.H.Cormen, C.E.Leiserson, R.L.Rivest and C.Stein: Introduction to Algorithms, MIT Press 2001. |
3. E.Horowitz, S.Sahni: Fundamentals of Computer Algorithms, Computer Sci-ence Press, 1989. | |
4. E.Horowitz, S.Sahni, S.Rajasekeran, Computer Algorithms, ISBN: 978-0-929306-41-4, Silicon Press, 2008. | |
5. J.Kleinberg, E.Tardos, Algorithm Design, Addison – Wesley, ISBN: 0-321-29535-8, 2006. | |
6. A.V.Aho, J.E.Hopcroft, J.D.Ullman, The Design and Analysis of Computer Algo-rithms, Addison-Wesley Series in Computer Science and Information Pro-cessing, 1979. | |
7. S.S. Skiena, The Algorithm Design Manual, Springer – Verlag, New York, 1998. |
Değerlendirme System
Çalışmalar | Sayı | Katkı Payı |
---|---|---|
Devam/Katılım | - | - |
Laboratuar | - | - |
Uygulama | - | - |
Alan Çalışması | - | - |
Derse Özgü Staj | - | - |
Küçük Sınavlar/Stüdyo Kritiği | - | - |
Ödevler | 3 | 15 |
Sunum | - | - |
Projeler | - | - |
Rapor | - | - |
Seminer | - | - |
Ara Sınavlar/Ara Juri | 2 | 50 |
Genel Sınav/Final Juri | 1 | 35 |
Toplam | 6 | 100 |
Yarıyıl İçi Çalışmalarının Başarı Notu Katkısı | 65 |
---|---|
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı | 35 |
Toplam | 100 |
Kurs Kategorisi
Temel Meslek Dersleri | |
---|---|
Uzmanlık/Alan Dersleri | X |
Destek Dersleri | |
İletişim ve Yönetim Becerileri Dersleri | |
Aktarılabilir Beceri Dersleri |
Dersin Öğrenim Çıktılarının Program Yeterlilikleri ile İlişkisi
# | Program Yeterlilikleri / Çıktıları | Katkı Düzeyi | ||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
1 | Matematik, fen bilimleri ve yazılım mühendisliği disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi. | X | ||||
2 | Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve 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. | X | ||||
4 | Yazılım mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | X | ||||
5 | Karmaşık mühendislik problemlerinin veya yazılım mühendisliği disiplinine özgü araştırma konularının incelenmesi için, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | X | ||||
6 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | X | ||||
7 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. | |||||
8 | En az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. | |||||
9 | Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | |||||
10 | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci. | |||||
11 | Yazılım mühendisliği uygulamalarında kullanılan standartlar hakkında bilgi. | |||||
12 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi. | |||||
13 | Girişimcilik ve yenilikçilik hakkında farkındalık. | |||||
14 | Sürdürülebilir kalkınma hakkında bilgi. | |||||
15 | Yazılım mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi. | X | ||||
16 | Mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık. | |||||
17 | Yazılım alternatiflerini irdeleyerek bilgisayar tabanlı sistemlerin modellenmesi ve tasarımında, algoritma prensiplerini, matematiksel temelleri ve bilgisayar bilimleri teorisini uygulama becerisi. | X | ||||
18 | Yazılım sistemlerinin analiz, tasarım, uygulama, doğrulama, geçerleme ve bakım süreçlerini uygulayarak geliştirilmesinde mühendislik yaklaşımlarını uygulama becerisi. | X |
ECTS/İş Yükü Tablosu
Aktiviteler | Sayı | Süresi (Saat) | Toplam İş Yükü |
---|---|---|---|
Ders saati (Sınav haftası dahildir: 16 x toplam ders saati) | |||
Laboratuar | |||
Uygulama | |||
Derse Özgü Staj | |||
Alan Çalışması | |||
Sınıf Dışı Ders Çalışma Süresi | 16 | 2 | 32 |
Sunum/Seminer Hazırlama | |||
Projeler | |||
Raporlar | |||
Ödevler | 3 | 4 | 12 |
Küçük Sınavlar/Stüdyo Kritiği | |||
Ara Sınavlara/Ara Juriye Hazırlanma Süresi | |||
Genel Sınava/Genel Juriye Hazırlanma Süresi | 1 | 15 | 15 |
Toplam İş Yükü | 59 |