BİL694 - ÇİZGE KURAMI

Dersin Adı Kodu Yarıyılı Teori
(saat/hafta)
Uygulama
(saat/hafta)
Yerel Kredi AKTS
ÇİZGE KURAMI BİL694 Herhangi Yarıyıl/Yıl 3 0 3 8
Önkoşul(lar)-var ise
Dersin DiliTürkçe
Dersin TürüSeçmeli 
Dersin verilme şekliYüz yüze 
Dersin öğrenme ve öğretme teknikleriAnlatım
Sorun/Problem Çözme
 
Dersin sorumlusu(ları)Bölüm Sorumluları (bbm-bologna@cs.hacettepe.edu.tr) 
Dersin amacıBu dersin amacı, çeşitli alanlardaki problemleri çözmek için kullanılabilecek güçlü bir modelleme aracı olan çizge kavramını vermektir. 
Dersin öğrenme çıktıları
  1. Dersin başarılı biçimde tamamlanması üzerine, öğrenciler: ? Farklı alanlarda yer alan problemlerin modellenmesi ve çözümünde çizge kuramının soyut kavramlarını uygulama ? Zaman çizelgeleme problemlerini çözmede çizge kullanma ? Euler ve Hamilton çizgelerini anlama ? Düzlemsel çizge ve teorisini anlama ? Bir çizgeyi boyamak için renklendirme algoritmalarını kullanabilme yeteneklerine kavuşacaklardır.
Dersin içeriğiTemel kavramlar, Özel çizgeler, Eşbiçimlilik, Erişebilirlik, Düzlemsellik, Eular ve Hamilton çizgeleri, Düğüm boyama, Maksimum akış 
Kaynaklar? Ronal Gould,?Graph Theory?, Ben/Cummings Pub.,1988
? M.N.S. Swamy, K. Thulasiraman,? Graphs, networks, and algorithms?, New York : Wiley, 1981
 

Haftalara Göre İşlenecek Konular

HaftalarKonular
1. HaftaTemel Kavramlar : Yönsüz, yönlü çizge, basit çizge, derece toplamlarına ilişkin teorem, kenar ve düğüm indirimli alt çizgeler, yürüyüş, iz, yol, döngü
2. HaftaÖzel Çizgeler: Tam, düzenli, ikiye ayrılır, tam ikiye ayrılır çizgeler, bitişiklilik, bileşenler, tümleyen, Ramsey problemi
3. HaftaEşbiçimlilik, Erişilebilirlik ve uzaklık, Warshall algoritması Çizge işlemleri(düğüm kaydırma, kenar kaydırma, kesme düğümü, köprü)
4. HaftaDüzlemsellik: Düzlemsel çizgeler, eular formülü, Kuratowski teoremi, düzlemselliğin diğer özellikleri, bir düzlemsellik algoritması
5. HaftaDerece dizileri: Havel Hakimi teoremi, Erdös-Gallai teoremi, Çizge dizisi testi
6. HaftaArasınav
7. HaftaEn kısa yol, minimum yayılım ağacı: Dijkstra?ın algoritması , Kruskal?ın algoritması, Prim?in algoritması
8. HaftaEular çizgesi: Eular döngüsü, eular izi, bazı teoremler, önce derinliğine arama, Fleury?un algoritması, Hieholzer?in algoritması
9. Haftaİki bitişiklilik ve güçlü bitişiklilik: İki bitişiklilik algoritması, yönlü çizgeler için önce derinliğine arama, güçlü bitişiklilik algoritması
10. HaftaHamilton çizgesi: Hamilton çizgesi üzerine bazı teoremler Bondy-Chvâtal koşuluna dayalı bir algoritma
11. HaftaArasınav
12. HaftaDüğüm boyama: Renk sayısı, bağımsız küme, 4 renk teoremi, düğüm boyama üzeriene bazı teoremler, sıralı boyama algoritması, Brelaz?ın renk dereceli algoritması
13. HaftaMaksimum akış: Akış ağları, akış ağlarında kesmeler, temel ford-Fulkerson algoritması
14. HaftaBazı özel çizge uygulamaları
15. HaftaGenel sınava hazırlık
16. HaftaGenel sınav

Değerlendirme Sistemi

Yarıyıl içi çalışmalarıSayısıKatkı Payı %
Devam (a)00
Laboratuar00
Uygulama00
Alan Çalışması00
Derse Özgü Staj (Varsa) 00
Ödevler410
Sunum00
Projeler110
Seminer110
Ara Sınavlar2020
Genel sınav150
Toplam100
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı050
Yarıyıl Sonu Sınavının Başarı Notuna Katkısı050
Toplam100

AKTS (Öğrenci İş Yükü) Tablosu

Etkinlikler Sayısı Süresi Toplam İş Yükü
Ders Süresi 12 3 36
Laboratuvar 0 0 0
Uygulama000
Derse özgü staj (varsa)000
Alan Çalışması000
Sınıf Dışı Ders Çalışma Süresi (Ön Çalışma, pekiştirme, vb)41040
Sunum / Seminer Hazırlama12020
Proje12525
Ödevler41040
Ara sınavlara hazırlanma süresi22040
Genel sınava hazırlanma süresi11515
Toplam İş Yükü25103216

Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi

