Table of Contents
Modele regułowe
1. CodinGame: Mars Lander
2. System regułowy dla lądownika
3. Zadania do realizacji
Modele regułowe
1. CodinGame: Mars Lander
Problem
na dzisiaj:
Mars Lander
Cel: lądowanie na Marsie
Nierówna powierzchnia Marsa. Lądujemy na płaskim fragmencie
Sterujemy kątem nachylenia [-90; 90] i mocą silnika [0; 4]
Ograniczone możliwości zmiany z ruchu na ruch (kąt +/- 15, moc +/- 1)
Ograniczone paliwo, działa grawitacja
2. System regułowy dla lądownika
Przykładowy zbiór reguł analizujących aktualną prędkość poziomą i wprowadzający odpowiednie poprawki:
Część warunkowa i decyzyjna - czy widzimy różnice?
Można wybrać Hit Policy. Jakie znamy z wykładu? (
szczegółowa dokumentacja
)
Można używać bardziej skomplikowanych warunków (
język FEEL 1.11
)
Możemy połączyć więcej tabel decyzyjnych ze sobą w jeden model, np. druga tabela analizująca paliwo i wprowadzająca poprawki do mocy silnika
Narzędzie:
https://consulting.camunda.com/dmn-simulator/
Prosty model z kilkoma regułami:
simple-mars-lander.dmn
Możliwość testowania jednej / wszystkich tabel (formularz nad modelem)
Znany bug: czasami model nie przeładowuje się poprawnie po zmianach; wtedy najlepiej pobrać plik i załadować go ponownie
3. Zadania do realizacji
[3 EXP]
Model regułowy
dla lądownika w
https://consulting.camunda.com/dmn-simulator/
[3 EXP]
Wylądować
w
łatwej
wersji (lądownik znajduje się bezpośrednio nad miejscem lądowania):
Mars Lander - Episode 1
[3 EXP]
Wylądować
w
średniej
wersji (trzeba sterować również kątem nachylenia; min. 4 test cases z pięciu):
Mars Lander - Episode 2
Jest też wersja bardzo trudna (niepunktowana na naszych zajęciach):
Mars Lander - Episode 3