BİLGİSAYAR MÜHENDİSLİĞİ (YL) (TEZLİ) (İNGİLİZCE)
Yüksek Lisans TYYÇ: 7. Düzey QF-EHEA: 2. Düzey EQF-LLL: 7. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: 3017002008
Ders İsmi: Theory of Error Correcting Codes
Ders Yarıyılı: Güz
Ders Kredileri:
Teorik Pratik Kredi AKTS
3 0 3 6
Öğretim Dili: EN
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: Hayır
Dersin Türü: Department Elective
Dersin Seviyesi:
Yüksek Lisans TYYÇ:7. Düzey QF-EHEA:2. Düzey EQF-LLL:7. Düzey
Dersin Veriliş Şekli: Yüz yüze
Dersin Koordinatörü: Dr.Öğr.Üyesi Recep DURANAY
Dersi Veren(ler):
Dersin Yardımcıları:

Dersin Amaç ve İçeriği

Dersin Amacı: Amaç, hata düzelten ve hızlı kodlama ve dekodlama algoritmalarına sahip kod inşa etmektir. Dersin temel amacı, cebirsel kodlama teorisini ve temellerini tanıtmaktır. Ders; matematik, mühendislik ve bilgisayar bilimlerini temelli yüksek lisans düzeyinde bir derstir.
Dersin İçeriği: Kanal kodlaması, Galois cisimleri, sonlu cisimler üzerinde lineer(doğrusal) kodlar, bir lineer kod ile kodlama ve dekodlama, kendine dual kodlar, yeni kod elde etme, devirli kodlar, optimal kodlar, kodlar için üst ve alt sınırlar, MacWilliams bağıntıları, bazı önemli kod aileleri: Hamming kodlar, Golay kodlar, Reed Muller kodlar, Reed Solomon kodlar.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
Öğrenme Kazanımları
1 - Bilgi
Kuramsal - Olgusal
1) Dijital veri transferinin matematiksel altyapısının öğrenilmesi.
2 - Beceriler
Bilişsel - Uygulamalı
1) Güvenilir veri transferi için matematiksel altyapının kullanılması becerisi.
3 - Yetkinlikler
İletişim ve Sosyal Yetkinlik
Öğrenme Yetkinliği
Alana Özgü Yetkinlik
Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği

Ders Akış Planı

Hafta Konu Ön Hazırlık
1) Hata düzeltme ve olasılık teori, kodlama teorisinde temel tanımlar, doğrusal (lineer) kodlar, üreteç ve kontrol matrisleri, dual kodlar, ağırlık ve uzaklıklar. Ders Kitabı
1) Hata düzeltme ve olasılık teori, kodlama teorisinde temel tanımlar, doğrusal (lineer) kodlar, üreteç ve kontrol matrisleri, dual kodlar, ağırlık ve uzaklıklar. Ders Kitabı
2) Mevcut kodlardan yeni kod inşası, kodların denkliği, Hamming kodlar, Golay kodlar, Reed Muller kodlar. Ders Kitabı
3) Kodlama, dekodlama, En Yakın Komşu algoritması, kosetler, sendrom dekodlaması. Ders kitabı
4) Singleton sınırı ve MDS kodlar, küre paketleme sınırı ve mükemmel kodlar, Plotkin sınırı, lineer programlama sınırı, Griesmer sınırı. Ders kitabı
5) Sonlu cisimlere giriş ve temel tanımlar, polinomlar ve Öklid algoritması, sonlu cisimlerin inşa edilmesi, alt cisimler. Ders kitabı
6) Devirli kosetler ve minimal polinomlar, iz ve alt cisim kodları, x^n-1 polinomunu çarpanlara ayrılışı, devirli kodlar için temel tanım ve teoremler, idempotentler, bir devirli kodun sıfırları. Ders kitabı
7) Devirli kodlar ve Magma programında uygulama, BCH kodlar ve tanımı, BCH kodlarla kodlama ve dekodlama (kod çözme). Ders kitabı
8) Ara Sınav
9) MacWilliams denlikleri, sonlu cisimler üzerinde kendine dual kodların yapısı ve özellikleri, kendine dual kodların inşası. Ders kitabı
10) Bazı önemli kendine-dual kod aileleri (Hamming kodlar,Golay kodlar), Reed Solomon kodlar, genelleştirilmiş Reed–Solomon kodlar. Ders kitabı
11) Alternant kodlar, Goppa kodlar ve özellikleri. Ders kitabı
12) Cebirsel geometriye giriş, afin uzay, projektif uzay, cebirsel eğriler, cebirsel geometri kodlar. Ders kitabı
13) Şifrelemeye giriş, temel algoritmalar, Goppa kodlar ve dekodlama problemi. Ders kitabı
14) Niderrieter kriptosistemi, McEliece kriptosistemi. Ders kitabı
15) Shor algoritması, sistem saldırıları. Ders kitabı

Kaynaklar