D.9. Program YeterlilikleriKatkı Düzeyi*
12345
1. Mezunlar, Bilgi Yığını (Bilgisayar Bilimleri kapsamındaki tüm temel alanlar) ile tanımlanan Bilgisayar Bilimleri alanına hakim olmalıdır.    X
2. Mezunlar, soyutlama, karmaşıklık ve evrimsel değişim gibi sıkça adı geçen konular ve ortak kaynak, güvenlik ve paralellik gibi genel ilkeler hakkında bir anlayışa sahip olmalıdır. Mezunlar, bu konular ve ilkelerin bilgisayar bilimleri alanında geniş bir uygulama alanına sahip olduğunun farkında olmalı ve bunların sadece tanıtıldıkları alanlarla ilgili olmadığını da göz önünde bulundurmalıdır.    X
3. Bilgisayar Bilimlerindeki temel bir husus teori ve pratiğin karşılıklı etkileşimine dair anlayış ve onlar arasındaki esas bağlantılardır. Bilgisayar Bilimlerinden mezun olanlar teori ve pratiğin nasıl birbirini etkilediğini anlamak durumundadır.    X
4. Bilgisayar Bilimlerinden mezun olanlar detay ve soyutlamanın farklı düzeylerinde düşünmelidir. Bu anlayış, bilgisayar sistemlerinin yapısını ve onların kurulumunda ve analizinde izlenen süreçlerin değerini anlamak için çeşitli bileşenlerin detaylarının gerçekleştirilmesinde etkin olmalıdır. Mezunlar, bir bilgisayar sisteminin, insanlar ve fiziksel dünyayı da kapsayacak şekilde hangi ortamda işlevsel olabileceğinin farkında olmalıdır.    X
5. Mezunlar, sadece kod yazma ve bitlerle oynama değil, aynı zamanda edindikleri bilgi birikimini araştırmalarındaki gerçek problemleri çözmede de kullanabilmelidir. Mezunlar herhangi bir teknik veya bilimsel problemleri kendi başlarına çözebilmeli ve her türlü problem için başka çözüm önerileri getirebilmelidir. Verilen bir problemin birden fazla çözümünün olduğunun ve bu çözümler arasından birini seçmenin yalnızca teknik bir eylem olmadığının, çünkü bu çözümlerin insanların hayatlarında gerçek bir    X
6. Mezunların edindikleri bilgi birikimini başarılı bir şekilde uyguladıklarından emin olmak için, bütün mezunlar en az bir kapsamlı projede yer almalıdır. Çoğu durumda, bu deneyim bir yazılım geliştirme projesi olacaktır, ancak diğer deneyimler de özel durumlarda uygundur. Bunun gibi projeler öğrencileri birleştirici olmaya teşvik etmeli, potansiyel çözümlerin hesaplamalarını gerektirmeli ve tipik ders projelerine göre daha geniş ölçekli çalışmalar yapmalarını gerektirmelidir. Öğrenciler, proje de  X  
7. Bilgisayar Bilimleri mezunları, hesaplama alanının çok hızlı bir şekilde geliştiğinin farkında olmalıdır. Belirli diller ve teknoloji platformları zaman içinde değişebilir. Bu nedenle, mezunlar öğrenmeye devam etmeleri ve becerilerini de bu yönde geliştirmeleri gerektiğinin farkında olmalıdır. Bu beceriyi geliştirmek için, öğrenciler eğitimleri boyunca temel öncelikli ilkelerin yanında çeşitli programlama dillerine, araçlara ve teknolojilere maruz bırakılmalıdır. Mezunlar araştırmalarına devam e   X 
8. Mezunlar, bilgisayar teknolojisinin kurulumu ve kullanımında sosyal, yasal, etik ve kültürel hususların farkında olmalıdır. Bu hususlara kişisel ve profesyonel ilkelerle güdümlenmiş olarak bilinçli bir perspektiften yanıt vermelilerdir. Aynı zamanda sosyal, yasal ve etik standartların uluslar arası olarak değiştiğinin farkında olmalıdırlar.  X  
9. Mezunlar hem İngilizce hem de Türkçe dillerinde teknik terimlere vakıf olmalıdır. Teknik problemler ve çözümleri hakkında çeşitli dinleyici gruplarına kısa ve öz sunum yapma becerileri olmalıdır. Bu, yüz yüze, yazılı veya elektronik iletişimi içerebilir (Türkçe ve İngilizce'de). Takım üyeleri halinde etkili bir şekilde çalışmaya hazırlıklı olmalıdırlar. Mezunlar, tamamlama zamanını, öncelikleri ve ilerlemeyi de göz önünde bulundurarak kendi öğrenme ve gelişimlerini yönetebilmelidir.   X 
10. Platformlar, gömülü mikro-sensörlerden yüksek performanslı öbeklere ve dağıtık bulutlara kadar değişebilir. Bilgisayar uygulamaları modern yaşamın neredeyse bütün yönleri üzerinde etkilidir. Mezunlar hesaplamada var olan bütün imkanlar üzerinde bir anlayışa sahip olmalıdır.  X  
11. Mezunlar, hesaplamanın birçok farklı alanla etkileşim içerisinde olduğunu anlamalıdır. Birçok problem için çözümler hem hesaplama becerileri hem de alan bilgisi gerektirir. Bu nedenle, mezunlar kariyerleri boyunca farklı alanlardaki uzmanlarla iletişim kurmalı ve onlardan öğrenmelidir.    X
12. Mezunlar, uzman düzeyinde gerekli olan bilgi birikimlerini geliştirmeli ve bilimsel yöntemleri bilimsel problemleri çözmek için kullanabilmelidir. Mezunlar özgün araştırma tanımlayabilmeli ve yürütebilmelidir.    X

*1 En düşük, 2 Düşük, 3 Orta, 4 Yüksek, 5 Çok yüksek