Pobierz prezentacje

Transkrypt

Pobierz prezentacje
WOJSKOWA AKADEMIA TECHNICZNA
WYDZIAŁ CYBERNETYKI
Projekt oprogramowania ewolucyjnego
sterownika mobilnego robota kołowego
Autor: Grzegorz Kroczek
Promotor: mjr dr inż. Krzysztof Murawski
Treść zadań
1. Przegląd literatury dotyczący obliczeń ewolucyjnych
2. Implementacja algorytmu obliczeń ewolucyjnych
3. Weryfikacja algorytmu w zadaniu wyznaczania trasy robota
mobilnego
Implementacja alg. obliczeń ewolucyjnych
Stworzenie sterownika dla robota bazującego na algorytmach
ewolucyjnych dla różnych modeli i o różnych kształtach robotów.
Główne zadanie sterownika: wyznaczanie ścieżki z punktu
startowego do docelowego bez kolizji z obiektami na jakie może
natrafić robot.
Sterownik ewolucyjny testowany na symulatorze 2D oraz
środowisku Webots.
Symulator 2D
Symulator i środowisko Webots
Główny moduł sterownika ewolucyjnego
function sterownik_ewolucyjny
begin
begin
wczytaj mapę
wczytaj współrzędne punktów początkowego
i docelowego
wyznacz trajektorię = EA(punkt początkowy, punkt docelowy)
end
if bieżąca droga jest dopuszczalna then
begin
odwzoruj wirtualne dane trajektorii na dane rzeczywiste:
wyznacz współrzędne rzeczywiste
oblicz kąty obrotów w zadanym wierzchołku
sterowanie robotem
end
end
Moduł obliczeń ewolucyjnych
function EA(punkt początkowy, punkt docelowy)
begin
ustaw ziarna generatorów pseudolosowych
generuj losową populacje osobników
oceń populację
repeat
begin
selekcja
krzyżowanie
mutacja
dodaj gen
usuń gen
oceń populację
end
until (wyznaczono najlepszą trajektorię) or (liczba iteracji została osiągnięta)
end
Struktura chromosomu
Populacja z chromosomami o zmiennej długości osobników.
Struktura chromosomu:
x1
y1
b1
xn
(x1,y1)
yn
bn
(x3,y3)
(x4,y4)
(x2,y2)
x1
y1
1
x2
y2
0
x3
y3
1
x4
y4
1
Krzyżowanie proste
(22,33)
(100,40)
(290,80)
(200,130)
(110,170)
(300,200)
22
33
1
100
40
1
290
80
0
300
200
1
22
33
1
110
170
1
200
130
1
300
200
1
22
33
1
100
40
1
200
130
1
300
200
1
22
33
1
110
170
1
290
80
1
300
200
1
Mutacja równomierna i nierównomierna
(22,33)
(100,40)
(290,80)
(240,130)
(300,200)
22
33
1
100
40
1
290
80
0
300
200
1
22
33
1
100
40
1
240
130
1
300
200
1
Dodanie genu
(22,33)
(100,40)
(290,80)
(240,130)
(300,200)
22
33
1
100
40
1
290
80
0
300
200
22
33
1
100
40
1
240
130
1
290
80
1
1
300
200
1
Usuwanie genu
(22,33)
(100,40)
(290,80)
(300,200)
22
22
33
33
1
1
100
100
40
40
1
1
290
300
80
200
0
300
1
200
1
Funkcja oceniająca
Pozycja
w rankingu
Kryterium 1
Liczba kolizji
Kryterium 2
Długość ścieżki
1
0
100
2
0
122
3
123
220
4
123
310
5
544
600
6
1022
600
...
..
..
Implementacja alg. obliczeń ewolucyjnych
Innowacyjne rozwiązania:
1. Zmienna długość chromosomów w pokoleniu
2. Uwzględnianie kształtu robota w planowaniu ścieżki
3. Nowy algorytm detekcji z wykorzystaniem alg. Bresenhama
I Faza weryfikacji
pod kątem wpływu parametrów
II Faza weryfikacji
dla różnych labiryntów
III Faza weryfikacji
dla środowiska 3D Webots
Dziękuję za uwagę

Podobne dokumenty