Differences

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

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
tematy_prac_inzynierskich [2018/09/15 00:32]
pszwed [Tematy prac inżynierskich]
tematy_prac_inzynierskich [2019/12/23 03:25]
pszwed [Struktura pracy]
Line 1: Line 1:
 +====== Struktura pracy ======
 +
 +[[struktura_pracy_inz|Struktura pracy]]
 +
 +:!: Uwagi...
 +
 +  * W tekście pracy nie używamy czasu przyszłego (opisujemy to, co jest/istnieje lub to, co zostało zrobione)
 +  * Nie piszemy, że //chcemy przybliżyć// lub //ułatwić zrozumienie//. Czytelnikiem jest osoba oceniająca pracę, więc nie można sugerować, że czegoś może nie rozumieć ;-)
 +  * W miarę mozliwosci ilustrujemy tekst rysunkami. Nawet prostymi, typu przepływ danych od A do D poprzez B i C: A -> B -> C -> D. 
 +  * Podczas obrony przewidziana jest trwająca około 7 min prezentacja, podczas której pokazuje się 8-12 slajdów. Prezentacja jest oceniana (25% oceny z obrony). Rysunki wybrane z pracy są tu dobrymi kandydatami na treść slajdów.
 +  * Prezentacja powinna obejmować:
 +      - Slad tytułowy
 +      - Cel pracy
 +      - Przedstawiennie problemu, motywacje
 +      - Może zawierać elementu przegladu literatury (ale krótko)
 +      - Opis prac własnych (zaprojektowano, zaimplementowano, przetestowano, rezultaty). Raczej rysunki, diagramy, niewielkie tabele, mało tekstu.
 +      - Podsumowanie 
 +  * Zła prezentacja:
 +     * Ma 20 slajdów
 +     * W tym 12+ to przegląd literatury i przytoczenie znanych faktów/definicji/rozwiązań/technologii, a 3 slady na prace własne
 +     * Dyplomant skupia się na szczegółach
 +     * Około 14 slajdu przewodniczący komisji przerywa i prosi o przejście do podsumowania (przed slajdami z pracami własnymi)
 ====== Tematy prac inżynierskich ====== ====== Tematy prac inżynierskich ======
  
-:!: Brak wolnych miejsc semestrze zimowym 2018+===== 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: 2024/06/17 14:54 by pszwed
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0