system informacyjny komunikacji miejskiej „odyseusz”
Transkrypt
system informacyjny komunikacji miejskiej „odyseusz”
SYSTEM INFORMACYJNY KOMUNIKACJI MIEJSKIEJ „ODYSEUSZ” seminarium dla firmy SIEMENS PLAN PREZENTACJI: 1. Historia SKN-ISA2; 2. Wstęp; 3. Projekt realizują; 4. Cel projektu; 5. Podstawowe założenia systemu; 6. Komunikacja użytkownika z systemem; 7. Protokół WAP; 8. Midlet JAVA; 9. Aplikacja w systemie Symbian/Windows CE; 10. Baza danych; 11. Nasza propozycja; 12. Kontakt; Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 2 HISTORIA SKN-ISA2 SKN-ISA2 ( Studenskie Koło Naukowe - Informatyki Systemów Autonomicznych i Adaptacyjnych ) jest organizacją założoną przez dr inż. Marka Piaseckiego oraz dr inż. Pawła Rogalińskiego dla studentów Wydziału Elektroniki Politechniki Wrocławskiej, których pasją jest tworzenie inteligentnych systemów wirtualnych oraz konstruowanie i programowanie robotów. Koło oficjalnie zarejestrowane zostało 9 kwietnia 2002 r. Założenie usankcjonowało ponad dwuletnią historię różnych projektów studenckich. Od tamtej pory przybywa nam aktywnych członków oraz nowych pomysłów na ulepszanie świata. Projektami od których zaczynaliśmy naszą działalność są: „Seminarium z eksperymentalnego konstruowania robotów” – ideą, którego jest wykonanie robotów bazujących na elementach Robotic Invention System (Lego Mindstorms) oraz oprogramowanie ich zachowania; zbudowanie drużyny grających w piłkarskiej lidze robotów symulacyjnej międzynarodowych zawodów RoboCup; Obecnie rozwijamy kolejne projekty: projekt sterownika opartego na mikrokontrolerze ATmega i wykorzystującego moduł GSM do przesyłania informacji; zintegrowany system informacyjny o komunikacji miejskiej „ODYSEUSZ”; Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 3 W dorobku naszym posiadamy wiele osiągnięć, którymi możemy się pochwalić: reprezentowanie Politechniki Wrocławskiej w zawodach EuroboCup’2001 w Holandii oraz VI Mistrzostwach Świata piłki nożnej robotów RoboCup’2002 w Fukuoka w Japonii; przygotowanie kilku referatów i sesji plakatowych na uczelnianą Konferencję Naukową Studentów w latach 2003, 2004 i 2005; poprowadzenie wykładów na temat RoboCup i warsztatów na temat Mindstorms, podczas Dolnośląskiego Festiwalu Nauki w latach 2001 i 2002; reprezentowanie Wydziału Elektroniki na Dolnośląskich Targach Edukacyjnych; udział w Dniach Technologii Informatycznej w roku 2001, 2002 i 2005; zoorganizowanie prezentacji przedpremierowej „Matrix - Rewolucje” w kinie HELIOS Od początku istnienia jesteśmy bardzo mocno związani z międzynarodowym stowarzyszeniem inżynierów elektryków, elektroników i informatyków o nazwie EESTEC (Electrical Engineering STudents European assoCiation). Członkowie naszego koła uczestniczyli w wielu międzynarodowych wymianach, warsztatach oraz kongresach m.in. Congress 2005 w Madrycie. Jesteśmy organizacją skupiającą ludzi pełnych pasji i oddania dla swojej pracy. Potrafi pracować w grupie i razem tworzyć duże projekty, które z radością prezentujemy studentom z młodszych lat oraz wszystkim zainteresowanym. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 4 WSTĘP Mieszkańcy dużych aglomeracji miejskich muszą przemieszczać się w różne rejony miasta. Najszybszym i najwygodniejszym sposobem podróżowania w obrębie miasta jest korzystanie z własnego samochodu. Jednak wiele osób musi korzystać ze środków komunikacji zbiorowej. Całkowity czas przejazdu tymi środkami jest często znacznie dłuższy niż czas przejazdu samochodem. Wynika to stąd, że do czasu samego przejazdu autobusem lub tramwajem trzeba doliczyć czas dojścia do przystanków, czas oczekiwania na pojazd właściwej linii oraz czasy związane z koniecznością przesiadek. Oszczędność czasu wymaga więc wstępnego planowania przejazdów, tak by dostosować trasy i pory przejazdów do aktualnego rozkładu jazdy. To wymaga dostępu do informacji o kursowanie poszczególnych linii. Informacje dostępne na przystankach są bardzo ograniczone i zawierają jedynie trasę przejazdu i planowe godziny odjazdu pojazdów kilku linii. To nie wystarcza do wyszukiwania optymalnych połączeń do miejsca docelowego. Informacje zbiorcze o całym rozkładzie jazdy oraz ewentualne systemy wyszukiwania połączeń dostępne są na stronach internetowych. Większość potencjalnych użytkowników nie ma możliwości korzystania z tych serwisów poza miejscem zamieszkania lub pracy. Obecnie coraz popularniejsze stają się serwisy WAP dostępne przez telefon komórkowy. Serwisy tego typu zawierają zwykle wyłącznie informacje o aktualnym rozkładzie jazdy na poszczególnych przystankach. Poważnym utrudnieniem przy wstępnym planowanie przejazdów są zakłócenia występujące w planowym kursowaniu środków komunikacji zbiorowej. Często występują znaczne opóźnienia spowodowane występowaniem korków w newralgicznych punktach miasta. Czasami planowe kursy poszczególnych linii są odwoływane z powodu awarii. Obecnie w większości miast nie ma żadnych możliwości natychmiastowego informowania pasażerów o tego typu bieżących zakłóceniach. To powoduje bardzo dużą dezinformację i znaczne wydłużenie czasu podróży. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 5 PROJEKT REALIZUJĄ Członkowie Studenckiego Koła Naukowego Informatyki Systemów Autonomicznych i Adaptacyjnych działającego na Wydziale Elektroniki Politechniki Wrocławskiej podjęli starania by stworzyć system informacyjny, wspomagający pasażerów korzystających środków komunikacji zbiorowej we Wrocławiu. System jest realizowany w ramach projektu „ODYSEUSZ”. Skład zespołu projektowego: dr inż. Paweł Rogaliński Łukasz Kulik Adrian Dydecki Łukasz Jaromin Marcin Jaworski Michał Jura CEL PROJEKTU Celem projektu „ODYSEUSZ” jest budowa zintegrowanego systemu informacyjnego, który powinien wspomagać użytkownika komunikacji zbiorowej w optymalnym podróżowaniu po Wrocławiu. System ma dostarczać aktualne i wyczerpujące informacje o planowym kursowaniu poszczególnych linii oraz umożliwiać planowanie optymalnego sposobu przejazdu pomiędzy dowolnymi miejscami w obrębie miasta. Rozwojowa wersja systemu powinna być sprzężona z systemem monitorowania ruchu wszystkich środków komunikacji i dostarczać informacji o zakłóceniach i krótkookresowych zmianach w funkcjonowaniu komunikacji. System powinien być dostępny za pomocą telefonów komórkowych w postaci serwisu WAP, wyspecjalizowanych midletów Java lub serwisów SMS/MMS. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 6 PODSTAWOWE ZAŁOŻENIA SYSTEMU „ODYSEUSZ” Podstawowe założenia systemu: system będzie dostarczał wyczerpujących informacji o kursowanie środków komunikacji zbiorowej, system będzie umożliwiał wyszukiwanie optymalnych połączeń komunikacyjnych między dowolnymi miejscami w obrębie miasta, komunikacja użytkownika z systemem będzie realizowana za pomocą telefonu komórkowego, architektura otwarta – możliwość rozbudowy systemu w celu rozszerzenia funkcjonalności, budowa modułowa, Do komunikacji z użytkownikiem używane będą różne interfejsy: protokół WAP – formułowanie zapytań poprzez wypełnianie prostych formularzy, aplikacja Java/Symbian/Windows CE – komunikacja realizowana przez wyspecjalizowane aplikacje instalowane w telefonie, SMS/MMS – wymiana danych poprzez przesyłanie prostych komunikatów tekstowych. lub graficznych, komunikacja głosowa – wymiana informacji między użytkownikiem i systemem będzie się odbywała w formie poleceń zapytań i komunikatów formułowanych w języku naturalnym. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 7 Ogólny zarys struktury systemu. System „ODYSEUSZ” będzie rozwijany w dwóch wariantach: wariant podstawowy - umożliwiający dostarczanie informacji oraz wyszukiwanie połączeń na podstawie rozkładu jazdy. rozwojowa wersja systemu – integracja systemu wyszukiwania połączeń z systemem monitorowania ruchu pojazdów, który umożliwia wykrywanie i aktywne przewidywanie zakłóceń komunikacji spowodowanych opóźnieniami i awariami. wersja zaawansowana informujących wcześniej – użytkownika połączenia, wyposażona o w konieczności spowodowanej system aktywnych modyfikacji zakłóceniami w agentów zaplanowanego ruchu pojazdów (opóźnienia, awarie, itp.). Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 8 KOMUNIKACJA UŻYTKOWNIKA Z SYSTEMEM Sprawą priorytetową, mającą wpływ na przydatność całego systemu jest prosty i przyjazny dla użytkownika końcowego interfejs. Jest to kwestia kluczowa, ponieważ skomplikowane i długotrwałe wprowadzanie informacji mogłoby nie uprościć, a wręcz utrudnić poszukiwanie połączeń oraz zniechęcić potencjalnych użytkowników do korzystania z systemu. W celu sprostania tym wymaganiom przewiduje się stworzenie interfejsów użytkownika w oparciu o technologie wymienione poniżej: • WAP • J2ME • SMS • Symbian, Windows CE (aplikacja) • Głosowe rozpoznawanie podawanych przystanków Interfejsy te maja różne cechy charakterystyczne, mogące w różnym stopniu wspierać użytkownika podczas wprowadzania oraz odbierania informacji. Wykorzystują one technologie ogólnodostępne dla dzisiejszych telefonów takie jak WAP, Java oraz SMS. Przewidywane jest również wykorzystanie modułów GPS wbudowanych w nowoczesne telefony, do lokalizacji aktualnego położenia PROTOKÓŁ WAP Podstawowym interfejsem planowanym do wdrożenia jest strona WAP. Podstawową zaletą tego rozwiązania jest to, że użytkownik nie musi instalować specjalnego oprogramowania na swoim telefonie oraz to, iż obecnie WAP jest technologią w którą wyposażona jest zdecydowana większość telefonów, które są aktualnie w użyciu. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 9 Proces wprowadzania danych sprowadzałby się w tym przypadku do wypełnienia formularza w postaci strony WAP. Formularz ten oferowałby kilka możliwości poszukiwań. W zależności od sposobu wyszukiwania rozważa się następujące przypadki: 1. Użytkownik podaje miejsce swojego położenia oraz celu podróży. 2. Użytkownik podaje miejsce swojego położenia, celu podróży jak również precyzuje godzinę w pobliżu której podróż ma się rozpocząć. 3. Użytkownik podaje miejsce swojego położenia, celu podróży jak również precyzuje godzinę, przed którą podróż musi się zakończyć. W każdym z powyższych przypadków niezbędne jest określenie przez użytkownika swojego położenia oraz położenia celu podróży. Jest to jeden z minusów komunikacji poprzez stronę WAP (nie ma możliwości skorzystania z modułu GPS znajdującego się w telefonie). Problem ten wymusza utworzenie prostego mechanizmu określania położenia w mieście. Przewiduje się zastosowanie identyfikacji tych miejsc poprzez podawanie: 1. Nazw dwóch ulic krzyżujących się znajdujących się w pobliżu, 2. Numeru budynku znajdującego się w pobliżu wraz z nazwą ulicy, 3. Nazw powszechnie znanych miejsc (np. Dworzec Główny PKP) 4. Nazwy przystanku 5. Unikalnego numeru umieszczonego na przystanku, Aplikacja znajdująca się na serwerze będzie weryfikować dane podawane przez użytkownika. Oprócz sprawdzania ich poprawności zostanie zaimplementowany mechanizm poprawiania drobnych pomyłek (np. tzw. „literówek”). Odciąży to użytkownika od kilkukrotnego poprawiania danych wejściowych, czyli wielokrotnego wypełniania formularza (rys. 1). Wszystkie te zabiegi mają na celu uproszczenie do niezbędnego minimum ingerencji użytkownika w system, a co za tym idzie zminimalizowania czasu potrzebnego do wprowadzenia danych jak również kosztów połączeń. Po wprowadzeniu dane zostają wysłane do serwera, który obliczy optymalną trasę, a następnie zwróci odpowiedź. Odpowiedź ta będzie miała oczywiście postać Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 10 strony WAP i będzie się na nią składać nazwa przystanku początkowego wraz z czasem najbliższego pasującego połączenia, trasa połączenia wraz z ewentualnymi przesiadkami oraz godzina o której użytkownik znajdzie się w punkcie końcowym. Rozszerzona wersja odpowiedzi systemu przewiduje możliwość dostępu do większej ilości danych np. dokładne informacje na temat przemieszczania się pomiędzy ewentualnymi przystankami pośrednimi, opisy środków transportu, itd. Wszystko to, będzie być przedstawiane w formie graficznej (np. fragmenty map) lub też tekstowej (opisy słowne). START Określenie nazwy przystanku Określenie numeru przystanku Określenie dwóch ulic krzyżujących się w pobliżu Podanie numeru budynku i nazwy ulicy Podanie nazwy znanego miejsca Sprawdzenie poprawności danych wejściowych i ewentualne poprawienie ich NIE Dane są poprawne TAK Odnalezienie przystanków znajdujących się w najbliższej okolicy KONIEC Rysunek 1. Algorytm precyzowania położenia za pomocą strony WAP MIDLET JAVA Dzięki użyciu tego typu interfejsu staje się możliwa prawdziwa interakcja z użytkownikiem. Przede wszystkim będzie możliwe podpowiadanie użytkownikowi nazw przystanków, ulic oraz numerów domów podczas wpisywania. Będzie to zrealizowane w postaci listy rozwijanej, bądź też autouzupełniania danych Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 11 wpisywanych w pole tekstowe (np. po wpisaniu litery „p” użytkownik będzie miał możliwość wyboru ulic zaczynających się na tą literę). Dotyczące ulic oraz nazw przystanków i „znanych miejsc” służące do uzupełniania będą wczytane do pamięci telefonu. Przewiduje się możliwość automatycznej aktualizacji danych zapisanych w pamięci telefonu poprzez pobieranie danych z serwera. Dodatkowymi zaletami Javy są rozbudowane możliwości multimedialne. Przede wszystkim jest w tym przypadku możliwe wyświetlanie map, które mogły być pomocne podczas przesyłania informacji na temat podróży, przesiadek lub wskazywania miejsca docelowego. Przy czym w odróżnieniu od strony WAP tutaj mogłaby zostać użyta grafika wektorowa w celu zmniejszenia ilości przesyłanych danych. W porównaniu z interfejsem w postaci strony WAP midlet daje znacznie większe możliwości. Oprócz przedstawionych wcześniej sposobów określenia położenia, możliwe będzie również wykorzystanie modułu GPS umieszczonego w telefonie. Moduł ten mógłby zostać z powodzeniem wykorzystany do wyznaczania położenia użytkownika. Korzyści natomiast są ogromne – użytkownik nie musi wiedzieć w którym miejscu miasta się znajduje. Jego rola sprowadza się jedynie do określenia punktu końcowego podróży i ewentualnie godziny odjazdu/przyjazdu. Komunikacja midletu z serwerem odbywać się będzie przy użyciu protokołu HTTP oraz XMLa. Taki sposób reprezentacji danych wydaje się najbardziej sensowny ze względu na łatwy sposób dostępu do przydatnych informacji dzięki parserom. APLIKACJA W SYSTEMIE SYMBIAN/WINDOWS CE Aplikacja przeznaczona dla systemów Symbian i Windows CE funkcjonalnie nie różni się od midletu Javy. Takie rozwiązanie zapewne znacznie przyspieszy działanie aplikacji po stronie użytkownika, a co za tym idzie daje możliwość lepszego wspierania go podczas wprowadzania danych. Rozwiązanie wykorzystujące wspomniane systemy operacyjne jest rozważane jako alternatywa dla Javy. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 12 USŁUGA SMS / MMS Innym możliwym interfejsem, jest komunikacja poprzez SMS (ew. MMS). W tej chwili jest to najczęściej wykorzystywany sposób komunikacji telefonu komórkowego z innymi systemami zewnętrznymi. Zapytanie budowane w SMS’ie jest bardzo proste i krótkie. W treści SMS’a podana jest jedynie nazwa przystanku lub nazwa węzła miejsca rozpoczęcia podróży i jej zakończenia i ewentualnie godziny rozpoczęcia podróży, domyślnie przyjmowana jest aktualna godzina. Program obsługujący takie zapytanie „wyciąga” potrzebne mu informacje i identyfikuje nazwy przystanku lub węzła komunikacyjnego. Niestety SMS posiada bardzo skromne możliwości. W odpowiedzi przesyłane są jedynie: godzina, numer linii, przesiadki i ewentualnie krótki opis słowny położenia przystanku. Jeśli odpowiedź wysyłana jest MMS’em to istnieje możliwość wysyłania grafiki. Podróżny wraz z odpowiedzią i czasami przesiadek, mógłby otrzymywać małe poglądowe mapki wskazujące na przystanek, na którym musi wysiąść i na który musi dojść do kolejnego przystanku. Mapki takie są przewidziane w strukturze systemu wraz z opisem tekstowym. Mapka taka jest również wysyłana, aby wskazać konkretny przystanek w węźle komunikacyjnym. INTERFEJS GŁOSOWY W przyszłości, jeśli będzie istniało zainteresowanie naszym projektem, planujemy wprowadzić także interfejs głosowy. Zasada działania takiego interfejsu będzie bardzo podobna do dzisiejszej informacji telefonicznej. Użytkownik zadzwoni pod specjalny numer. Tam jest poproszony o podanie miejsca położenie (w przypadku, gdyby nie został zlokalizowany na podstawie innych danych) oraz Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 13 miejsca docelowego. Taka informacja zostałaby przekształcona na odpowiednie dane „zrozumiałe” dla komputera. Interpretacja zapytań głosowych realizowana będzie przez system analizy mowy, wspomagany przez operatora (telefonistkę). Odpowiedź system będzie automatycznie generował w formie słownej przez system syntezy mowy. BAZA DANYCH Informacje niezbędne do pracy systemu „ODYSEUSZ” będą zgromadzone w bazie danych tworzonej na podstawie schematu systemu komunikacyjnego oraz aktualnego rozkładu jazdy dostarczanego przez przedsiębiorstwa obsługujące komunikacje zbiorową. Sposób przechowywania danych nie został jeszcze ostatecznie ustalony, ponieważ jest to zdeterminowane wyborem sposobu działania algorytmu wyszukiwania optymalnych połączeń komunikacyjnych. Pierwotnie dane były przechowywane w bazie danych MySQL, a następnie przekształcane na dane binarne zapisane w dedykowanych plikach, z których bezpośrednio korzysta algorytm wyszukiwania połączeń. Dedykowany sposób zapisu danych został przyjęty w celu przyspieszenia wyszukiwania. W kolejnych wersjach systemu przewiduje się jednak wczytywanie wszystkich danych niezbędnych do planowania połączenia do pamięci operacyjnej. Obecnie trwają prace mające na celu ustalenie ostatecznego formatu plików dedykowanych oraz sposobu dostępu do nich. Strukturę bazy danych przedstawiono w uproszczonej formie ilustrującej jedynie podstawowe zależności między poszczególnymi klasami obiektów. W bazie wyróżniono cztery podstawowe klasy obiektów: przystanek, węzeł komunikacyjny, trasa i kurs. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 14 Rysunek 2. Klasy obiektów Kurs Trasa PK id_trasy Przystanek PK id_kursu FK1 FK2 id_trasy id_przystanku nr_przystanku godzina nazwa PK id_przystanku nazwa x y numer Wezel Nazwy_wezlow PK,FK1 PK id_wezla FK1 id_przystanku x y id_wezla nazwa Rysunek 3. Postać logiczna struktury danych Tabela Trasa wiąże nazwy (numery) linii komunikacyjnych z przyporządkowanymi im numerami identyfikacyjnymi tras. Trasa jest rozważana jako droga (lista przystanków), po której porusza się pojazd określonej linii. Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 15 Przykład: Pojazdy linii „5” jeżdżą po dwóch trasach. Linia „5” będzie miała więc dwa wpisy w tabeli: Nazwa Id_trasy 5 3 5 4 Tabela 1. Przykład tabeli Trasa Tabela Przystanek zawiera niepowtarzalny numer identyfikacyjny przystanku, nazwę znajdującą się na tabliczce, numer nadany przez przedsiębiorstwo komunikacyjne oraz koordynaty geograficzne. Id_przystanku Nazwa X Y Numer 435 Dworzec PKP 123.13.23 332.45.87 238972 344 Dworzec PKS 222.67.34 333.61.01 123242 Tabela 2. Przykład tabeli Przystanek Przystanki znajdujące się blisko siebie w sensie położenia geograficznego są grupowane w węzły. Z każdym węzłem jest skojarzona nazwa oraz koordynaty środka węzła. Taki sposób grupowania przystanków ma na celu uproszczenie sposobu określania miejsca w zapytaniach – użytkownik może nie znać dokładnej nazwy przystanku, a zamiast tego może określić nazwę węzła np. „Dworzec PKP”. Dzięki temu aplikacja będzie mogła szybko znaleźć grupę przystanków skojarzonych z danym miejscem. Kurs jest rozumiany jako przejazd konkretnego pojazdu po zadanej trasie o określonej godzinie. Zadaniem tabeli Kurs jest grupowanie wszystkich danych o kursach. Oto przykład zapisu kursu w tabeli: Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 16 Id_kursu Id_trasy Id_przystanku Nr_przystanku Godzina 1 3 435 1 123 1 3 344 2 126 1 3 213 3 129 2 4 222 1 443 Tabela 3. Przykład tabeli Kurs Zapis ten należy rozumieć jako przejazd po trasie 3 (czyli dla linii o nazwie „5” z poprzedniej tabeli) która obejmuje przystanki 435, 344, 213 o czasach odpowiednio 123, 126, 129 minut po północy. Ostatni wiersz w tabeli to nowy kurs, dla trasy 4. Warto zauważyć że pomimo tego, że po trasie 4 jeździ pojazd o tej samej nazwie co dla trasy 3, lista przystanków jest tutaj inna (zaczyna się od przystanku 222). Źródłem danych są rozkłady jazdy udostępniane przez przedsiębiorstwo komunikacyjne, które muszą zostać przekształcone do odpowiedniej postaci. Informacje zawarte rozkładach jazdy w zupełności wystarczają do zbudowania powyższych struktur danych. Niestety nie wszystkie są zadane wprost. Problemem jest rekonstrukcja kursów, która polega na nadaniu kilku kolejnym wierszom w tabeli Kurs , które charakteryzują się tym, że posiadają takie samo Id_trasy oraz godziny oraz numery przystanków uporządkowane rosnąco tego samego Id_kursu. Z uwagi na to, że różne przedsiębiorstwa komunikacyjne posiadają rozkłady jazdy w różnych formatach, konieczne jest stworzenie specyficznego programu konwertującego dane do wymaganej postaci. Kolejnym zagadnieniem jest uaktualnianie danych znajdujących się w bazie oraz w strukturach danych aplikacji wyszukującej. Niezbędne jest stworzenie programu odpowiedzialnego za aktualizację. Jego zadaniem będzie dostarczanie danych z serwera przedsiębiorstwa komunikacyjnego, przekształcanie ich do odpowiedniej postaci oraz zapis lokalnej kopii, z której korzysta aplikacja wyszukująca. Program taki uruchamiałby się automatycznie z określoną Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 17 częstotliwością i aktualizował dane jedynie wtedy gdy zaszłaby taka konieczność. Każda taka aktualizacja pociągałaby za sobą konieczność uaktualnienia struktur danych w pamięci operacyjnej. Opisana powyżej procedura uaktualniania dotyczy statycznych rozkładów jazdy, które ulegałyby jedynie sezonowym poprawkom. W rozwojowej wersji systemu „ODYSEUSZ” dane na temat rozkładów będą zmieniać się również dynamicznie, tak, by uwzględniać zakłócenia komunikacyjne spowodowane opóźnieniami i awariami pojazdów. Dane o rzeczywistych godzinach przyjazdów/odjazdów będą modyfikowane na podstawie informacji o położeniu pojazdów dostarczonych systemu monitorowania ruchu pojazdów, który wykorzystuje zainstalowane na pojazdach moduły GPS. Efektywne wykorzystanie tych informacji wymaga opracowania algorytmów prognozujących godziny przyjazdów, na podstawie danych o położeniu pojazdów jak również innych przesłanek np. godzin szczytu komunikacyjnego w mieście. Rysunek 4. Schemat aktualizacji danych w bazie Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 18 NASZA PROPOZYCJA W ramach współpracy oferujemy: innowacyjny projekt realizowany pod kierunkiem kadry naukowej Instytutu Cybernetyki Technicznej Politechniki Wrocławskiej; młodych ludzi pełnych świeżych pomysłów oraz zapału i pasji do pracy; kolejne projekty, które poprzez spontaniczne pomysły staną się urzeczywistnieniem ludzkich marzeń; kreowanie pozytywnego wizerunku firmy SIEMENS wśród studentów Politechniki Wrocławskiej przyszłych inżynierów oraz magistrów; W ramach współpracy oczekujemy: umożliwienie dalszej realizacji projektu „ODYSEUSZ” oraz pomoc przy wdrożeniu gotowego systemu w życie; zaoferowanie podjęcia ścisłej współpracy w formie stażów; zaopiniowanie naszego systemu w formie pisemnej recenzji na podstawie dostarczonej dokumentacji; wymiana myśli i pomysłów w celu ulepszenia całego systemu; W ramach działalności SKN-ISA2 współpracują z nami: komitet lokalny LC Wrocław międzynarodowej organizacji EESTEC; Studenckie Koło Naukowe - Instytutu Cybernetyki Technicznej; Studenckie Koło Naukowe Robotyków - KONAR; Fundacja MANUS na rzecz studentów Politechniki Wrocławskiej; Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 19 KONTAKT Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław autonom.ict.pwr.wroc.pl opiekun naukowy dr inż. Paweł Rogaliński [email protected] przewodniczący kierownik projektu Michał Jura Łukasz Kulik tel: +48 605 091 129 tel: +48 502 201 852 [email protected] [email protected] Studenckie Koło Naukowe Informatyki Systemów Autonomicznych i Adaptacyjnych ul. Janiszewskiego 11/17 50-372 Wrocław 20