Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
tematy_prac_inzynierskich [2018/09/03 22:48]
pszwed [2018]
tematy_prac_inzynierskich [2019/10/02 23:11]
pszwed [Struktura pracy]
Line 1: Line 1:
 +====== Struktura pracy ======
 +
 +[[struktura_pracy_inz|Struktura pracy]]
 +
 +
 ====== Tematy prac inżynierskich ====== ====== Tematy prac inżynierskich ======
 +
 +===== 2019 =====
 +
 +Obecnie zarezerwowanych jest 12/12
 +
 +:!: ** Nie podejmuję się prowadzenia kolejnych prac ze wzgledu na osiągnięcie limitu** :!:
 +==== 1. Wizualizacja danych geograficznych ====
 +:!: Rezerwacja
 +
 +Przegląd oraz dobór bibliotek, pakietów do wizualizacji. Główny cel - kolorowanie odcinków dróg na podstawie danych w celu pokazania dodatkowych własności, jak natężenie ruchu lub prędkość.  Źródło: dane OSM (nie Google Maps) z lokalnej bazy lub zewnętrznego serwera. Dane do wizualizacji z plików lub bazy danych.  Java lub Python .
 +
 +==== 2. Narzędzia WebScraping ====
 +:!: Rezerwacja
 +
 +Przegląd i porównanie narzędzi WebScraping dla kilku przykładowych zadań, np. zbieranie danych z serwisu nieruchomości lub samochodów, zbieranie publikacji prasowych na popularnych portalach, produktów z Allegro, itp. Zakres zadań do uzgodnienia.  
 +
 +
 +==== 3. Map matching ====
 +(a) Implementacja (znanego) algorytmu rzutowania sekwencji odczytów GPS na mapę w postaci procedur składowanych dla PostgreSQL/PostGIS, na podsatwie [[https://www.researchgate.net/publication/263855222_SLIDES_An_Incremental_Map-Matching_Algorithm_Based_on_Hidden_Markov_Model]]
 +
 +Procedury mogą być zaimplementowane w 
 +  - [[https://www.postgresql.org/docs/9.2/plpgsql.html]] preferowane, łatwe w konfiguracji i wydajne
 +  - Java lub Pythonie (trudniejsze w konfiguracji i dyskusyjne wydajnościowo)
 +
 +(b) Alternatywnie, dla mapy przechowywanej w pamięci w językach Java lub Python, ale konieczna implementacja funkcjonalności, które są w PostGIS zaimplementowane (indeksy przestrzene, obliczanie odleglości) oraz wstępne prztewarzanie danych mapy.
 +
 +Zakres:
 +  - załaduj mapę oryginalną
 +  - podziel drogę na segmenty (od skrzyżowania do skrzyżowania)
 +  - dodaj tabele/struktury danych do przechowywania ścieżek GPS
 +  - dodaj tabele/struktury danych na graf przypisujący odczyty do punktów na odcinkach dróg
 +  - napisz procedurę, która dla nowego punktu: 
 +    - rozszerza graf o nowe możliwe wierzchołki //expansion//  
 +    - usuwa z grafu wierchołki, z których nie można kontynuować //contraction//
 +  - podprocedury powinny mieć warianty lub być sterowane parametrami
 +  - Testy:
 +    - jakościowe - czy ścieżki są odwzorowane poprawnie
 +    - wydajnościowe - ile zapytań można przetwarzać w jednostce czasu, ewentualnie grupowanie punktów jednej ściezki
 +==== 4. Wykorzystannie reguł rozmytych do rekomendacji produktów ====
 +:!: Rezerwacja
 +Z użyciem zbioru danych MovieLens. Implementacja Python lub Java. Celem jest wyznaczenie zbioru reguł rozmytych (a zwłaszcza parametrów funkcji przynależności o założonym kształcie) [[https://en.wikipedia.org/wiki/Fuzzy_rule]]
 +//Jeżeli X lubi kryminały i komedie, Y lubi kryminały i Y ocenił wysoko film F, to rekomenduj F dla X.//
 +
 +==== 5. Aplikacja webowa do edycji dokumentacji projektowej ====
 +:!: Rezerwacja
 +
 +Projekt w stylu [[http://home.agh.edu.pl/~pszwed/wiki/doku.php?id=amo:projekt]]
 +Konfigurowalna struktura dokumentu: [[http://home.agh.edu.pl/~pszwed/wiki/doku.php?id=amo:rup_tailored]]
 +Użycie PlantUML do generacji rysunków: [[http://plantuml.com/starting]]
 +
 +==== 6. Optymalizacja na GPU ====
 +
 +Implementacja popularnych algorytmów optymalizacji ciągłej na GPU: CUDA lub OpenCL. //Takich prac może być wiecej...//
 +
 +W ramach **jednej** pracy implementacja **jednego** z wybranych algorytmów i przeprowadzenie testów dla różnych parametrów z uzyciem funkcji opublikowanych np. na CEC 2015. 
 +
 +Typowy zakres:
 +  - opis algorytmu (np. mrówki, pszczoły, Differential Evolution, Backtracking, elektromagnetyczny, świetliki, karaluchy, itp)
 +  - opis platfromy (CUDA/OpenCL) i bibliotek dedykowanych dla konkretnego języka programowania C/C++/Java/Python lub użycie wysokopoziomowej biblioteki, np. [[https://deeplearning4j.org/docs/latest/nd4j-overview]] z akceleracją GPU
 +  - opis implmentacji (wraz z parametrami i wariantami). W zależności od platformy i dostępnego sprzetu GPU można wykorzystywać wątki lokalne wewnątrz bloku
 +  - wielokrotne testy dla okolo 15-20 funkcji z benchmarku dla różnych wymiarów i ich wyniki dla różnych parametrów. 
 +  - porównanie czasów wykonania
 +  - tabele ilustrujące wyniki (procentowa odległość od rozwiązania optymalnego, wartości średnie, mediana, min/max, odchylenie standardowe)
 +  - wykresy - wartość funckji celu dla kolejnych iteracji
 +  - dyskusja wyników
 +
 +
 +
 +==== Zarezerwowane/zgłoszone/dyskutowane ====
 +
 +  - Elixir
 +  - WebAssembly
 +  - Rekomendacja/ocena utworów muzycznych
 +  - Przepisy (zamienione na web crawling + walidację)  
 +  - Smart Mirror
 +
 +
 +
 +
 + 
 +
 +
 +
 ==== 2018 ==== ==== 2018 ====
   - Analiza nawierzchni tras rowerowych. Aplikacja dla systemu Android. Zbieranie danych GPS oraz odczytów czujników GPS. Etykietowanie głosowe. Głównym celem jest zebranie danych oraz przetestowanie możliwości rozpoznawania stanu nawierzchni. Dane zbierane w pamięci urządzenia + możliwość przekazywania na serwer (:!: zarezerwowane)   - Analiza nawierzchni tras rowerowych. Aplikacja dla systemu Android. Zbieranie danych GPS oraz odczytów czujników GPS. Etykietowanie głosowe. Głównym celem jest zebranie danych oraz przetestowanie możliwości rozpoznawania stanu nawierzchni. Dane zbierane w pamięci urządzenia + możliwość przekazywania na serwer (:!: zarezerwowane)
tematy_prac_inzynierskich.txt · Last modified: 2023/07/13 00:59 by pszwed
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0