Ders Notları / Kitaplar: 1. Coding Theory: A First Course, San Ling, Chaoping Xing.
2. Fundamentals of Error Correcting Codes, V. Cary Huffman and Vera Pless.
Diğer Kaynaklar: 1. Coding Theory: A First Course, San Ling, Chaoping Xing.
2. Fundamentals of Error Correcting Codes, V. Cary Huffman and Vera Pless.

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

Program Kazanımları
1) Bilgisayar Bilimi ve Mühendisliği alanında bilimsel araştırma yaparak geniş ve derin bilgilere ulaşma, değerlendirme, yorumlama ve uygulama becerisi.
2) Sınırlı ya da eksik bilgiyi kapatmak ve uygulamak için bilimsel yöntemleri kullanma ve farklı disiplinlerin bilgilerini bütünleştirme kabiliyeti.
3) Bilgisayar Bilimi ve Mühendisliği problemlerini kurgulayabilme, problemleri çözmek için yöntemler geliştirebilme ve çözümde yenilikçi yöntemler kullanabilme.
4) Yeni ve/veya orijinal fikirler ve algoritmalar geliştirme becerisi; sistem, bileşen veya süreç tasarımında yenilikçi çözümler geliştirmek.
5) Bilgisayar Mühendisliğinde uygulanan güncel teknikler ve yöntemler ve bunların kısıtları hakkında geniş bilgi sahibi olma kabiliyeti.
6) Analitik modelleme ve deneysel araştırma tasarlama ve uygulama, süreçte karşılaşılan karmaşık durumları çözme ve yorumlama becerisi.
7) Bir yabancı dili (İngilizce) en az Avrupa Dil Portföyü seviyesinde sözlü ve yazılı iletişimde kullanabilme kabiliyeti.
8) Çok disiplinli ekiplerde liderlik etme, karmaşık durumlara çözüm geliştirme ve sorumluluk alma kabiliyeti.
9) Toplumsal, yasal, etik ve ahlaki değerlerin bilincinde olmak ve bu değerler çerçevesinde araştırma ve uygulama çalışmaları yapabilmek.
10) Bilgisayar Bilimi ve Mühendisliği alanında yeni ve gelişmekte olan uygulamalar hakkında farkındalık ve bunları inceleme ve gerekirse öğrenme kabiliyeti.

Ders - Öğrenme Kazanımı İlişkisi

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) Bilgisayar Bilimi ve Mühendisliği alanında bilimsel araştırma yaparak geniş ve derin bilgilere ulaşma, değerlendirme, yorumlama ve uygulama becerisi.
2) Sınırlı ya da eksik bilgiyi kapatmak ve uygulamak için bilimsel yöntemleri kullanma ve farklı disiplinlerin bilgilerini bütünleştirme kabiliyeti.
3) Bilgisayar Bilimi ve Mühendisliği problemlerini kurgulayabilme, problemleri çözmek için yöntemler geliştirebilme ve çözümde yenilikçi yöntemler kullanabilme.
4) Yeni ve/veya orijinal fikirler ve algoritmalar geliştirme becerisi; sistem, bileşen veya süreç tasarımında yenilikçi çözümler geliştirmek.
5) Bilgisayar Mühendisliğinde uygulanan güncel teknikler ve yöntemler ve bunların kısıtları hakkında geniş bilgi sahibi olma kabiliyeti.
6) Analitik modelleme ve deneysel araştırma tasarlama ve uygulama, süreçte karşılaşılan karmaşık durumları çözme ve yorumlama becerisi.
7) Bir yabancı dili (İngilizce) en az Avrupa Dil Portföyü seviyesinde sözlü ve yazılı iletişimde kullanabilme kabiliyeti.
8) Çok disiplinli ekiplerde liderlik etme, karmaşık durumlara çözüm geliştirme ve sorumluluk alma kabiliyeti.
9) Toplumsal, yasal, etik ve ahlaki değerlerin bilincinde olmak ve bu değerler çerçevesinde araştırma ve uygulama çalışmaları yapabilmek.
10) Bilgisayar Bilimi ve Mühendisliği alanında yeni ve gelişmekte olan uygulamalar hakkında farkındalık ve bunları inceleme ve gerekirse öğrenme kabiliyeti.

Öğrenme Etkinliği ve Öğretme Yöntemleri

Bireysel çalışma ve ödevi
Grup çalışması ve ödevi
Ödev
Soru cevap/ Tartışma

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Ödev
Bireysel Proje

Ölçme ve Değerlendirme

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Ödev 1 % 30
Projeler 1 % 0
Ara Sınavlar 1 % 30
Yarıyıl/Yıl Sonu Sınavı 1 % 40
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 60
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 40
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı Süre (Saat) İş Yükü
Ders Saati 14 3 42
Proje 1 50 50
Ödevler 1 70 70
Ara Sınavlar 1 3 3
Final 1 3 3
Toplam İş Yükü 168