proje çalışma konuları

Transkript

proje çalışma konuları
2015-2016 Bahar
PROJE ÇALIŞMA KONULARI
Doç. Dr Ahmet Sayar
KONULAR
Aşağıdaki konu başlıkları ilk etapta anlaşılması ve yapılması zor gelebilir. Ancak, bu konularda gerekli
destek ve bilgi sağlanacaktır. Konuları (zorluk derecesine göre) 2-3 kişilik guruplar halinde alabilirsiniz.
Konu-1 : Büyük nokta verilerinin big-data frameworkleri ile kümelenmesi. Big-data framework olarak
Hadoop kulanılması önerilmektedir. Kümeleme algoritması olarak k-means ya da dbscan algoritmaları
kullanılabilir.
-
Bunun için ilkönce Big data rameworklerinden Hadoop kurulumu gerçeklenecek. İçinde varolan
küçük demo testler yapılacak. WordCount gibi.
Daha sonra Apache Mahout Hadoop üzerinde çalıştırılacak. Mahout’daki hazır kütüphanelerden
kümeleme için varolanlar kullanılacak.
Konu-2 : All pairs shortest path algoritmasının akıllı cep telefonlarında lokasyon tabanlı servislerde
kullanımının araştırılması. Buna bağlı olarak android telefonlarda bir uygulama. Zaman ve en kısa yol
kısıtları altında en uygun yolun seçilmesi ve önerilmesi.
-
-
Bunu bir yol yapımı ya da boru hattı uygulaması olarak da düşünebilirsiniz. En az maliyetle node
ları birbirine bağlama uygulaması şeklinde düşünülebilir. Belirli nokta setleri var bunlar adres
olarak ya da lat/lon olarak tanımlı olabilir.
Bun web tabanlı ya da cep telefonu uygulaması olarak oluşturabilirsiniz. Bir arayüzle senaryoyu
kendiniz düşünebilirsiniz.
Konu-3 : Traveling Salesman Problem (TSP) olarak adlandırılan ve çözümü NP-complete olan
algoritmanın yol seyahat öneri sistemlerinde kullanılabilirliğini özel durumlarda incelemeye dayalı ve bir
uygulama gerçeklemeye dayalı çalışma. Mesela zaman kısıtlı (herhangi bir zamanda herhangi bir noktada
bulunma) ve sıralama (sequence) kısıtı (a noktasındaysan daha sonra sadece b ye git) gibi kısıtlar altında
kullanıcının verdiği bilgilere dayalı olarak (interaktif Google Map API kullanarak harita üzerinde)
kullanıcıya akıllı ve efektif seyahat planı hazırlama.
-
Web tabanlı ya da android akıllı telefonlar üzerinde geliştirilebilir
Konu-4 : Sosyal ağlardan (Facebook ve Twitter gibi) verinin çekilmesi ve modellenmesi üzerine literatür
çalışması ve uygulamalar. Bu konuda sosyal ağlardan veri çekip akademik çalışmalarda kullanımı sağlayan
siteler araştırılabilir. Belirli miktara kadar Streaming olarak verinin çekilmesini sağlayan teknikler ya da
programlar araştırılabilir. Veriler lokasyon verileri ya da demografik veriler olabilir. Şu anki teknolojiler
nedir? Bu tür çalışmalar nereye gidiyor?
-
Web seris tabanlı servis arayüzleri, JSON ve/veya XML veri formatları, bu verilerin ayrıştırılması vs
çalışmaları kapsayacaktır.
-
Araştırma ve uygulama eşit ağırlıklı bir proje olacaktır.
Konu-5 : Graf algoritmaları üzerine çalışmalar. Sensörlerden elde edilen koordinatsal bilgiler, network
modellerinden elde edilen veriler, GPS lerden elde edilen veriler üzerinde akıllı sistemler geliştirmede
kullanılan yaklaşımlar ve uygulamalar
-
Mesela, şu örnek makalayi internetden bulup inceleyin ve bir uygulamasını gerçekleyin:
"Discovery of subgraph Patterns in a Large Weighted Graph"
Konu-6 : Google Map API üzerinde bir uygulama. Gerçek uydu mozaik görüntüleriyle birebir eşlenerek
seçilen bölgeye düşen mozaiklerin yüksek hızda aranması için yazlımın geliştirilmesi. Uygulama harita
üzerinde interaktif olacak. Mozaiklerin koordinat verileri NoSQL veri tabanlarında tutulacak ve servis
edilecek. Detaylar daha sonra sunulacaktır.
-
Java web frameworkleri kullanılarak gerçeklenecek.
Google map API kullanılacak.
Map üzerinde basılı tutarak secilen pencere bölgeye düşen alana ait koordinar bilgileri sayısal
olarak elde edlecek.
Seçilen bölgeye ait gerçek uydu resimleri, daha önceden oluşturulmuş NoSQL veri tabanından
çekilecek.
Detaylar size verilecektir. İlk 3 maddeyi gerçekledikten sonra diğer madde konusunda
yönlendirileceksiniz.
Konu-7 : Poligonlar üzerine big-data (büyük veri) mimarisi olan eşle-indirge (mapReduce) ile hadoop ya
da Spark kullanarak çeşitli algoritmaların uygulanması.
-
-
Her bir poligonun köşe koordinat değerleri ile bir txt dosyasında tutulduğunu düşünün. Bu
poligonları dosyalardan okuyup kullanıcı tarafından verilen bir aralık sorgusu ile kesişen
poligonların MapReduce ile gerçekleştirilmesi
Ortak bir koordinat sistemine göre tanımlı poligonların her birinin bir txt dosyasında tutulduğunu
düşünün. Bu poligonları dosyalardan okuyup birbirleri ile kesişen poligonları birleştirerek daha
büyük bir poligon oluşturan bir yaklaşımı MapReduce ile gerçekleştirme.
Konu-8 : Microsoft .NET DryadLINQ (büyük ölçekli paralel dağıtık cluster-küme hesaplama) kurulumu
incelenmesi ve bir uygulama gerçekleme. DyradLINQ ile Hadoop'un karşılaştırılması.
-
http://research.microsoft.com/en-us/projects/DryadLINQ/
Konu-9 : SocioGIS (kendi adlandırmam) - Sosyal ağlar ile Coğrafi Bilgi Sistemleri (Geographic Information
Systems -GIS) alanlarını kapsayan çalışmaların literatürde taranması ve belirli kapsamda detaylı analizi.
Yani sosyal ağ verileri üzerinden GIS uygulamaları ne tür çalışmalar üzerinde yoğunlaşmakta? Bu, büyük
veri kapsamında da incelenebilir.
-
Şu makale okunabilir başlangıç olarak: "Visualization of social media: seeing a mirage or a
message?"
Cyberspace and social media
Konu-10 : XSL dönüştürücüleri için script tabanlı otomatik XML formatlayıcı.
-
İçerik ve sunum-format çalışmaları modüler olarak ayrılacak.
İçerik veritabanından alınabilir.
Rastgele formattaki dökümanları ortak formata dönüştürme çalışması
XML, XSL ve XSLT teknolojileri kullanılarak geliştirilecek
Declerative script based automatic xml formatter
Konu-11: Cokdegiskenli (Multivariate) uzamsal (spatiotemporal) verilerin uydu görüntüleri üzerinde
görsel interaktif analizi
-
-
-
Temelinde Google Map API kullanılacaktır.
Elinizde excel benzeri (kodlama kolaylığı açısından text dosyası da olabilir) kolonlardan oluşmuş
veriler olsun. İlk kolon x, ikinci koln y değerlerini versin. Bunlar harita üzerinde veriyi nereye
konumlandıracağınızı belirler. Diğer kolanlar da bu noktalardaki verinin büyüklük-içerik bilgilerini
gösterir. Örnek olarak üçüncü kolan deprem sarsıntı şiddetini versin. O zaman oluşturacağınız
ölçeğe göre 0-2 arası mavi, 3-5 arası sarı, 6-8 arası turuncu ve 9+ olunca kırmızı renklendirmeler
yapabilirsiniz ilgili x,y koordşnatına.
(x,y) kordinatında çubuk, küp, çokgen prizma vb nesneler kullanılarak gösterilebilir. X ve y den
başka sadece bir kolon varsa değişen çubuk yükseklikleriyle değerler görselleştirilebilir. Birden
fazla kolon-parametre varsa küp, çokgen prizma vb nesneler kullanılarak gösterilebilir. Herbir
yüzey ve renk farklı özelliği temsil edecek ve interaktif olarak mouse tıklayınca değer gösterecek.
Ayrıca Bonus olarak; kolona herhangi bir anda değer eklendiğinde görselde gerçek zamanlı (eşzamanlı) olarak güncellenecek. Diğer bir bonus ise görselde yapılacak bir değişikliğin gerçek
zamanlı olarak dosyaya yansıtılması olabilir.
Konu-12: Gerçek uydu görüntülerini örme mimarisi
-
-
Fotoğraf makinelerinde görmüş olduğunuz panoramik çekme özelliğini uydu görüntüleri üzerinde
uygulama çalışması olacaktır.
Bu konu literatürde image stitching ve image registration olarak adlandırılmaktadır.
Bu konu üzerinde ilk etapta, görüntü birleştirilmesi uygulamaları konusunda literatür çalışmaları
yapılacaktır. Uydu görüntülerinde (spatiotemporal görüntüler) diğer görüntülerin
birleştirilmesinden farklı olarak karşılaşılabilecek zorluklar araştırılacaktır.
Size verilecek örnek uydu görüntüleri üzerinden SIFT ve SURF algoritmaları ile geometrik kesme
tabanlı algoritmaların uygulanması çalışması yapılacak. (Tarbil ile ortak çalışma)
Aslında burada yapılacak çalışmanın odağında web servisler kullanılarak birden fazla makinada
paralel hesaplama ile ölçeklenebilir resim örme mimarisi oluşturma isteniyor. Belki projenin ilerki
aşamalarında Hadoop ya da Spark gibi bigdata frameworkleri kullanılarak birşeyler de yapılabilir.
Konu-13: Güvenilir yol paylaşım sistemi (Güvenilir Otostop): Okul ağında güvenilir otostop ağı oluşturma
ve aynı ağdaki kayıtlı araçlı ve araçsız insanların match edilmesi. (Mobil tabanlı lokasyon servisleri
geliştirme - Android*, windows, iphone.)
-
Okula kendi aracımla gelirken yolda otostop çeken kişilerin öğrenci olup olmadıklarını ve
öncelikle güvenilir olup olmadıklarını bilemediğimden arabama almıyorum. Aynı şekilde otostop
çekmek isteyen biri de sırf buna benzer sebeplerden otostop çekmemektedir.
-
-
-
Bu çalışmada karşılıklı güvenin garanti edilebileceği mobil tabanlı bir uygulama yazacaksınız.
Temel alacağınız konu, akıllı telefonların GPS ile konumlandırma servislerini Google API ile
gerçekleyebilmeleri. Bunula ilgili foursquare vb uygulamalarda (eğer konumunuzun
kullanılmasına izin veriyorsanız) bir yere gittiğinizde uygulama açıksa orada sizden başka o
uygulamayı kullanan diğer abonelerinizin de olduğu uyarısını vermektedir.
Arabası olan ve olmayan kişiler daha önceden bir sunucuya kaydolur. Daha sonra onların
hareketlilikleri-konumları server tarafından takip edilir. Herhangi arabalı yada arabasız
(otostopçu) aynı yol üzerinde ve birbirlerine yaklaştığında sistem her ikisine de sinyal gönderir.
Arabalı ve arabasız kişiler karşı taraftaki kişinin bu şekilde güvenli bir olduğunu anlayarak otostop
olayı gerçekleşmiş olur.
Bu konuda android tabanlı bazı açık kaynak uygulama da bulabilir kullanabilirsiniz.
Konu-14: Cep telefonu üzerinden kisilerin lokasyonları belirli aralıklarda (saniye) kaydedilip ortalama
hareketlilikleri vs analizleri yapılabilir. (Mobil tabanlı lokasyon servisleri geliştirme - Android*, windows,
iphone.)
-
-
Bu konuda yukarıdaki konuyla ilgili alanda bir çalışma olacaktır. Akıllı mobil telefonunuzdan
lokasyonunuzu belirli aralıklarda alıp local olarak depolayabilir yada web servis kullanarak sabir
bir servera aktarabilirsiniz.
Biriken-depolanan veriler üzerinde zaman ve lokasyon bilgileri kullanarak çeşitli uzamsal analizler
yapılabilir.
Bu analizlerden bazıları kullanıcının ortalama haraketliliği, kullanıcının gunun hangi saatlerinde
genelde nerelerde olduğu vs şeklinde akla gelen birçok analiz yapılabilir.
Lifelogger uygulamaları vardır bakılabilir.
Konu-15: Kaybolan kişilerin bulunması – markov chain, kalman filtreleme ve bazı yöntemlerle kişilerin
düzenli hareketliliğine bağlı yerlerinin tespiti. (Mobil tabanlı lokasyon servisleri geliştirme - Android*,
windows, iphone.)
-
-
-
Bu konu da yukarıdaki 2 konuyla teknoloji alanları açısından çok yakından ilgilidir.
Birönceki konuda bahsedilen saniyede bir kişinin konumunun kaydedilmesi mantığı burda da
geçerlidir. Burada sadece bu verilerin amaca uygun nasıl işleneceği hangi algoritmaların
kullanılacağıdır. Buradaki çalışmada saniyelik konumlara göre hareket eden kişinin belirli zaman
aralıklarında çekim alanı dışına çıktığı varsayımıyla o bölgelerdeki nokta-lokasyon verilerinin elde
edilemediği düşünülecek. Buradaki değerler kalman filtreleme ve-veya markov chaile tahmini
yapılacaktır. Literatürde bu teknikler birçok yerde farklı veriler için uygulanmış hatta açık kaynak
kodları da vardır.
Bunlardan yararlanarak kişinin belirli bölgelerde sağlayamadığı alanları interpolasyon ile tahmini
yapılacaktır. Bu konuyla ilgili olarak; interpolation çalışması alternatif oarak düşünülebilir.
Konuyla ilgili literatürler araştırılıp hangisi üzerinde çalışılacağı netleştirilebilir.
Mesela saat aralıklarına göre kişinin daha çok nerelerde bulunduğu bilgisi çıkarımı yapılarak
verilen bir saatte kişinin bulunabileceği bölgeler istatistiki olarak sunulabilir. Buna benzer
uygulama gerçeklenecektir.
Konu-16: Mobil tabanlı görüntü işleme servisleri geliştirme - Android*, windows, iphone
-
Nesnelerin uzaklıklarının hesaplanması vs şeklindeki uygulamalar olabilir.
-
-
Yada edge-detection (kenar belirleme) yapılabilir uygulama olarak. Bu konu ile ilgili açık kaynak
kodları mevcuttur.
Başka bir uygulama, gerçek zamanlı olarak kamera ile çevrenizi tararken, daha önceden
belirlediğiniz şekle benzer bir şekil ekranda belirirse kullanıcıya uyarı vermesi. Yani aslında
görüntü üzerinden gerçek zamanlı nesne arama (search) yapabilirsiniz. Mümkün olduğunca hazır
kaynak kullanabilirsiniz. Burada teorisi ve kullandığınız mimarinin açıklanması önemlidir.
Akıllı cep telefonunun kamerasını kullanarak alınan görüntülerin gerçek zamanlı olarak bir
sunucuya gönderilmesi ve gerekli analizlerin gerçek zamanlı olarak cep telefonuna gönderilmesi.
İlk etapta web cam ve masaüstü bilgisayarda uygulama gerçeklenebilir. Daha sonra android
sistemlerde vep telefonu ile bir uygulamaya dönüştürülebilir.
Konuyla ilgili gerekli yardım verilecektir.
Konu-17: Java Message Service (JMS) ve Java media framework (JMF) ile gerçek zamanlı video paylaşım
mimarisi
-
-
Bu konuda JMS ve JMF konuları incelenecek. Bu frameworkler ile neler yapılabilirin literatür
taraması yapılacak. Uygulama olarak sizin bir öneriniz oluşmaz ise ben size aşağıdaki şekilde bir
konu vereceğim.
JMS olarak açık kaynak Apache ActiveMQ kullanılabilir.
Resimlerin ardarda oynatılarak (yani video) publish-subscribe tabanlı paylaşımı JMS çatısı ile
gerçeklenecek.
Resimlerin göderildiği yerde (subscriber tarafı) oynatılması için JMF kullanılacak. Framelerin
gönderilmesi (publisher) belirli bir topic üzerinden olacak. O topiğe subscribe olan kullanıcılar o
frameleri JMF client tool ile oynatacaklar. Aşağıdaki linki okumanızda fayda olacaktır.
http://www.embedded.com/design/connectivity/4006689/Building-a-effective-real-time-distributedpublish-subscribe-framework-Part-1
Konu-18: Haadoop temelli Map-Reduce Uygulamaları
-
Geometrik düzlemde 2D spatial data analizleri
Sosyal network’lerde uygulamalar
Sunucu logları toplama ve text tabanlı analizler
Konu-19: Uydu görüntüleri parça mozaik görüntülerdir. Bunların örülmesi ya da bu görüntüler üzerinden
nesne çıkarımı vb görüntü işleme ya da pattern recognition algoritmalarının uygulanabilmesi için bu
mozaikler üzerinde computational geometry konusuna giren bazı işlemler gereklidir. Bu anlamda
nesneleri çevreleyen pencerelerin (mozaik) hesaplanması, bir nesneyi tanımlamak için gereken
mozaiklerin hesaplanması, ya da bir nesnenin görüntüsünü var olan mozaiklerden elde edilip
edilmediğinin hesabi gibi algoritmik çalışmalar yapılacaktır. Ayrıca poligonları join etme, poligonların
kesişen bölgelerinin çıkarımı vb çalışmalarda yapılması gerekebilir. Bu çalışmalarda yer almak istiyorsanız
bu konuyu seçebilirsiniz.
Konu-20: Visual basic excel macro uygulamaları – personel F1 formlarının hazırlanmasında kolaylık
sağlayan alternatif çıktı formatlarında hazırlayan arayüzlerinin geliştirilmesi. (Benim proje listemde .NET
ile gerçeklenmesine izin verdiğim bir-iki projeden biri)
-
Belirli formatta hazrılanacak; Excell dosyası çıktısı üretme ve PDF çıktısı üretme işlevine sahip
-
Daha önce yazımına başlanmış ancak yarım kalmış proje elimde mevcut onun devamı şeklinde
olacak ve bu dönem bitmesi isteniyor.
Excell hücreleri şeklinde hücrelere belirli arayüzden kullanıcı değerler girecek. Arka planda bazı
otomatik kontroller yapılacak. Bazı hücrelerin değerleri otomatik olarak diğer bazı hücrelerden
belli formulasyonuna göre oluşturulacak.
Birçok kısıtı ve kural var bu konuda benimle sıkı çalışılacak. Sonuçta bölümümüz öğretim üyelerinin
herbirinin ihtiyacı olan bir ürün geliştirilecek.
Konu-21: Spatial skyline queries (uzamsal skyline sorguları) - uygulama analiz.
-
-
Bir düzlemde tanımlı nokta ve şekiller üzerine yapılan optimizasyon sorguları şeklinde
özetlenebilir.
Örnek verecek olursak, otel verisi için; elimizde x,y koordinat-lokasyon bilgisi (denize yakınlığı
bilgisi) ve gecelik ücret bilgisi var. Bunu üzerine yapılacak olan skyline sorgusu; denize en yakın
olan ve ücreti en az olan oteli bulmayı hedefler.
Bu konunun hedefi sizi spatial (geometrik-uzamsal) verilerin analizine hazırlamak. Bu konuyla
ilgili gerçek hayata uyarlanan birçok akademik çalışma mevcuttur. Algoritma analizine
dayanmaktadır. Konu hakkında literatür çalışmasına aşağıdaki linkten başlayabilirsiniz.
http://www.cs.umd.edu/class/spring2005/cmsc828s/slides/skyline.pdf
Konu-22: Voronoi Diagramları araştırma ve uygulamaları.
-
-
Voronoi diyagramları düzlemdeki nokta verileri arasında proximity (yakınlık-yakınsama) bilgisini
bir veri yapısı şeklinde kodlanmasını sağlar. Bu şekilde kodlama bir anlama indexlemedir.
X noktasına (nesne) Hangi nokta (nesne) en yakındır? X noktasından en yakın hastane nerededir?
Şeklindeki spatial sorguların hızlı cevaplandırılmasında yardımcı olan bir algoritmadır.
İngilizce olarak tanımı
Voronoi poligonlar, bulunan ve değeri (x-y koordinatları) bilinen noktalar için, bu noktalara en
yakın noktalar kümesini içerem poligonların bulunması ile elde edilir. Tanım olarak biraz karışık
gibi görünse de aşağıdaki linkteki 2dklık video da konu çok güzel özetleniyor.
https://www.youtube.com/watch?v=7eCrHAv6sYY
Bu konuda matlab da incelebilir. Hatta matlab kodunu java lib olarak kendi kodunuza gömüp
çalıştırabilirsiniz.
Konu-23: Bigdata - Eşle İndirge (MapReduce) mantığına dayalı Hadoop ile ilgili Apache Hive Frameworkun
incelenmesi ve bir uygulama. Bu konulara geçebilmek için Hadoop frameworkünü kurup küçük
uyglamalar geliştirmiş olmanız beklenmektedir.
-
-
Bu konu, çok iyi java bilgisi içermektedir. Ayrıca aşağıdaki konularda çalışmaya başlamadan önce
Hadoop Bigdata frameworkunda daha önce çalışmış olmanız beklenmektedir. Çalışmadıysanız
ekstra effor gerekecektir.
Apache Hive: Data ambarı altyapısı. Hadoop üzerine kuruludur. Amaç veri analizi ve sorgulama.
Bu teknoloji Facebook tarafından geliştirilip kullanılmaya başlanmıltır. Netflix ve Amazon da
kullanmaya başlamıltır. Apache hive Hadoop file sistemindeki büyük veriler üzerinde analizler
yapılmasını sağlar. Analizler veri madenciliği vs şeklinde de olabilir. Apache Hive SQL benzeri
HiveQL diye adlandırılan bir sorgu dili kullanır. HiveQL, mapreduce (eşle-indirge) mantığını içeren
akıllı sorgu üretme mantığını destekler. Sorguları hızlendırmak için indexleme yapısı (bitmap
-
indexleme de var) sağlar. Şu anda 4 adet desteklenen dosya yapısı vardır. Bunlar; text dosyaları,
sequence dosyaları (hadoop tanımlı), ORC dosyaları (Column based databaselerle uyumlu verı
temsili) ve RC dosyaları.
https://www.youtube.com/watch?v=WkuIWJNjtDE
Konu-24: Bigdata - Eşle İndirge (MapReduce) mantığına dayalı Hadoop ile ilgili Apache Pig Frameworkun
incelenmesi ve bir uygulama. Bu konulara geçebilmek için Hadoop frameworkünü kurup küçük
uyglamalar geliştirmiş olmanız beklenmektedir.
-
-
Bu konu, çok iyi java bilgisi içermektedir. Ayrıca aşağıdaki konularda çalışmaya başlamadan önce
Hadoop Bigdata frameworkunda daha önce çalışmış olmanız beklenmektedir. Çalışmadıysanız
ekstra effor gerekecektir.
Apache Pig: Hadoop a bşr eklendti olarak düşünülebilir. Hadoop da işlenecek verinin ve veri
üzerine işlemlerin tanımlanması konusunu içerir. HDFS i dosyaları yazma okuma için Hadoop
mapreduce çeirdeğini de işlemleri yapmak için kullanır. Pıg Latin diliyle yaratılan script tabanlı
statements’lar mapreduce işlemlerine çevrilir. Diğer kullanıcılar için tanımlanmış fonksiyonlar da
piggybank denen repository de reusability için jar olarak tutulur.
https://www.youtube.com/watch?v=PQb9I-8986s
Konu-25: Bigdata - Eşle İndirge (MapReduce) mantığına dayalı Hadoop ile ilgili Apache Flume
Frameworkun incelenmesi ve bir uygulama. Bu konulara geçebilmek için Hadoop frameworkünü kurup
küçük uyglamalar geliştirmiş olmanız beklenmektedir.
-
-
Bu konu, çok iyi java bilgisi içermektedir. Ayrıca aşağıdaki konularda çalışmaya başlamadan önce
Hadoop Bigdata frameworkunda daha önce çalışmış olmanız beklenmektedir. Çalışmadıysanız
ekstra effor gerekecektir.
Apache Flume: Çok büyük verileri (mesela ve özellikle log verileri) HDFS e yüklemek için ortaya
çıkmış bir ptoje. Hadoop un dosyaları işleyebilmesi için dosyaların HDFS de olması gerekiyor. Bu
framework de Haddop ile birlikte çalışan bir alt framework. Sadece Hadoop a değil Hbase e de
dosya yüklemekte kullanılıyor. Multiple dosya kaynağından agent based olarak tek bir HDFS e
(sink) sürekli veri yükleyebiliyor analiz için.
o Bu konuyu çalışmaya başlayabilmek için Hadoop konusunda bilgi sahibi olmanız
gerekmektedir.
o Bu konularda ön bilginiz yoksa ve Java bilginiz çok güçlü değilse sizin için zor olabilir.
o https://www.youtube.com/watch?v=E3XZWbGnIO8
Konu-26: ElasticSearch – Lucene tabanlı arama mimarisi. Bir uygulama geliştirilecek.
-
-
Elasticsearch bigdata analizlerinde search için kullanılan bir yaklaşım. Elastik search SQL gibi
yapısal veritabanları üzerinde değil yapısal olmayan veri yığınları üzerinde çalışır. Yapısal olmayan
veri yığınlarına sosyal networklerde (facebook, twitter etc.) biriken text tabanlı bilgiler ya da
serverların loglarında (catalina.out) biriktirdiği text tabanlı bilgiler verilebilir. Bu konuda aşağıdaki
link ilkönce bigdata nın ne olduğunu, sonra da elasticsearch mantığı ve yapısını anlatmaktadır.
Literatür taramasına buradan başlayarak güzel bir örnek düşünebilirsiniz.
Somut ornek: iphone6 ile ilgili kac tane tweet atıldı? iphone6 ile ilgili İzmit içinde kac tane tweet
atıldı? iphone6 ile ilgili İzmit içinde gecen ay kac tane tweet atıldı? Bu soruların yanında bu soru
tiplerinin çatısını çıkarıp değiştirilebilen kısımları ayıklarsak (son sorgu üzerinden) su soru yapısı
cıkar: XXXX ile ilgili XXXX içinde gecen XXX kac tane tweet atıldı? Dikkat edin yapısal olmayan veri
üzerinde yapısal queryler oluşturuldu. Veri yapılandırılmadı. Veri üzerinde önceden
-
konfigürasyon yaılmadı. Verilerle ilgili ön hesaplamalar yapılmadı. Elasticsearch ün bir örnek
üzerinden sağladığı kolaylıkları göstermek istedim. Daha detaylı bilhiui aşağıdaki linlten
öğrenebilirsiniz.
GitHub Elasticsearch kullanıyor.
https://www.youtube.com/watch?v=fEsmydn747c
Konu-27: Neo4J – Java tabanlı graph NoSQL kutuphanesi ile ilgili uygulamalar ve araştırmalar.
-
Sosyal aglarda (social network) yapılmış ve yapılmakta olan birçok uygulama mevcut. Bu
konularda birşeyler yapılabilir.
Varolan graf algoritmaları (Max-Flow ve Min-Cut) literatür çalışması olarak özetlenecek.
Bu algoritmaların sosyal ağlarda hangi tür analizler için kullanılabileceği çalışması yapılacak.
Bu iki ön literatür çalışmasından sonra güzel ve uygulanmamış yeni bir konu üzerinden Neo4j ile
bir uygulama yapılacak. Detalı ön bilgi için aşağıdaki linle bakın.
Cypher (graf sorgu dili) kullanılacak
Master-slave replikasyon tekniği ile yüksek performans sorgular için (scaling ve availability)
Neo4J HA ya bakılabilir.
https://www.youtube.com/watch?v=7Fsfa5DP9sE
Konu-28: Neo4J-Spatial –gragh tabanlı NoSQL kutuphanesi ile spatial veri madenciliği aştırma ve
uygulama
-
Neo4J üzerine kurulu CBS verileri üzerinde spatial analizler ve topolojik sorgular içeren eklenti
şeklinde düşünülebilir.
Bu konuda literatür araştırmasından sonra bir uygulama yapılabilir.
Bu konuda varolan uygulamalar var mı yoksa sadece fikir olarak mı duruyor araştırılacak. Github
daki uygulama çalışıyor mu test edilecek.
Graph algoritmalari uygulama: Min-cut algoritmasi ile closely connected set of nodes larin tespit
edilmesi. Cesitli sosyal ag uygulamalari olabilir. Veri seti suni nokta verileri olarak olusturulabilir.
Gercek verilerin bulunmasi ve uygulanmasi bonus olacaktir.
Konu-29: Hadoop bigdata mimarisinin uzamsal veriler üzerindeki uygulamaları ve literatür araştırması.
-
-
Spatial data (uzamsal veri) ve Coğrafi Bilgi Sistemleri, savunma sanayinde, askeriyede insansız
hava araçlarının geliştirilmesinde, uçaklarda otomatik pilot uygulamalarında, savunma ve eğitim
alanında similasyon uygulamalarında, uydu sistemleri ve uzaktan algılama çalışmalarında ve daha
birçok alanda son yıllarda çokça uygulama alanı bulan teknolojilerdir. Bu konuyla ilgili verilerin
exponansiyel olarak artması bu verilerin analizinde bigdata konseptinin kullanımını zorunlu
kılmaya başlamıştır. Hadoop olarak bu konu üzerinde son birkaç yılda yapılan çalışmalar daha
hala emekleme devresindedir ve bu çalışmalar aşağıdaki şekilde özetlenmiştir. Bu konularda
gelinen son nokta, akademik ve iş hayatındaki gelişmeler, ihtiyaçlar ve servisler incelenerek bir
durum değerlendirmesi yapılacaktır.
Aşağıdaki konulardan birinde uygulama yapmanız Bonus olacaktır. Yada varolan bir uygulama
bulup çalıştırmanız da yeterli olacaktır.
o Hadoop-GIS, SpatialHadoop, CG_Hadoop
Konu-30: Apache Mahout ile ilgili büyük veriler üzerine data mining uygulamaları
-
-
Apache Mahout öneri (recommender) sistemlerde çokça kullanılır.
Foursquare in recommender sistemi Mahout üzerine kuruludur.
Örnek uygulamalar
o Coğrafi mekanlar için tavsiye sistemi
o MIMIC II klinik verileri üzerinde uygulama geliştirme
Korkulacak kadar olmadığını aşağıdaki linkten görebilirsiniz.
https://www.youtube.com/watch?v=yD40rVKUwPI
Konu-31: Apache Spark ile ilgili büyük veri işleme uygulamaları
-
-
Apache Spark genel amaçlı bir cluster computing çatısıdır.
JAVA temellidir. Sorgu dili olarak “Spark SQL”, Makine öğrenmesi için Mlib ve graf işlemleri için
GrahX eklentisi vardır.
Unix, Windows ve Mac OS sistemlerde çalışabilir. En iyi performans Unix makineler göstermiştir.
Spark birçok örnek programla birlikte gelir kurulunca.
Hadoop ile temel karşılaştırma ve fark: Spark in memory çalışamaya meyilli, hadoop disk
üzerinde çalışır. Herbirinin birbirlerine karşılıklı avtg ve dezavantakı vardır. Spark Hadoop
frameworku içinde de çalışır. O zaman HDFS üzerinde mapreduce yerine spark mantığı kullanımış
olur. Spark memory üzerinde olduğu için daha çok interaktif gerçek zamanlı uygulamalarda
milisec işlemler için kullanılır. Hadoop içinse; saatler alan işin dakikalar içinde bitmesi yeterlidir.
Daha detaylı karşılaştırma için aşağıdaki linke bakabilirsiniz.
http://www.quora.com/What-is-the-difference-between-Apache-Spark-and-Apache-HadoopMap-Reduce
Konu-32: Publish-Subscribe tabanlı mesajlaşma sistemi ile gerçek zamanlı video streaming uygulaması
-
-
(Real-time video streaming)
Publish-subscribe temele dayalı mesaj servisleri ile gerçek zamanlı video paylaşım uygulaması.
Mobesa kameralarından yoldan gecen araçların tiplerini (tiplere göre detaylanmış) topiklere
streaming yapıp, bu topiklere subscribe olmuş kullanıcıların uyarılarak takip ettikleri araçların
kameradan görüntülenmesi.
Birden fazla publisher ve subscriber olduğu varsayılacak.
Konu-33: Video streaming görüntüleri üzerinden gerçek zamanlı olarak nesnelerin uzaklıklarını
hesaplama
-
Mobese kameralarına uyarlamak üzere, taş vb cisim atıldığında kameranın kendisini mekanik bir
şekilde koruyabileceği kapaklı bir düzenek tasarlanacağını hayal edin.
Sizden bu işin sadece görüntü işleme kısmını yapmanız bekleniyor.
Kameraya doğru bir cisim fırlatıldığında ve bu cisim belirli bir yakınlığa geldiğinde algılanması
gerekir.
Konu-34: Web Sunucuların urettiği log dosyalarını arama ve analiz için Lucene tabanlı mimari
-
Apache Tomcat in ürettiği log dosyaları sistemin ne zaman açıldığı, ne zaman ne tür hatalar
verdiği, ne tür servislerin daha çok kullanıldığı ve hatta kullanıcının kendisinin belirleyeceği
-
custom bilgileri ve taramaların çıktıları içeren bir text dosyadır. Bu nedenle logların analizi
Bigdata konusunda çok uygulama alanı bulmaktadır.
Biz de bu çalışmada sunucu loglarını analiz eden, kullanıcıya karar desteği ve bilgi için destek
sağlayan Lucene tabanlı arama mimarisi geliştireceğiz.
Konu-35: Graph algoritmalari uygulama: Min-cut algoritmasi ile closely connected set of nodes larin
tespit edilmesi. Cesitli sosyal ag uygulamalari olabilir. Veri seti suni nokta verileri olarak olusturulabilir.
Gercek verilerin bulunması ve uygulanması bonus olacaktır.
Konu-36: Gerçek zamanlı audio (müzik-ses) birleştirme ve paylaşım sistemi. (İng. Real-Time Media
Merging and Sharing Systems)
- Enabling multiparty karaoke over Internet
- Using the JMF and javasound APIs
- http://javakaraoke.sourceforge.net/
Konu-37: .NET ve C# konusunda çok iyi olan kişiler için listemdeki proje: Personel F1 formlarının
hazırlanmasında kolaylık sağlayan alternatif çıktı formatlarında hazırlayan arayüzlerinin geliştirilmesi.
Matbu bir excel dosyasında hücreler arasında hesaplamalı ilişkiler ve bağlantılar var. Bu formun format
olarak oluşturulması ve matematiksel ilişkilerin gerçeklenmesi temelli bir çalışma olacaktır. Konuyla ilgili
detaylar için beni görmeniz gerekmektedir.
Konu-38: ÖNERECEĞİNİZ VE TARAFIMDAN ONAYLANAN HERHANGİ BİR KONU DA KABUL EDİLEBİLİR.
ANCAK, .NET WEB OTOMASYONU TÜRÜNDE KONU ÖNERİLERİ KESİNLİKLE KABUL EDİLMEYECEKTİR.

Benzer belgeler

muh 402 bitirme çalışması

muh 402 bitirme çalışması serverların loglarında (catalina.out) biriktirdiği text tabanlı bilgiler verilebilir. Bu konuda aşağıdaki link ilkönce bigdata nın ne olduğunu, sonra da elasticsearch mantığı ve yapısını anlatmakta...

Detaylı

Çalışma Grubu Raporu - TBD Kamu-BİB Kamu Bilişim Platformu-18

Çalışma Grubu Raporu - TBD Kamu-BİB Kamu Bilişim Platformu-18 gerçekleştiren çerçeve yazılım, ilk defa Yahoo tarafından geliştirildi, şimdi Apache tarafından geliştiriliyor

Detaylı