Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
tematy_prac_inzynierskich [2013/08/28 13:38] pszwed [Symulacja i optymalizacja ruchu na skrzyżowaniu z wykorzystaniem logiki rozmyte] |
tematy_prac_inzynierskich [2019/10/02 22:10] pszwed [Tematy prac inżynierskich] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Struktura pracy ====== | ||
+ | |||
+ | [[struktura_pracy_inz|struktura_pracy_inz]] | ||
+ | |||
+ | |||
====== 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, | ||
+ | |||
+ | ==== 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, | ||
+ | |||
+ | |||
+ | ==== 3. Map matching ==== | ||
+ | (a) Implementacja (znanego) algorytmu rzutowania sekwencji odczytów GPS na mapę w postaci procedur składowanych dla PostgreSQL/ | ||
+ | |||
+ | Procedury mogą być zaimplementowane w | ||
+ | - [[https:// | ||
+ | - Java lub Pythonie (trudniejsze w konfiguracji i dyskusyjne wydajnościowo) | ||
+ | |||
+ | (b) Alternatywnie, | ||
+ | |||
+ | Zakres: | ||
+ | - załaduj mapę oryginalną | ||
+ | - podziel drogę na segmenty (od skrzyżowania do skrzyżowania) | ||
+ | - dodaj tabele/ | ||
+ | - dodaj tabele/ | ||
+ | - napisz procedurę, która dla nowego punktu: | ||
+ | - rozszerza graf o nowe możliwe wierzchołki // | ||
+ | - usuwa z grafu wierchołki, | ||
+ | - 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:// | ||
+ | //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:// | ||
+ | Konfigurowalna struktura dokumentu: [[http:// | ||
+ | Użycie PlantUML do generacji rysunków: [[http:// | ||
+ | |||
+ | ==== 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, | ||
+ | - opis platfromy (CUDA/ | ||
+ | - 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, | ||
+ | - wykresy - wartość funckji celu dla kolejnych iteracji | ||
+ | - dyskusja wyników | ||
+ | |||
+ | |||
+ | |||
+ | ==== Zarezerwowane/ | ||
+ | |||
+ | - Elixir | ||
+ | - WebAssembly | ||
+ | - Rekomendacja/ | ||
+ | - Przepisy (zamienione na web crawling + walidację) | ||
+ | - Smart Mirror | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== 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) | ||
+ | - Opcjonalnie (osobny temat) : backend + wizualizacja ścieżek rowerowych na mapie. Możliwość przetwarzania danych pomiarowych online (mikroserwis) | ||
+ | - Edytor/ | ||
+ | - Aplikacja webowa umożliwiające grupie użytkowników etykietowanie danych (fragmentów tekstów /wpisów z Twittera/ | ||
+ | - Symulacja ruchu drogowego w sieci autostrad oraz dobór parametrów | ||
+ | ===== 2016 ===== | ||
+ | |||
+ | ==== Ocena stanu nawierzchni dróg na podstawie danych z czujników urządzenia mobilnego==== | ||
+ | // | ||
+ | |||
+ | |||
+ | |||
+ | Celem pracy jest projekt i implementacja aplikacji mobilnej dla systemu Android, która będzie umożliwiała równoczesne zbieranie danych z czujnika GPS oraz akcelerometru wbudowanego w urządzenie mobilne. | ||
+ | |||
+ | *[[http:// | ||
+ | *[[http:// | ||
+ | *[[http:// | ||
+ | *[[https:// | ||
+ | |||
+ | ===== 2015 ===== | ||
+ | |||
+ | ==== Porównanie narzędzi przechowywania danych w postaci relacyjnej i formacie RDF ==== | ||
+ | |||
+ | :!: Zarezerwowane | ||
+ | |||
+ | RDF to format reprezentacji danych w postaci trójek (subject - predicate - object). Na przykład osoba może być reprezentowana jako (id,' | ||
+ | |||
+ | Celem pracy jest przeprowadzenie testów dotyczących efektywności operacji na BD (zapis, odczyt) indywidualnych rekordów, dużych grup danych dla reprezentacji relacyjnej oraz RDF. | ||
+ | |||
+ | ==== Edytor języka opisu architektury hurtowni danych ==== | ||
+ | |||
+ | :!: Zarezerwowane | ||
+ | |||
+ | |||
+ | Elementami języka są: magazyny danych, procesy, dane, warstwy, agenci, elementy infrastruktury oraz modele. Mogą być one połączone odpowiednimi relacjami, a także mogą być im nadane własności. | ||
+ | |||
+ | Celem pracy jest implementacja edytora z wykorzystaniem platformy Eclipse/EMF | ||
+ | Więcej informacji: | ||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | |||
+ | |||
+ | ==== Symulator zużycia energii wykorzystujący modele | ||
+ | |||
+ | Celem pracy jest opracowanie modeli zachowania użytkowników, | ||
+ | |||
+ | Proste przykłady są dostępne także tu: [[http:// | ||
+ | |||
+ | ==== Ocena niebezpieczeństw w ruchu drogowym na podstawie danych mapy ==== | ||
+ | |||
+ | :!: Zarezerwowane | ||
+ | |||
+ | Celem pracy jest zbudowanie systemu umożliwiającego wnioskowanie o potencjalnych niebezpieczeństawach dla odcinków dróg na podstawie infromacji zawartej w mapach. W szczególności wynik wnioskowania może posłużyć do ustalenia ograniczeń prędkości. | ||
+ | |||
+ | Model ma być zapisywany w postaci reguł (rozmytych) postaci (na przykład): | ||
+ | JEŚLI wpobliżu(odcinek, | ||
+ | JEŚLI nalezydo(odcinek, | ||
+ | |||
+ | Ostateczny wynik ma być ustalany w wyniku agregacji wyników reguł. | ||
+ | Źródłem map będzie OSM (Open Street Map). | ||
+ | |||
+ | Praca może być realizowana przez dwie osoby z logicznym podziałem: | ||
+ | |||
+ | 1) Obsługa, wczytywanie map OSM + implementacja zbioru predykatów (wpobliżu, kręta, zabudowania, | ||
+ | |||
+ | 2) System wnioskowania i agregacji rezultatów oraz wizualizacja wyników (OpenLayers) | ||
+ | |||
+ | ==== Automatyczna anonimizacja tekstów | ||
+ | :!: zarezerwowane | ||
+ | |||
+ | Celem pracy jest implementacja systemu, który będzie przeprowadzał anonimizację dokumentów tekstowych - czyli zastępował nazwiska osób, nazwy firm, miejscowości symbolami zastępczymi (np.. inicjałami). Celem jest automatyzacja procesu anonimizacji orzeczeń sądowych, przykłady manualnych rezultatów można znaleźć tu: [[http:// | ||
+ | |||
+ | System powinien posługiwać się słownikami (nazwisk, miejscowości) oraz pozwalać na zdefiniowanie reguł anonimizacji. Wynikiem przetwarzania powinien być dokument XML zawierający zarówno oryginalną treść, jak i wskazanie anonimizowanych treści. Należy przewidzieć także jego wizualizację (np. z wykorzystaniem XSLT). | ||
+ | |||
+ | |||
+ | ===== 2014 ===== | ||
+ | |||
+ | Na razie szkic... | ||
+ | |||
+ | **Temat 2014-1** :!: Zajęte (Michał Ślusarczyk) | ||
+ | |||
+ | Autentykacja użytkownika na podstawie charakterystyk czasowych uderzeń w klawisze (np. na wirtualnej klawiaturze Android). Różne tryby: jedno hasło lub uczenie dwójek i trójek znaków i prośba o wpisanie tekstu (captcha). | ||
+ | |||
+ | Należy jednak zebrać dane od około 20 użytkowników! | ||
+ | |||
+ | **Temat 2014-2** :!: Zajęty (Robert Przystasz) | ||
+ | |||
+ | Rekomendacja brakujących wymagań dla projektów informatycznych. W ramach pracy należy: | ||
+ | *zebrać informacje o funkcjach i przetwarzanych danych dla systemów z różnych dziedzin (np analizując 50-100 stron producentów z opisem aplikacji). | ||
+ | *ewentualnie manualanie dodać typowe wymagania (administracja, | ||
+ | *napisać aplikację webową, która po wprowadzeniu informacji o projekcie w języku angielskim (nazwy przypadków użycia, narracja, słownik z nazwami klas) określi prawdopodobną dziedzinę projektu i zarekomenduje brakujące wymagania. | ||
+ | |||
+ | Wyłącznie Java. Algorytm wyznaczenie rekomendacji musi być łatwy do wymiany (raczej z wykorzystaniem istniejącej biblioteki). | ||
+ | |||
+ | **Temat 2014-3** | ||
+ | |||
+ | **Zajęty :!:** | ||
+ | |||
+ | Symulacja komunikujących się pojazdów (http:// | ||
+ | Nowy protokół WiFi pozwala na dynamiczne budowanie połączeń sieciowych pomiędzy pojazdami w ruchu. | ||
+ | Samochody przemieszczające się w sieci drogowej budują grafy połączeń i przekazują informacje (np. o jadącej karetce, wypadkach, korkach, utrudnieniach). | ||
+ | |||
+ | Praca obejmuje: | ||
+ | *symulację ruchu po drogach (fragment mapy z OSM) | ||
+ | *symulację zdarzeń i przepływu informacji | ||
+ | Należy przewidzieć możliwość zatrzymania symulacji i wizualizacji grafów. | ||
+ | |||
+ | Platforma Java. | ||
+ | |||
+ | **Temat 2014-4** | ||
+ | |||
+ | :!: Zajety (Paweł Musiał) | ||
+ | |||
+ | Analiza i zastosowania algorytmów typu Pergel. Pergel to opublikowany około 4 lata temu przez Google model obliczeniowy służący do działań na dużych rozprosoznych grafach (np. obliczania PageRank). | ||
+ | |||
+ | https:// | ||
+ | |||
+ | |||
+ | W zależności od predyspozycji - praca może być bardziej przeglądowa (literatura + uruchomione przykłady dla kilku dostępnych podobnych pakietów) lub próba własnej implementacji uproszczonej lokalnej wersji modelu dla realizacji konkretnego zadania. Ewentualnie dwie tego typu prace. | ||
+ | |||
+ | **Temat 2014-5 Edytor relacji występujących w wypowiedziach.** | ||
+ | |||
+ | ** :!: Zajęte** (Adrian Gwoździewicz) | ||
+ | |||
+ | Celem pracy jest zbudowanie aplikacji webowej (np. z wykorzystaniem JSF) pozwalającej na zapis w relacyjnych strukturach danych wprowadzonych przez użytkownika opisów wypowiedzi. Inne funkcje to wyszukiwanie autorów, terminów, itp. Praca obejmuje analizę i specyfikację, | ||
+ | |||
+ | Model wypowiedzi (przykładowy): | ||
+ | |||
+ | < | ||
+ | proposition: | ||
+ | | ||
+ | | ||
+ | |||
+ | statement: | ||
+ | claim(Author, | ||
+ | agree(Author, | ||
+ | disagree(Author, | ||
+ | agree_a(Author, | ||
+ | disagree_a(Author, | ||
+ | equivalent(proposition, | ||
+ | thesis | | ||
+ | definition | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | **Temat 2014-6 Nowoczesne serwisy internetowe oparte o technologię WebSocket** | ||
+ | |||
+ | :!: **Zajęte** (Konrad Seweryn) | ||
+ | |||
+ | |||
+ | <!-- | ||
+ | ==== Te tematy nie są pewne ==== | ||
+ | |||
+ | |||
+ | **Temat 2014-X1** | ||
+ | Analiza, projekt i implementacja systemu do zapisów studentów do dziekanatu. | ||
+ | *Dostęp przez przeglądarkę (student i pracownik dziekanatu) | ||
+ | *Dostęp przez aplikację mobilną (interfejs REST do serwera) | ||
+ | //Temat na podstawie nieprecyzyjnych informacji z dziekanatu, zapisy i szczegóły do ustalenia. // | ||
+ | |||
+ | |||
+ | **Temat 2014-X2** | ||
+ | System realizujący proces obsługi prac dyplomowych (zgłaszanie tematów, akceptacja, publikacja, zapisy, finalizacja). Zakres: Analiza wymagań, projekt, implemntacja. | ||
+ | //Temat na podstawie nieprecyzyjnych informacji z dziekanatu, zapisy i szczegóły do ustalenia. // | ||
+ | |||
+ | --> | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== 2013 ===== | ||
+ | |||
+ | :!: **Ze względu na przekroczenie limitu prac dyplomowych nie mogę być promotorem kolejnych prac inżynierskich.** | ||
==== Implementacja repozytorium wideo w oparciu o rozproszony system plików CrOS FS ==== | ==== Implementacja repozytorium wideo w oparciu o rozproszony system plików CrOS FS ==== | ||
Line 17: | Line 283: | ||
Celem pracy jest implementacja klienta systemu, który umożliwiał będzie przesyłanie na serwer i pobieranie dużych plików(np.: | Celem pracy jest implementacja klienta systemu, który umożliwiał będzie przesyłanie na serwer i pobieranie dużych plików(np.: | ||
- | ==== Optymalizacja zużycia energii mobilnych czujników GPS ==== | + | ==== Optymalizacja zużycia energii mobilnych czujników GPS ==== |
+ | |||
+ | :?: ZAREZERWOWANE :?: | ||
Mobilny czujnik GPS przesyła informacje o położeniu pojazdów do centralnego systemu. Jednakże okresowy transfer pojedynczych danych, np.: co 5 sekund jest zbyt kosztowny: | Mobilny czujnik GPS przesyła informacje o położeniu pojazdów do centralnego systemu. Jednakże okresowy transfer pojedynczych danych, np.: co 5 sekund jest zbyt kosztowny: | ||
*zużywa energię | *zużywa energię | ||
*generuje koszty (opłaty za komunikację) | *generuje koszty (opłaty za komunikację) | ||
- | Bardziej opłacalne jest przesłanie paczki danych. Problemem jest jednak kiedy i jaką podjąć decyzję. | + | Bardziej opłacalne jest przesłanie paczki danych. Problemem jest jednak kiedy i jaką podjąć decyzję |
Celem pracy jest | Celem pracy jest | ||
- Implementacja aplikacji mobilnej zbierającej dane o położniu pojazdów | - Implementacja aplikacji mobilnej zbierającej dane o położniu pojazdów | ||
- Analiza danych i przeprowadzenie optymalizacji mającej na celu ustalenie polityki, czyli wskazania jaką decyzję należy podjąć danego stanu. Dalsze informacje przekażę bezpośrednio. | - Analiza danych i przeprowadzenie optymalizacji mającej na celu ustalenie polityki, czyli wskazania jaką decyzję należy podjąć danego stanu. Dalsze informacje przekażę bezpośrednio. | ||
- | |||
==== Symulacja i optymalizacja ruchu na skrzyżowaniu z wykorzystaniem logiki rozmytej ==== | ==== Symulacja i optymalizacja ruchu na skrzyżowaniu z wykorzystaniem logiki rozmytej ==== | ||
+ | |||
+ | :!: ZAJĘTE :!: | ||
Koncepcyjnie, | Koncepcyjnie, | ||
Line 44: | Line 313: | ||
W wyniku wnioskowania następuje " | W wyniku wnioskowania następuje " | ||
Reguły rozmyte są bardzo rozpowszechnione, | Reguły rozmyte są bardzo rozpowszechnione, | ||
- | + | ||
+ | ==== Metryki dla architektur oprogramowania | ||
+ | |||
+ | :!: ZAJĘTE :!: | ||
+ | |||
+ | Celem pracy jest implementacja wtyczki do programu Archi mającej na celu obliczenie zbioru około 20-25 metryk mających na celu ocenę jakości | ||
+ | |||
+ | Zasada działania - przeglądany jest pewien graf opisujący model architektury i wyznaczane są dość proste w implementacji metryki grafowe(na podstawie literatury). Dodatkowo powinny być obliczone i zilustrowane wpływy metryk na tzw. atrybuty jakości (złożoność: | ||
+ | |||
+ | Wtyczka jest napoczęta, obliczone są dwie przykładowe metryki. | ||
+ | |||
+ | Część literaturowa obejmowała będzie | ||
+ | *język ArchiMate | ||
+ | *modele referencyjne | ||
+ | *metryki |