Mikro-işlemci yapı ve işleyiş temelleri; veriyolu organizasyonu; komut kümesi; adresleme yöntemleri; saat ve zamanlama analizleri; iş kesme altprogramları; bellek (RAM ve ROM); DMA, seri ve parallel giriş/çıkış; çevirici dili ile programlama.
Bu ders, mobil cihazlar uzerinde yazilim ortamlari ve dillerini kapsamaktadır. Mobil cihaz mimarisi ve yazılım geliştirme ortamları, MIDP Uygulama Modeli, Kullanıcı Arayüzü Kütüphaneleri, Yüksek Seviye Kullanıcı Arayüzü Bileşenleri, Alçak Seviye Kullanıcı Arayüzü Kütüphaneleri, MIDP veritabanı kütüphaneleri. Mobil cihaz işletim sistemi ortamları ve Symbian, Android, Mobile Windows derste işlenmektedir.
Yapay zeka kavramlarını tanıtma; etmen tabanlı düşünme; bilgili ve bilgisiz arama; kısıt sağlanma problemleri; bilgi temsili; mantık; makina öğrenmesi tanımı ve yapay zeka ile bağlantıları; belirsizliği temsil etme; markov karar süreçleri; görüntü işleme, robotik, dil ve oyunlardan örnekler
Dersin açıldığı dönemde içeriği açıklanacaktır.
Dersin açıldığı dönemde içeriği açıklanacaktır.
Üçüncü yılını tamamlayan öğrencilerin yaz stajı programı kapsamında endüsti tecrübesi kazanabilecekleri bir iş yerinde en az 20 iş günü çalışmaları gerekmektedir. Çalışmanin içeriği bölüm tarafından hazırlanmış olan Yaz stajı kılavuz kitapçığına göre belirlenir.Öğrencilerin endüstride uygulamalı bilgi ve tecrübe kazanmaları temel alınır.
Ses ve konuşma sistemleri, fonetik ve fonoloji bilgisi, konuşma işareti özellikleri ve tanımları, perde ve formantların rolu, perde ölçekli ve zaman ölçekli konuşma değiştirmeleri, konuşma kodlama yöntemleri ve internet üzerinden konuşma iletişimi (VoIP) sistemleri, örgü ve konuşma tanıma ana yöntemleri, konuşma tanıma için arama algoritmaları.
Bilgisayar sistemlerinde hesaba dayalı görsel algılama modelleri ve bunların gerçekleştirimi. İmge oluşumu; kenar, köşe ve sınır çıkarımı; bölütleme, eşleştirme, örüntü tanıma ve sınıflandırma teknikleri; üç boyutlu görme: izdüşüm geometrisi, kamera kalibrasyonu, stereo/silüet/tonlama bilgisinden şekil, model tabanlı 3B nesne tanıma; renk, doku, radyometri ve BDRF; devinim analizi.
Üç boyutlu bilgisayar grafiği kuramı ve uygulamaları. Grafik sistemleri ve modelleri; geometrik gösterimler ve dönüşümler; grafik programlama; girdi ve etkileşim; bakma ve izdüşüm; bileştirme ve karıştırma; ışıklandırma ve renk modelleri; tonlama; doku yapıştırma; canlandırma; görsel gerçekleme; sıradüzensel ve nesne yönelimli modelleme; sahne çizgeleri; 3B geriçatım ve modelleme.
Dağıtık sistemlerin ilkeleri ve kavramları, arakatman yazılımı, eş seviyede sistemler ve algoritmalar, tasarım ve uygulama konuları, sanallaştırma, dağıtık sistemlerde iletişim ve koordinasyon, çoğa dağıtım modeli, seçim algoritmaları, karar ve eşgüdüm protokolleri, çoğa dağıtım modeli, koşutzaman denetimi, kayıp kurtarımı, hata toleransı, bulut bilişim.
Bilgisayar ağları ve ağ protokollerinin temelleri; uygulama, aktarım, ağ ve bağlantı katmanları odaklı İnternet protokol yığını; istemci/sunucu ve görevdeş modeller; yönlendirme algoritmaları; güvenilir veri aktarımı; akış ve tıkanıklık denetimi; protokol tasarımı ve analizi; ağ başarım ölçütleri; yazılım tanımlı ağlar; ağ programlama ve dağıtık uygulamalar.
Yeni nesil haberleşme sistemleri, kablosuz hücresel ağlar, makineden makineye haberleşme, Nesnelerin Interneti, yazılım tanımlı ağlar, fiziksel katman veri iletimi, kanal yayılım özellikleri, modülasyon, demodülasyon, ortam erişim kontrol katmanı, veri bağlantı katmanı, ileri ve geri hata kontrol, yönlendirme katmanı, optimal yönlendirme, taşıma katmanı, akış kontrolü, tıkanıklık kontrolü
Temel koşut-zaman kavramları. Paralel mimariler, çok çekirdekli işlemciler, heterojen sistemler, ortak bellek ve dağıtık bellek mimarileri. Paralel programlama modelleri ve dilleri. Çok-örgülü, mesaj geçirme, veri güdümlü, veri paralel programlama. Paralel program tasarımı, ayrışma, tanesellik ölçüsü, yerellik, iletişim, yük dağılımı ve asekron programlama. Performans modelleme, paralelleştirmenin getirdiği ek yükler.
Bilgisayar güvenliği teknikleri, geleneksel şifreleme, açık anahtarlı şifreleme sistemi, anahtar yönetimi, ileti doğrulama, kıyım fonksiyonu ve algoritmaları, sayısal imza, doğrulama protokolleri, erişim denetim mekanizmaları, ağ güvenlik pratiği, TCP/IP güvenliği, Web güvenliği, SSL, hizmeti-engelleme saldırıları, izinsiz giriş sezme, virüsler.
Akıllı İnsan-Bilgisayar Arayüzleri'nin bilgisayarlı görme, öğrenme, örüntü tanıma, yapay zeka teknolojileri kullanarak tasarımı, gerçekleştirimi, test edilmesi. Destekleyici metodlar (sınıflandırma, regresyon, çok kipli bilgi birleştirme, nesne tanıma); teknolojiler (bakış takibi, hareket tanıma); donanımlar (dokunsal araçlar, kalem temelli bilgi giriş araçları, kamera ve mikrofon dizileri).
Makine öğrenimi ve veri madenciliği alanlarına istatistik bakış açısından giriş. Makine öğrenimi deneyim ile otomatik olarak iyileşen bilgisayar yazılımlarının incelenmesidir. Biyolojiden finansa ve dilbilime kadar birçok değişik alanda yaratılan çok miktardaki veri makine öğrenimi araç ve yöntemlerinin iyi anlaşılmasını zorunlu kılmaktadır. İncelenen konular arasında regresyon, sınıflama, çekirdek yöntemleri, model seçimi ve değerlendirilmesi, arttırma, sinir ağları, destek vektör makineleri, en yakın komşu ve denetlenmeyen öğrenme
Doğal dil işlemede temel kavramlar ve güncel araştırmalar. Dil verilerini işleyen algoritmalar. İnsan dilinin bilişimsel özellikleri. Bicımbirimsel, sözdizimsel ve anlamsal seviyelerde analiz. Büyük derlem kullanımı, istatistiksel analiz ve öğrenme algoritmaları gibi modern sayısal tekniklerin öğrenme, anlam belirsizliği, cümle çözümleme gibi problemlere uygulanması. Otomatik tercüme ve soru cevaplama gibi uygulamalar.
Kriptolojik sistemlere giriş. Simetrik şifreleme, açık anahtar mucizesi, tek-yönlü fonksiyonlar, kıyım fonksiyonları, rastgele sayılar, sayısal imzalar, sıfır-bilgi ile kanıtlama, çağdaş kriptosistemler, çok-ortaklı hesaplama. Kriptoloji uygulamaları, internette alışveriş, BitTorrent görevdeş dosya paylaşım sistemi, bazı eski şifreleme algoritmalarını kırılması.
Veri yapıları, algoritmalar ve ilgili hesaplama karmaşıklıkları.Sönüşür (asimtotik) karmaşıklık ölçütleri. Çizge gösterimleri ve algoritmaları. Çizgelerde dolaşma ve arama. Yönlü çizgeler ve topolojik sıra. Ormanlar ve ağaçlar. Minimum kapsayan ağaç. İki-kısımlı uydurma. Birleşim-aramalı veri yapıları. Yığıtlar. Kıyım algoritmaları. Amortize edilmiş karmaşıklık analizi. Eniyileme algoritmaları. Dinamik programlama. Fırsatçı algoritmalar. En kısa yol algoritmaları. Ağ akışı. Rasgele algoritmalar. Doğrusal programlamaya giriş. NP-completeness kavramına giriş. Karar-verme problemleri. Doğal NP-complete problemler ve yaklaşım algoritmaları. Matris gösterimleri ve algoritmaları.
Dersin açıldığı dönemde içeriği açıklanacaktır.
Dersin açıldığı dönemde içeriği açıklanacaktır.
Biyolojik sistemlerin incelenmesi icin algoritmalar, modeller, veritabanlari. Sekans analizi, karsilastirmalar, veri tabanlarinda benzerlik eslestirmeleri. Filogenetik soy agaclari. Protein dizilerinde kaliplar bulma. Protein uc boyutlu yapi tayini. Homoloji modellemesi, protein katlanma problemi. Simulasyon yontemleri. Proteinler arasi etkilesmeler. Network cesitleri. Sinyal networkleri icin veri tabanlari ve modellemeler. Sinyal netorkleri icin veru madenciligi.
Yazılım güvenilirliğini sağlama amaçlı araç ve teknikler. Belirtim yöntemleri ve dilleri. Modelleme araçları ve dilleri. Birim ve birleştirme sınamaları. Otomatik sınama ve doğrulama araçları ve algoritmaları. Programların ve koşturmaların matematiksel temsili. Hoare mantığı. Modüler kontratlar ile belirtim yazma: İlk- ve son-durum belirtimleri, döngü ve nesne değişmezleri. Sahiplik sistemleri. Otomatik sınama senaryosu üretimi. Model-tabanlı sınama. Sınama yeterliği için kapsama ölçütleri. Güvenilir yazılım için tip ve etki sistemleri. Yazılım model sınayıcılar. Durağan çözümleme. Koşut-zamanlı/çok-örgülü programlar. Koşut-zamanlı programlar için doğruluk kriterleri: yarış durumları, bölünmezlik, sıralanabilirlik ve dizilebilirlik. Koşut-zamanlı programlar için sınama, doğrulama ve hata ayıklama araçları.