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

Podobne dokumenty