BİLGİ TEKNOLOJİLERİ (YL) (TEZLİ) (İNGİLİZCE) | |||||
Yüksek Lisans | TYYÇ: 7. Düzey | QF-EHEA: 2. Düzey | EQF-LLL: 7. Düzey |
Ders Kodu: | 3000003001 | ||||||||
Ders İsmi: | Advanced Algorithms | ||||||||
Ders Yarıyılı: | Bahar | ||||||||
Ders Kredileri: |
|
||||||||
Öğretim Dili: | EN | ||||||||
Ders Koşulu: | |||||||||
Ders İş Deneyimini Gerektiriyor mu?: | Hayır | ||||||||
Dersin Türü: | Uzmanlık Alanı Zorunlu | ||||||||
Dersin Seviyesi: |
|
||||||||
Dersin Veriliş Şekli: | Yüz yüze | ||||||||
Dersin Koordinatörü: | Doç. Dr. Fatih KOÇAN | ||||||||
Dersi Veren(ler): |
Prof. Dr. Naim Mahmood Musleh AJLOUNI |
||||||||
Dersin Yardımcıları: |
Dersin Amacı: | Kursu başarıyla tamamladıktan sonra öğrenciler aşağıdaki konuları öğreneceklerdir: 1) NP-Zor Problemler için Yaklaşım Algoritması Tasarımı 2) Çevrimiçi algoritma tasarımı 3) Öğrenme algoritması tasarımı 4) Akış algoritması tasarımı |
Dersin İçeriği: | Bu derste algoritma tasarlama ve analiz etme tekniklerini inceleyeceğiz. Lisans algoritmaları dersleri tipik olarak kesin, verimli (polinom zamanlı) algoritmalar tasarlama tekniklerini kapsar. Bu dersin odak noktası farklıdır. Polinom zaman kesin algoritmalarının bilinmediği problemleri, katı kaynak kısıtlamaları altındaki problemleri ve optimallik kavramının iyi tanımlanmadığı problemleri ele alacağız. Her durumda, performansları üzerinde kanıtlanabilir garantileri olan verimli algoritmalar tasarlamaya odaklanacağız. |
Bu dersi başarıyla tamamlayabilen öğrenciler;
|
Hafta | Konu | Ön Hazırlık |
1) | Takdim, Aç Gözlü Algoritmalar, Böl-ve-Çöz Algoritmaları ve Dinamik Programlama algoritmaları | Chawla'nın 1. ve 2. dersi |
2) | Dinamik Programlama II ve Ağ Akışı | chawla'nın 3. ve 4. ders notları |
3) | Ağ akışı uygulamaları, Rastgele algoritmalar | Chawla'nın 5. ve 6. ders notları |
4) | Rastgele yük dengeleme ve hashing (özütleme), Hashing ve NP-Tamlık | Chawla'nın 7.ve 8. ders notları |
5) | NP-Tamlık, Yaklaşım Algoritmaları, Yerel Arama Tabanlı Yaklaşım | Chawla'nın 9. ve 10. ders notları |
6) | Tesis Konumu devamı., Doğrusal Programlama, Rastgele yuvarlama, konsantrasyon sınırları | Chawla'nın 11. ve 12. ders notları |
7) | Rastgele yuvarlama (devamı), LP dualitesi, Primal-Dual Algoritmalar | Chawla'nın 13. ve 14. ders notları |
8) | Primal-Dual Algoritmalar, Minimax Teoremi ve Yarı Kesin Programlama | Chawla'nın 15. ve 16. ders notları |
9) | Primal-Dual Algoritmalar, Minimax Teoremi ve Yarı Kesin Programlama | Chawla'nın 17. ve 18. ders notları |
10) | SDP ile Max-Cut devamı, Akış Algoritmaları, Akış Algoritmaları(devamı) | Chawla'nın 19. ve 20. ders notları |
11) | Akış algoritmaları (devamı) ve Çevrimiçi algoritmalar, Önbelleğe Alma Algoritmaları | Chawla'nın 21. ve 22. ders notları |
12) | Önbelleğe alma ve K-Sunucu problemi, k-sunucu Problemi(devam); Çevrimiçi öğrenme | Chawla'nın 23. ve 24. ders notları |
13) | Ağırlıklı Çoğunluk, Hataya Bağlı Model ve Winnow Algoritması, MB Modeli, Perceptron Alg. ve PAC Modeli | Chawla'nın 25. ve 26. ders notları |
14) | PAC Modelinde Güçlendirme, PAC Öğrenimi | Chawla'nın 27. ve 28. ders notları |
15) | Rastgele Yürüyüşler ve Markov Zincirleri, Rastgele Yürüyüşler ve Markov zincirleri: direnç yöntemi. | Chawla'nın 29. ve 30. ders notları |
Ders Notları / Kitaplar: | Shuchi Chawla's lecture notes on Advanced Algorithms |
Diğer Kaynaklar: | Algorithm Design by John Kleinberg and Eva Tardos 40 Algorithms Every Programmer Should Know: Python algorithms to live by to enhance your problem-solving skills, 2nd Edition by Imran Ahmad Algorithms for VLSI Design Automation by Sabih H. Gerez |
Ders Öğrenme Kazanımları | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Program Kazanımları | |||||||||||
1) Yazılım mühendisliği, veri yönetimi ve bilgisayar güvenliği gibi temel bilgi teknolojilerindeki güncel teknik kavramları ve uygulamaları kullanma becerisi. | |||||||||||
2) Kullanıcı ihtiyaçlarının belirlenmesi, analiz edilmesi ve bilgisayar tabanlı sistemlerin seçiminde, değerlendirilmesinde ve yönetiminde kullanımının anlaşılması. | |||||||||||
3) Veri yapılarını kullanma ve algoritma geliştirme becerisi. | |||||||||||
4) Karmaşık büyük veri sistemlerini analiz etme ve yorumlama becerisi. | |||||||||||
5) Makine öğrenmesindeki kavram ve algoritmaların yorumlanması ve uygulanması becerisi. | |||||||||||
6) Veri analizi alanındaki derin öğrenmenin Matematik temellerinin anlaşılması ve teoriyi uygulama becerisi. | |||||||||||
7) Karmaşık veri yapılarını çözme, derin öğrenme modelleri geliştirme ve uygulama becerisi ve bu konularla ilgili yapay zeka odaklı araştırmaları yorumlama becerisi. | |||||||||||
8) Görüntü analizi, doğal dil işleme ve öneri sistemlerindeki sorunları çözmek için derin öğrenme tekniklerini uygulama ve gerçek dünya veri kümeleri ve projelerini yorumlama becerisi. | |||||||||||
9) Dijital sinyal işlemenin temel prensiplerini ve matematiksel altyapısını pratik uygulamalara aktarma becerisi. | |||||||||||
10) İnternet aracılığıyla kullanılan araç ve teknolojiler ile sunucu kodlama dilleri ve araçları için kullanılan farklı teknolojiler hakkında bilgi kazanılması. | |||||||||||
11) Tek hücreli organizmalarda genetik bilgi akışı ve çok hücreli organizmalarda genlerin nasıl işlediğinin anlaşılması ve biyoteknoloji alanındaki uygulamaları yorumlama ve uygulama becerisi. | |||||||||||
12) Etik değerlerin bilincinde olunması ve bu değerler çerçevesinde araştırma ve uygulama yapılması gerekliliğinin anlaşılması. |
Etkisi Yok | 1 En Düşük | 2 Düşük | 3 Orta | 4 Yüksek | 5 En Yüksek |
Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
1) | Yazılım mühendisliği, veri yönetimi ve bilgisayar güvenliği gibi temel bilgi teknolojilerindeki güncel teknik kavramları ve uygulamaları kullanma becerisi. | |
2) | Kullanıcı ihtiyaçlarının belirlenmesi, analiz edilmesi ve bilgisayar tabanlı sistemlerin seçiminde, değerlendirilmesinde ve yönetiminde kullanımının anlaşılması. | |
3) | Veri yapılarını kullanma ve algoritma geliştirme becerisi. | |
4) | Karmaşık büyük veri sistemlerini analiz etme ve yorumlama becerisi. | |
5) | Makine öğrenmesindeki kavram ve algoritmaların yorumlanması ve uygulanması becerisi. | |
6) | Veri analizi alanındaki derin öğrenmenin Matematik temellerinin anlaşılması ve teoriyi uygulama becerisi. | |
7) | Karmaşık veri yapılarını çözme, derin öğrenme modelleri geliştirme ve uygulama becerisi ve bu konularla ilgili yapay zeka odaklı araştırmaları yorumlama becerisi. | |
8) | Görüntü analizi, doğal dil işleme ve öneri sistemlerindeki sorunları çözmek için derin öğrenme tekniklerini uygulama ve gerçek dünya veri kümeleri ve projelerini yorumlama becerisi. | |
9) | Dijital sinyal işlemenin temel prensiplerini ve matematiksel altyapısını pratik uygulamalara aktarma becerisi. | |
10) | İnternet aracılığıyla kullanılan araç ve teknolojiler ile sunucu kodlama dilleri ve araçları için kullanılan farklı teknolojiler hakkında bilgi kazanılması. | |
11) | Tek hücreli organizmalarda genetik bilgi akışı ve çok hücreli organizmalarda genlerin nasıl işlediğinin anlaşılması ve biyoteknoloji alanındaki uygulamaları yorumlama ve uygulama becerisi. | |
12) | Etik değerlerin bilincinde olunması ve bu değerler çerçevesinde araştırma ve uygulama yapılması gerekliliğinin anlaşılması. |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Toplam | % | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 0 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % | |
Toplam | % |
Aktiviteler | Aktivite Sayısı | Süre (Saat) | İş Yükü |
Ders Saati | 15 | 3 | 45 |
Proje | 1 | 60 | 60 |
Ödevler | 14 | 4 | 56 |
Ara Sınavlar | 1 | 3 | 3 |
Final | 1 | 3 | 3 |
Toplam İş Yükü | 167 |