DAMIAN FILIPKOWSKI doi: 10.12716/1002.29.06 Akademia Morska w Gdyni Katedra Nawigacji MODELOWANIE CZĘSTOŚCI TRANSMISJI DANYCH Z WYKORZYSTANIEM FUZZY TOOLBOX MATLAB Ten artykuł powstał podczas prac nad modelowaniem częstości transmisji danych w transporcie morskim, w trakcie których stworzono sterownik wykorzystujący logikę rozmytą. Na podstawie teoretycznych założeń opracowano funkcje przynależności i reguły wnioskowania oraz wybrano zdaniem autora najodpowiedniejszą metodę agregacji. Pojawiła się jednak potrzeba weryfikacji założeń i sprawdzenia prawidłowości działania sterownika. W tym celu użyto narzędzia Fuzzy Toolbox, które jest biblioteką MATLAB-Simulink powstałą w celu projektowania regulatorów i sterowników rozmytych. Proces tworzenia sterownika rozmytego za pomocą tegoż oprogramowania oraz wnioski płynące z weryfikacji założeń początkowych przedstawiono w niniejszym opracowaniu. Słowa kluczowe: transmisja danych, e-nawigacja, logika rozmyta. 1. LOGIKA ROZMYTA I FUZZY TOOLBOX MATLAB Logika rozmyta jest działem matematyki pozwalającym na formalne zapisanie niepewności. Stanowi jedno z rozwiązań logiki wielowartościowej, w której pomiędzy pełną przynależnością oraz brakiem przynależności do danego zbioru istnieje również możliwość przynależności w pewnym stopniu. Celem wprowadzenia teorii zbiorów rozmytych była potrzeba matematycznego opisania tych zjawisk i pojęć, które mają charakter wieloznaczny i nieprecyzyjny. Systemy rozmyte znajdują zastosowanie tam, gdzie człowiek nie ma wystarczającej wiedzy o modelu matematycznym opisującym dane zjawisko, oraz tam, gdzie odtworzenie tegoż modelu staje się z jakichś względów niemożliwe. W rozumieniu logiki klasycznej przynależność elementu do zbioru należy zapisać następująco [4, 7]: 1, jeżeli x A µ ( A) = (1) 0, jeżeli x O/ Dla zapisu w rozumieniu logiki rozmytej każdy element może należeć do zbioru w stopniu innym niż 1 i 0. µ(a) = 1, jeżeli spełnione jest kryterium przynależności n (0,1), gdzie n jest określane na podstawie przynależności (2) 0, jeżeli nie jest spełnione kryterium przynależności Fuzzy Logic Toolbox jest biblioteką pakietu MATLAB-Simulink i zawiera zestaw funkcji oraz interfejsy, które ułatwiają projektowanie regulatorów rozmytych. Biblioteka ta posiada bloki Simulinka, których można użyć jako modelu zaprojektowanego regulatora rozmytego. Biblioteka zawiera kompletne
56 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 środowisko do tworzenia modeli systemów dynamicznych z wykorzystaniem zbiorów rozmytych i rozmytych reguł wnioskowania. Posiada również narzędzia do projektowania inteligentnych systemów sterowania, których działania opiera się na elementach logiki rozmytej. Umożliwia pracę nad logiką rozmytą za pomocą edytora graficznego lub poleceń tekstowych [3]. Środowisko Simulink pozwala w łatwy i zrozumiały sposób stworzyć cyfrowy model projektowanego regulatora. Dzięki bibliotece Fuzzy Toolbox możliwe jest też obliczeniowe sprawdzenie modelu oraz ewentualna korekta początkowych założeń. 2. TEORETYCZNE ZAŁOŻENIA MODELU STEROWNIKA ROZMYTEGO Działanie sterownika rozmytego opiera się na zasadzie aproksymacji funkcji realizującej rzeczywisty proces. Sterownik rozmyty otrzymuje wartości na temat stanu rzeczywistego i przetwarza te informacje na ostrą wartość sterującą częstością transmisji danych. W opisywanym przypadku wartościami stanu rzeczywistego będą CPA i TCPA, a ostra wartość sterująca będzie decydowała o częstości transmisji danych między dwoma obiektami. Autor zakłada, że im dwa obiekty są bardziej dla siebie niebezpieczne, tym częściej powinny wymieniać między sobą informacje odnośnie do parametrów ruchu własnych jednostek. Rys. 1. Wymiana danych między statkami z wykorzystaniem sterownika rozmytego
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 57 2.1. Funkcje przynależności CPA i TCPA Funkcja przynależności jest to uogólniona postać funkcji charakterystycznej zbioru, określona na zbiorach rozmytych. W zbiorach klasycznych przyjmuje wartość 1, gdy element w pełni należy do zbioru, albo 0, gdy nie należy wcale. W teorii zbiorów rozmytych element może należeć do zbioru w pewnym stopniu, więc funkcja przynależności może przyjmować wartości z całego przedziału jednostkowego [0, 1]. Funkcja przynależności musi być tak dobrana, aby dać odpowiedź na pytanie, w jakim stopniu dany element należy do pewnego zbioru rozmytego. W zastosowaniach nawigacyjnych funkcje przynależności powinny spełniać następujące postulaty [8, 9, 10]: 1. Na granicach obszarów, wyznaczonych przez kolejne funkcje poziom przynależności do każdej z nich powinien wynosić 0,5. 2. Funkcje przynależności powinny spełniać warunek podziału jedności. Punkt położony w strefie przejściowej należący w stopniu p do jednego obszaru, do sąsiedniego będzie należał w stopniu 1 p. 3. Przedział narastania (opadania) funkcji przynależności powinien być determinowany zakresem związanym z błędem szacowania wartości wejściowych [ σ CPA, +σ CPA ] lub [ σ TCPA, +σ TCPA ]. 4. Funkcja przynależności powinna asymptotycznie zmierzać do 1 w obrębie jądra (rdzenia) i zbliżać się do 0 poza bazą. Dodatkowo intuicyjne oczekiwania w stosunku do kształtu funkcji przynależności wyrażają tak zwane aksjomaty Schwaba [8, 9, 10]: funkcje przynależności µ(x) powinny być ciągłe w całym zakresie rozważań X; pierwsza pochodna funkcji przynależności dµ(x)/dx powinna być ciągła w całej przestrzeni rozważań X; druga pochodna funkcji przynależności d 2 µ(x)/dx 2 powinna być ciągła w całej przestrzeni rozważań X. Biorąc pod uwagę powyższe postulaty, jako funkcje przynależności CPA zastosowano funkcje sigmoidalne. Prawdą jest, że funkcja gęstości prawdopodobieństwa rozkładu pozycji zmierzonych wokół pozycji rzeczywistej jest funkcją gęstości prawdopodobieństwa Gaussa i najlepiej byłoby użyć funkcji przynależności o kształcie dzwonowym. Okazuje się jednak, że w opisywanym przykładzie stromość funkcji jest różna dla lewej i prawej części funkcji wewnętrznych. Mogą pojawić się też obszary, w których CPA należałoby do trzech zbiorów jednocześnie i przyjmowało trzy wartości lingwistyczne. Jest to sprzeczne z opisanymi założeniami. Użyto funkcji sigmoidalnych, które kształtem przypominają rozkład Gaussa, ale są zaokrąglone w okolicach wierzchołków, oraz których stromość jest łatwiejsza do wymodelowania [2]. Na rysunku 2 pokazano komplet czterech sigmoidalnych funkcji przynależności, w kolejności od lewej strony reprezentujących następujące wartości lingwistyczne: blisko, blisko, daleko i daleko. Przedstawione zew-
58 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 nętrzne funkcje przynależności to pojedyncze funkcje sigmoidalne, wewnętrzne zaś składają się z dwóch takich funkcji. Poszerzaniu stref przejściowych między poszczególnymi zbiorami towarzyszy zmiana nachylenia części opadającej i rosnącej funkcji. Dzieje się tak, gdyż stromość jest uzależniona od błędu σ CPA, który jest tym większy, im większa jest wartość CPA. Rys. 2. Wszystkie funkcje przynależności CPA Biorąc pod uwagę przedstawione wyżej postulaty oraz fakt, że przybliżenie liniowe błędu TCPA jest wystarczające do celów prezentowanej metody, jako funkcje przynależności TCPA zastosowano funkcje trapezowe. Strefy przejściowe pomiędzy kolejnymi funkcjami przynależności będą wyznaczone przez błędy wyznaczania TCPA. Wartości błędu, chociaż mają różne sygnatury, pozostają takie same. Wartość błędu zależy od kilku parametrów, ale nie od samego TCPA, więc teoretycznie wzrost samego TCPA nie ma wpływu na wartość błędu. Założono, że statki poruszające się ze stałymi prędkościami zbliżą się do siebie szybciej, jeśli będą bliżej w chwili początkowej. Błąd będzie proporcjonalny do odległości między statkami, a dokładniej do odległości CPA. Na rysunku 3 pokazano komplet czterech wielokątnych i trapezowych funkcji przynależności. W kolejności od lewej strony reprezentują one następujące zbiory rozmyte: szybko, szybko, wolno i wolno. Nie przedstawiono poszerzania stref przejściowych między poszczególnymi zbiorami oraz zmian nachylenia części opadającej i rosnącej funkcji. Dzieje się, tak gdyż stromość jest uzależniona od błędu σ TCPA, którego wartość nie musi zmieniać się wraz ze wzrostem TCPA.
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 59 Rys. 3. Wszystkie funkcje przynależności TCPA 2.2. Reguły wnioskowania Niech wartościami wejściowymi będą obliczone ówcześnie CPA i TCPA, a ostrą wartością wyjściową y k, która w kolejnym kroku posłuży do obliczenia współczynnika ψ, bezpośrednio z kolei wpływającego na częstość transmisji w prezentowanej metodzie. Sterowniki rozmyte starają się naśladować ludzkie rozumowanie. Jako regułę wnioskowania dla sterowników rozmytych stosuje się rozmytą regułę modus ponens, która wygląda następująco [1, 5, 11]: Przesłanka: x jest A Implikacja: IF x jest A THEN y jest B Wniosek: y jest B TCPA szybko szybko Baza reguł wnioskowania dla opracowanej metody blisko często często CPA blisko często daleko często Tabela 1 daleko normalnie często normalnie rzadko wolno często normalnie rzadko wolno normalnie rzadko rzadko rzadko rzadko
60 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 Reguła pozwala na wywnioskowanie o prawdziwości następnika na podstawie poprzednika, przy czym implikacja traktowana jest jako pewna relacja rozmyta. W sterowniku rozmytym tworzy się bazę reguł, których liczba i treść różnią się w zależności od modelowanego zjawiska. Baza reguł stanowi reprezentację wiedzy eksperta o możliwych wartościach zmiennych lingwistycznych, procesach zachodzących podczas manewrowania statkiem, przepisów COLREG itp. W bloku wnioskowania ma miejsce uruchomienie każdej z reguł, której przesłanki są spełnione. Ogólnie rzecz biorąc, opierając się na przesłankach, należy znaleźć odpowiedni zbiór rozmyty będący wnioskiem z przyjętych reguł rozmytych. Od trafnego wyboru zmiennych stanu i zmiennych sterujących częstością transmisji zależy właściwe funkcjonowanie sterownika. W tabeli 1 przedstawiono zbiór reguł wnioskowania, które zostały zaprogramowane w opisywanym sterowniku. Jako działanie między zbiorami rozmytymi wszędzie występuje iloczyn (AND) obliczany z wykorzystaniem operatora t-normy MIN [5, 12, 13]. 2.3. Wyjściowa funkcja przynależności i agregacja reguł W wyniku interferencji czy też wnioskowania uzyskano wyjściową funkcję przynależności µ(y) przedstawioną na rysunku 4. Posłuży ona defuzyfikacji (wyostrzaniu) wartości rozmytych do wartości ostrych. Rys. 4. Wyjściowa funkcja przynależności wartości rozmytych Do sterowania częstością transmisji danych potrzebna jest konkretna, ostra wielkość współczynnika ψ. Dane wyjściowe bloku wnioskowania należy połączyć i odwzorować w jedną wielkość y k, która będzie wyjściowym sygnałem sterowania. W opisywanej metodzie posłuży ona do obliczenia współczynnika ψ, który z kolei po podstawieniu do wzoru pozwoli obliczyć czas pomiędzy dwoma kolejnymi transmisjami. Łączenie, czyli agregację zbiorów rozmytych powstałych wskutek interferencji, można realizować na wiele sposobów. Istnieje kilka metod agregacji w teorii zbiorów rozmytych, które ogólnie dzieli się na metody środka powierzchni
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 61 (COA Center of Area) oraz metody średniej z największych (MOM Medium of Maximum). Przykładem pierwszego sposobu jest metoda środka ciężkości zbioru rozmytego, zaś drugiego metoda pierwszego maksimum [6, 14]. W metodzie pierwszego maksimum za ostrego reprezentanta y k rozmytego zbioru konkluzji wynikowej przyjmuje się najmniejszą wartość y odpowiadającą maksymalnemu stopniowi przynależności funkcji µ(y). Jak pokazuje rysunek 5, wraz ze wzrostem stopnia aktywizacji zbioru prawego, który jest najbardziej zaktywizowany, jego reprezentant y k = y, będzie przesuwać się w stronę maksimum tego zbioru. Wraz ze spadkiem stopnia aktywizacji tegoż zbioru reprezentant przesunie się w kierunku lewego minimum zbioru, ale tylko do momentu, gdy stopień aktywizacji zbioru prawego będzie większy od zbioru lewego. Zwracaną wartością tej metody jest y k takie, że: ( µ ( y) ) µ ( y) ( y ) µ ( y k ) = max oraz < µ k (3) y Y y V0 < y Rys. 5. Metoda pierwszego maksimum [15] Rys. 6. Metoda środka ciężkości
62 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 Wartość współrzędnej y k środka ciężkości można obliczyć jako iloraz momentu powierzchni pod krzywą µ(y) względem osi pionowej µ(y) oraz pola tej powierzchni. Po zastosowaniu tych wytycznych otrzymano następujący wzór: yµ ( y) dx y k = µ ( y) dx Opisany powyżej sposób wyznaczania wartości ostrej y k narzuca stosunkowo dużą złożoność obliczeniową. Bardzo często można spotkać w literaturze metodę uproszczoną. Przewagą tego sposobu obliczeń jest zwiększenie wydajności poprzez uproszczenie obliczeń przy jednoczesnym zachowaniu zalet metody środka ciężkości. Uproszczenie polega na zastosowaniu do obliczenia momentu i pola powierzchni pod krzywą µ(k) metody trapezów, a dokładniej metody wielokątów. Zsumowano pola powierzchni poszczególnych figur, wykorzystując punkty charakterystyczne, w których krzywa µ(k) się załamuje. Wartość wynikową y k za pomocą metody uproszczonej można wyliczyć z następującej zależności: (4) y k n i= 1 = n i= 1 y µ ( y ) i i i µ ( y ) (5) 3. TWORZENIE MODELU STEROWNIKA ROZMYTEGO W ŚRODOWISKU FUZZY TOOLBOX MATLAB Poniżej przedstawiono krok po kroku proces tworzenia modelu sterownika rozmytego w środowisku Fuzzy Toolbox Matlab. Na początku zostają zaprogramowane określone wcześniej funkcje przynależności. Następnie tworzy się bazę reguł wnioskowania zgodnie z założeniami przedstawionymi w poprzednim punkcie artykułu. Autor dokonuje też wyboru metody agregacji reguł. Ostatecznie autor analizuje wykresy, symulując różne sytuacje. Stara się tak dobierać dane wejściowe CPA i TCPA, aby sprawdzić poprawność działania sterownika dla wartości zarówno krańcowych, jak i pochodzących ze środka zbiorów rozmytych. Ocenie podlega również poprawność zastosowanych funkcji przynależności, reguł wnioskowania oraz metody agregacji reguł. 3.1. Edytor rozmytego systemu wnioskującego (FIS Fuzzy Inference System Editor) Edytor ten służy do zadawania podstawowych parametrów projektowanego sterownika, takich jak liczba zmiennych wejściowych oraz wyjściowych, wybór operatorów realizujących poszczególne funkcje itp. Użytkownik ma możliwość wyboru jednego z dwóch modeli: Mamdani i Takagi-Sugeno.
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 63 Reguły wnioskowania zastosowane w opisanej metodzie mają postać: IF (CPA =...) AND (TCPA =...) THEN (T =...). Naturalnym następstwem jest zastosowanie modelu Mamdami, który różni się od modelu Takagi-Sugeno następnikami funkcji. W opracowanym modelu zadano dwie wartości wejściowe CPA i TCPA. Wynikiem rozmytego systemu wnioskującego jest y k, która to wartość służy do obliczenia współczynnika ψ. Rys. 7. Okno edytora rozmytego systemu wnioskującego 3.2. Edytor funkcji przynależności (Membership Function Editor) Edytor ten służy do przedstawienia graficznej reprezentacji poszczególnych zmiennych wejściowych oraz wyjściowych w postaci rozmytej. Umożliwia ustawianie liczby, wartości oraz nazw i etykiet dla każdego z parametrów. W prezentowanym przykładzie określono cztery funkcje przynależności dla zmiennej CPA oraz cztery funkcje dla zmiennej TCPA (rys. 8). 3.3. Baza reguł modelu (Rule Editor i Rule Viewer) Rule Editor służy do tworzenia reguł wnioskowania. Użytkownik wybiera zbiór, z jakiego wartość przyjmie zmienna wyjściowa, w zależności od tego, jakie wartości przyjmą zmienne wejściowe. Użytkownik ma możliwość wybrania jednego z dwóch operatorów: AND i OR w zależności od działania, jakie ma realizować programowana reguła. W niniejszym przykładzie stworzono szesnaście reguł zgodnie z tabelą 1. W każdej z reguł jako operator posłużył iloczyn (AND) (rys. 9).
64 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 Rys. 8. Edytor funkcji przynależności Rys. 9. Widok okna edycji bazy reguł
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 65 Rule Viewer służy do podglądu realizacji poszczególnych reguł w procesie wnioskowania w zależności od danych wejściowych. Realizacje pojedynczych reguł kumulowane są w jeden zbiór rozmyty, który poddany operacji wyostrzania zostaje przekształcony w określoną wartość liczbową, będącą wartością wyjściową rozmytego systemu wnioskowania. Rys. 10. Realizacja reguł wnioskowania dla CPA = 3 i TCPA = 12 3.4. Powierzchnia odwzorowania (Surface Viewer) Służy do wizualizacji zależności wybranego parametru wyjściowego od wybranych dwóch parametrów wejściowych. Na rysunku 11 przedstawiono powierzchnię odwzorowania dla omawianego sterownika rozmytego. Widać, że pojawiają się na niej załamania (lokalne minima). Świadczy to o tym, że dla wartości CPA i TCPA z krańców zbiorów sterownik zwraca mniejszą wartość niż teoretycznie powinien. W niniejszym przykładzie wystarczyło zmienić metodę agregacji reguł, aby pozbyć się tej nieścisłości. Rys. 11. Wynikowa powierzchnia sterowania opracowanej metody
66 PRACE WYDZIAŁU NAWIGACYJNEGO AKADEMII MORSKIEJ W GDYNI, nr 29, 2014 WNIOSKI Fuzzy Toolbox Matlab okazuje się być świetnym narzędziem służącym do projektowania i testowania sterowników opartych na logice rozmytej. Użytkownik w łatwy i szybki sposób może stworzyć regulator i przetestować go obliczeniowo. Szereg wykresów, które można wygenerować, pozwala w łatwy sposób zweryfikować poprawność obliczeń oraz zgodność z założeniami początkowymi. Dzięki innym komponentom można na bieżąco śledzić realizację poszczególnych reguł oraz w dowolny sposób dopasowywać metody agregacji w poszukiwaniu tej właściwej. Zaprojektowany regulator można następnie zapisać i używać go w innych schematach Simulinka oraz testować sterowniki w całych układach. W opisywanym przykładzie dzięki oprogramowaniu Fuzzy Toolbox w łatwy sposób znaleziono lokalne minima, które okazały się niezgodne z początkowymi założeniami. W równie prosty sposób pozbyto się ich. Bez tego oprogramowania nastręczałoby to wielu żmudnych godzin obliczeniowej weryfikacji. LITERATURA 1. Badurek J., Logika rozmyta w bazach danych, Informatyka, 1999, nr 1, s. 14 17. 2. Biacino L., Gerla G., Fuzzy logic, continuity and effectiveness, Archive for Mathematical Logic, 2002, no. 41(7), p. 643 647. 3. Bodnar A., Honczarenko J., Jardzioch A., Pawlukowicz P., Application of fuzzy logic for controlling robotized machining systems, Prace Naukowe Instytutu Technologii Maszyn i Automatyzacji Politechniki Wrocławskiej. Konferencje, 1998, t. 69, nr 31, s. 114 120. 4. Brown M., An Introduction to Fuzzy and Neurofuzzy Systems, Prentice Hall International, New Jersey 1996. 5. Czyszpak T., Analiza wybranych metod generowania bazy reguł systemów logiki rozmytej, Prace Naukowe Katedry Budowy Maszyn / Politechnika Śląska, 2005, nr 4, s. 117 126. 6. Czyszpak T., Chowaniec K., Urbańczyk T., Sokołowski A., System wnioskowania rozmytego o strukturze Mamdani analiza metod wyostrzania, Prace Naukowe Katedry Budowy Maszyn / Politechnika Śląska, 2005, nr 4, s. 127 138. 7. Dybiec E., Tran C., Logika rozmyta: początek, rozwój i możliwości zastosowania, Inżynieria Morska i Geotechnika, 2001, nr 5, s. 418 422. 8. Filipowicz W., Fuzzy evidence reasoning and position fixing, [in:] Frontiers in Artificial Intelligence and Applications Knowledge-Based Intelligent Engineering Systems, M. Virvou, S. Matsuura (eds.), vol. 240, 2012, p. 1181 1190. 9. Filipowicz W., Fuzzy reasoning algorithms for position fixing, Pomiary. Automatyka. Kontrola, 2010, R. 56, nr 12, s. 1491 1495. 10. Filipowicz W., New approach towards position fixing, Annual of Navigation, 2010, no. 10, p. 41 54.
D. Filipkowski, Modelowanie częstości transmisji danych z wykorzystaniem Fuzzy Toolbox MATLAB 67 11. Fulmański P., Grzanek M., Logika rozmyta i SQL, Zeszyty Naukowe Wydziału ETI Politechniki Gdańskiej. Technologie Informacyjne, 2006, nr 11, s. 857 864. 12. Kowalczyk-Niewiadomy A., Pelikant A., Przetwarzanie zapytań w metajęzyku naturalnym za pomocą algorytmów rozmytych, Studia Informatica, 2012, t. 31, nr 2A, s. 479 488. 13. Kuchta M., Optymalizacja bazy reguł systemu logiki rozmytej z zastosowaniem sztucznych systemów immunologicznych, Prace Naukowe Katedry Budowy Maszyn / Politechnika Śląska, 2009, nr 1, s. 189 198. 14. Novák V., On fuzzy type theory, Fuzzy Sets and Systems, 2005, no. 149(2), p. 235 273. 15. Ross T.J., Fuzzy Logic with Engineering Applications, John Wiley&Sons, 2004. MODELING OF DATA TRANSMISSION RATE USING FUZZY MATLAB TOOLBOX Summary This article is a result of works on modeling data transmission rate in sea transportation. While working on this project fuzzy logic controller was developed. On the very begining several membership functions and rules of inference were created on the basis of theoretical assumptions. After that the most appropriate method of aggregation was chosen. However during the research rised a need to review this assumptions and verify correct operation of mentioned controller. Fuzzy Toolbox software was used for this purpose. It is a library of MATLAB Simulink created especially to design fuzzy controllers and drivers. The process of developing fuzzy logic controller is presented in this paper together with the conclusions and verification of initial assumptions. Keywords: data transfer, e-navigation, fuzzy logic.