Wykaz tematów prac dyplomowych w roku akademickim 2012/2013
Transkrypt
Wykaz tematów prac dyplomowych w roku akademickim 2012/2013
Wykaz tematów prac dyplomowych w roku akademickim 2012/2013 kierunek: informatyka L.p. 1 Nazwisko i imię studenta Mateusz Dziadko Promotor Dr Błażej Zyglarski Temat pracy magisterskiej Semantyczny WebCrawler. Opis zadania stawianego studentowi -stworzenie oprogramowania przeglądającego strony sieci Web. - oprogramowanie ma wykorzystywać silnik WebKit i mieć możliwość analizy stron opartych o dynamiczny Javascript 2 Marta Raciborska Metody wizualizacji danych i ich zastosowanie do tematycznej wizualizacji stron sieci Web - stworzenie własnego narzędzia wizualizacji, pozwalającego wyświetlić na stronie www trendy zachowań użytkownika. -wykorzystanie do tego narzędzi jQuery i pochodnych 3 Sebastian Michalski Serwer zarządzający urządzeniami w - stworzenie oprogramowania działającego domu z wykorzystaniem RapsberyPi na budżetowym urządzeniu RapsberyPi, służącego do zarządzania siecią domowych urządzeń wyposażonych w odpowiednie interfejsy. - oprogramowanie ma mieć modułową konstrukcję i ma pozwolić na zarządzanie i badanie stanu dowolnego urządzenia posiadającego interfejs sieciowy i odpowiednie oprogramowanie. 4 Marcin Puszka Wykorzystanie JAVACV i algorytmów przetwarzania sygnałów i obrazów do rozpoznawania zapisu nutowego w urządzeniach mobilnych - stworzenie oprogramowania na platformę Android, które pozwoli na automatyczne rozpoznanie zapisu nutowego na zrobionym zdjęciu. - wykorzystanie dostępnych algorytmów i bibliotek takich jak JavaCV 5 Krzysztof Rękas Graficzny interfejs prezentacji baz danych oparty o technologie portalowe (Liferay) -stworzenie dynamicznego portletu dla portalu Liferay, pozwalającego na wizualizację danych z baz danych, na podstawie załączonych schematów. - schematy mają być tworzone w formatach XML bądź VM i zawierać informacje o danych, które mają być prezentowane, powiązaniach między nimi oraz sposobie ich prezentacji. - wynikiem działania ma być kompletna strona portletu, wyświetlająca dane z bazy danych w sposób przyjazny dla użytkownika 6 Mateusz Miernik Zastosowanie technologii Javascript i Ajax do śledzenia zachowania użytkowników w portalach internetowych (Liferay) Przygotowanie oprogramowania (w formie portletu dla Liferay), które będzie śledziło zachowanie użytkownika na stronach portalu i kolekcjonowało statystyki tego zachowania w Bazie danych. -na zachowanie składać się mają wszystkie interakcje użytkownika ze stroną (w tym kliknięcia, ruchy myszą, przeładowania strony, przewijanie strony itp.) 7 Dorota Leszczyńska Narzędzia automatycznej modyfikacji interfejsu użytkownika na stronie internetowej wykorzystujące NodeJS Narzędzie pozwalające na modyfikację struktury strony internetowej na podstawie interakcji z użytkownikiem - zmiana struktury strony obejmuje zmianę struktury menu, listy wyświetlanych elementów itp., w zależności od zainteresowania nimi. - oprogramowanie strony ma wykorzystywać rozwijającą się bibliotekę NodJS. 1 2 Michał Rutkowski Piotr Madej dr hab. Z. Szewczak Analiza wybranych aspektów bezpieczeństwa na platformie Ruby on rails analiza bezpieczeństwa serwisów webowych; zabezpieczenie wybranych serwisów na platformie Ruby on rails; przykładowe zastosowania Wybrane problemy monitoringu w systemach multimedialnych Multimedialne systemy operacyjne; implementacja własnej (bezpiecznej) aplikacji do monitoringu (kamery); przykładowe zastosowanie 1 3 Michał Stachowiak Wybrane metody wykrywania analiza ataków na systemy operacyjne; intruzów w systemach operacyjnych implementacja własnej aplikacji; przykładowe zastosowanie 4 Mirela Kowalska Wybrane problemy uwierzytelniania użytkowników mobilnych analiza technik uwierzytelniania; implementacja aplikacji; przykładowe zastosowanie 5 Tomasz Krakowski Technologie wirtualizacyjne w zarządzaniu złożonym systemem komputerowym analiza technologii wirtualizacyjnych; implementacja własnego środowiska; przykładowe zastosowanie 6 Rafał Kośmicki Wybrane problemy archiwizacji i odzyskiwania danych analiza systemów archiwizacji i odzyskiwania danych; implementacja własnej aplikacji; przykładowe zastosowanie 7 Bartosz Celmer Analiza wybranych problemów bezpieczeństwa danych w środowisku rozproszonym analiza rozproszonych systemów plików i ich bezpieczeństwo; implementacja własnego rozproszonego systemu plików; przykładowe zastosowanie Grzębski Marcin Dr hab.Edward Ochmański, prof. UMK 2 Jabłoński Marcin Sieci Petriego jako narzędzie sterujące ruchem wind Opracowanie programu, który będzie wykorzystany do optymalnego sterowania ruchem wind w budynku mieszkalnym lub biurowym. Sieci Petriego modelujące procesy Opracowanie programu, pozwalającego modelować procesy logistyczne w przed- logistyczne w przedsiębiorstwie siębiorstwie handlowo-usługowym. Bezpieczeństwo ruchu – projektowanie bezkolizyjnych skrzyżowań Program pozwalający modelować skrzyżowania i sterować ruchem pojazdów. Klunder Kamil Grafy pokrywalności - konstrukcja, analiza, zastosowania Opracowanie algorytmu budującego graf pokrywalności dowolnej sieci Petriego. 5 Maruszczak Kamil Sieci przepływu zadań i ich synteza Algorytm syntezy sieci przepływu zadań z zestawu przebiegów sekwencyjnych. 6 Rutkowski Kamil Sieci Petriego jako narzędzie sterujące ruchem pociągów Modelowanie elementów trakcji kolejowej i wykorzystanie tych modeli do sterowania ruchem pociągów. 7 Szubert Mirosław Algorytmy badania żywości w sieciach wolnego wyboru Program komputerowy badający różne aspekty żywości w sieciach wolnego wyboru. 1 Adam Gronczewski 2 Radosław Cichy 3 Jankowski Mateusz 4 dr Michał Chlebiej Komputerowe rozpoznawanie wybranych typów obiektów Celem pracy jest opracowanie algorytmu służącego do wykrywania obiektów o zadanych parametrach geometrycznych na obrazie pozyskanym z kamery. Implementacja ma zostać przygotowana dla urządzenia mobilnego. Komputerowe wsparcie funkcjonowania osób z dysfunkcją wzroku w pomieszczeniach Praca ma na celu opracowanie i implementację metody wspomagającej orientację w pomieszczeniach. Aplikacja ma wykrywać przeszkody znajdujące się w pobliżu i dźwiękowo informować o tym użytkownika. 3 Jacek Krüger Interaktywne środowiska symulowane w silnikach gier Celem pracy jest opracowanie i implementacja wybranych modeli interakcji pomiędzy obiektami przestrzennymi. Całość ma zostać osadzona w przygotowanym środowisku silnika gry. 4 Tomasz Opalach Zastosowanie silnika Unity w symulacji zachowań w grupie Celem pracy ma być zdefiniowanie, wizualizacja i analiza przykładowych modeli zachowań grup przy wykorzystaniu środowiska silnika Unity. 5 Łukasz Lechniak Tworzenie geometrycznych modeli 3D obiektów rzeczywistych z wykorzystaniem sensorów ruchu Celem pracy ma być wirtualne odtwarzanie geometrii prawdziwych obiektów na podstawie obrazów zebranych przy pomocy sensorów ruchu. Wynikiem będzie zaimplementowany algorytm przetwarzający dane z sensorów i generujący wynikowy model 3D. 6 Robert Wojciechowski Wykorzystanie kart GPU w obliczeniach Celem pracy ma być prezentacja przykładów wykorzystania nowoczesnych kart graficznych do złożonych obliczeń numerycznych. Praca będzie opierała się na wybranych architekturach sprzętowych oraz będzie wykorzystywała dedykowane dla nich narzędzia programistyczne. 7 Jakub Sobel 1 Łukasz Durniat 2 Mariusz Ptaszyński Detekcja i rozpoznawanie znaków drogowych za pomocą urządzeń z systemem Android prof. dr hab. Maciej M. Minimalizacja sumy ukończenia Sysło wszystkich zadań na jednorodnych maszynach Algorytmy genetyczne. Matematyka w biologii, biologia w matematyce Celem pracy jest opracowanie algorytmu służącego do wykrywania znaków drogowych na obrazie pozyskanym z kamery. Implementacja ma zostać przygotowana dla urządzenia mobilnego. Tematem pracy jest zagadnienie uszeregowania zadań na równoległych maszynach, które pracują z różnymi prędkościami. Czas ukończenia zadania nie może przekroczyć ustalonej liczby. Dopuszcza się możliwość przerywania wykonywania zadań. Praca zawiera cześć teoretyczną i praktyczną. Tę pierwszą otwierają rozważania z maszynami o jednakowych prędkościach, następnie otrzymane wyniki są uogólniane. Przy ważniejszych rezultatach zamieszczone są przykłady. Cześć praktyczna zawiera opis systemu oprogramowania rozwiązującego sformułowany w pracy problem oraz wyniki eksperymentów obliczeniowych dla różnych danych. Praca dotyczy algorytmów genetycznych, które mogą mieć zastosowanie w symulacjach zachowania się wybranych osobników w określonych warunkach. Przedstawione zostanie podejście praktyczne i programistyczne do problemu wraz z podstawami teoretycznymi zagadnienia. Podstawowym elementem pracy będzie implementacja algorytmu oraz wyniki eksperymentów obliczeniowych. 3 Magdalena Ryczkowska Domknięcie przechodnie grafu Celem pracy jest omówienie problemu przechodniego domknięcia digrafu, a także przedstawienie algorytmów rozwiązujących to zagadnienie. Szczególną analizą objęte zostaną najnowsze algorytmy dynamiczne, które wykorzystując odpowiednią strukturę danych umożliwiającą udzielenie odpowiedzi na pytania o własności zmieniającej się struktury w czasie krótszym, niż zajęłoby obliczenie problemu od początku. Rozważane będą zwłaszcza tzw. algorytmy ubytkowe i ich związek z zagadnieniem silnie spójnych składowych digrafu. Przedmiotem pracy jest również zaimplementowanie algorytmów oraz wykonanie eksperymentów obliczeniowych. 4 Piotr Zagórski Problem przydziału z preferencjami Praca dotyczy skojarzeń najwyżej preferowanych o jednostronnej liście preferencji. Praktycznym zastosowaniem jest problem pojawiający się na uczelni – przydział studentów do grup ćwiczeniowych o określonej wielkości. Każdy student definiuje swoje preferencje na dany semestr dotyczące przedmiotów i grup ćwiczeniowych. Należy ich tak przydzielić, by rozkład w wybranych grupach był równomierny, a w idealnym przypadku wszyscy byli zadowoleni ze swojego przydziału. W pracy można wydzielić opis teoretyczny i cześć praktyczną. W tej drugiej części znajdzie się opis systemu oprogramowania rozwiązującego opisany problem. Ponadto zostaną przedstawione wyniki eksperymentu obliczeniowego dla różnych danych. 5 Aneta Joanna Zawalisz Problem równo preferowanych małżeństw stabilnych Celem pracy jest przedstawienie zagadnienia równo preferowanych małżeństw stabilnych oraz zaprezentowanie algorytmu znajdującego owe skojarzenie. Rozważmy następujący problem: dana jest grupa mężczyzn oraz grupa kobiet. Każda osoba posiada listę preferencji, która zawiera wszystkie osoby z grupy przeciwnej. Chcemy połączyć osoby z obu grup w pary. Para jest blokująca, jeśli każda osoba w parze woli być skojarzone ze sobą, niż ze swoim aktualnym partnerem. Skojarzenie, które nie dopuszcza żadnej pary blokującej nazywamy skojarzeniem stabilnym. Gale i Shaplay pokazali w 1962 r., że zawsze istnieje stabilne skojarzenie i zaproponowali liniowy algorytm rozwiązania. W ogólności istnieje wiele różnych stabilnych skojarzeń. Problem równo preferowanych małżeństw stabilnych polega na stabilnym skojarzeniu wszystkich kobiet i mężczyzn w pary, przy najmniejszym z możliwych kosztów. Koszt ten definiuje się jako sumę różnic między pozycjami na liście preferencji każdego z partnerów. O ile za pomocą algorytmu Gale’a i Shaplay’a można łatwo uzyskać skojarzenie stabilne z minimalnym kosztem dla mężczyzn lub dla kobiet, tak uzyskanie równo preferowanego stabilnego skojarzenia jest problemem NP-zupełnym. W pracy można wydzielić opis teoretyczny oraz część praktyczną, w której znajdzie się opis systemu oprogramowania rozwiązującego opisany problem. Ponadto zostaną przedstawione wyniki eksperymentów obliczeniowych dla różnorodnych danych. 6 Mikołaj Zwierz Algorytm Dijkstry z wykorzystaniem Praca dotyczy algorytmu Dijkstry 1 Łukasz Antczak Dr Piotr Wiśniewski struktur kubełkowych zaimplementowanego za pomocą struktur kubełkowych. Kubełki to tablica, której elementy są indeksami lub istnieje funkcja odwzorowująca te elementy w przedział indeksów. Mają zastosowanie przy haszowaniu i umożliwiają porządkowanie elementów bez bezpośredniego porównywania ich ze sobą. Celem pracy jest pokazanie, jak ta struktura działa w algorytmie Dijkstry i jaki ma wpływ na efektywność. Część praktyczna pracy zawiera opis dołączonego programu, a także wyniki eksperymentów obliczeniowych oraz wnioski ich dotyczące. Eksperymenty obliczeniowe to porównanie złożoności obliczeniowej kubełkowej implementacji algorytmu Dijkstry z wersją opartą na kopcach Fibonacciego. Integracja bazy Cassandra z frameworkiem django Baza Cassandra jest bardzo szybką bazą danych świetnie skalującą się. Framework django natomiast jednym z najpopularniejszych narzędzi do tworzenia portali internetowych. Celem pracy jest umożliwienie współpracy tych narzędzi w celu tworzenia portali o wysokiej skalowalności przetwarzania danych. 2 Mikołaj Fejzer 3 Bartosz Frąckowiak Klasyfikacja zmian kodu źródłowego Celem pracy jest stworzenie klasyfikatora zmian kodu źródłowego w środowisku ciągłej integracji (continuous integration). Klasyfikator oznaczy zestawy zmian zawierające znane oraz poprawione błędy. Nauka klasyfikatora odbywać się będzie na podstawie historii zmian kodu źródłowego, pobranych z repozytorium wybranego projektu. Zmiany zostaną sklasyfikowane przed umieszczeniem w repozytorium, w trakcie inspekcji kodu (code review). Aplikacja będzie wtyczką do programu Gerrit, napisaną w językach Java oraz Scala. Wykorzystanie metryk poziomu niestabilności do badania jakości architektury projektu. Celem pracy jest implementacja wskaźnika niestabilności zaproponowanego przez Roberta C. Martina. Według Martina elementy architektury powinny być stabilne, albo niestabilne. Najgorsze dla architektury są moduły pośrednie. Celem pracy jest przygotowanie narzędzi analizujących strukturę projektu na podstawie repozytorium kodu w celu analizy wspomnianego wskaźnika dla modułów oraz analiza zmian tego wskaźnika w czasie. Pozwala to wychwycić moduły źle zaprojektowane pod tym kątem (będące potencjalnie kosztowne w dalszym utrzymaniu) oraz wychwycić moment kiedy dane moduły zostały "popsute". 4 Kamil Szostakowski 5 Robert Wieczorek Porównanie wydajności wybranych NoSQLowych baz danych NoSQLowe bazy danych odgrywają istotną rolę w projektowaniu nowoczesnych rozwiązań informatycznych. Ich cechą szczególną jest mała uniwersalność, w zamian dostarczają istotnie lepszą wydajność w sytuacji właściwego dobrania do zagadnienia. Celem pracy jest budowa platformy pozwalającej w wygodny sposób testować różne systemy baz danych. Platforma ta w pracy zostanie wykorzystana do testowania baz dokumentowych w porównaniu z wybraną bazą relacyjną. Wyszukiwanie pełnotekstowe w ORMach dla języka Python, wykorzystujące mechanizmy dostarczane przez DBMS Wyszukiwanie pełnotekstowe w aplikacjach odbywa się zazwyczaj w oparciu o narzędzia nie integrujące się z bazą danych, tymczasem systemy zarządzania bazami danych często oferują możliwości takiego wyszukiwania, dzięki czemu może ono działać znacznie szybciej. Celem pracy jest integracja mechanizmów wyszukiwania pełnotekstowego w DBMSach z wybranym narzędziem ORM, która to umożliwi wykorzystanie tych mechanizmów na poziomie budowy aplikacji bez zakłócania architektury proponowanej przez ORM. W szczególności w pracy zamierza się zadbać o mechanizmy wspierające wyszukiwanie w języku polskim. 6 Michał Wojtyna Automatyczna restrukturyzacja modelu obiektowego do komponentowego Celem pracy jest stworzenie narzędzia dokonującego automatycznego przekształcania kodu obiektowego do komponentowego. Model komponentowy charakteryzuje się większą przejrzystością ze względu na silną enkapsulację. Skutkiem działania programu jest otrzymanie przez końcowego użytkownika propozycji kodu wyższej jakości. Na koniec użytkownik może dokonać własnych zmian w zaproponowanym modelu w celu dalszej poprawy jakości kodu. Narzędzie zostanie zaimplementowane jako plugin do środowiska Eclipse i będzie obsługiwało język Java.