Prírodou inšpirované algoritmy
študijné materiály pre projekt mobilnej triedy umelej inteligencie
|
|
Agresívne vozidlo
Schématické zobrazenie
Agresívne vozidlo
Pseudo kód
boolean StepRobot(struct Robot *robot)
{
...
/*Normovanie+Sumácia dát zo senzora*/
/*re,li v rozsahu [0,3] */
for(i=0;i<3;i++)
li=li+(robot->IRSensor[i].DistanceValue)/1023;
for(i=3;i<6;i++)
re=re+(robot->IRSensor[i].DistanceValue)/1023;
robot->Motor[RIGHT].Value=(2+3*li);
robot->Motor[LEFT].Value=(2+3*re);
/* V prípade že (Hodnota >= 10 ) => max. rýchlosť */
...
}
Správanie robota
Robot sa pohybuje priamočiaro, pokiaľ nie je pred ním žiaden objekt (Rýchlosť=2 ). Ak sa nachádza na pravej strane objekt, tak bude ľavé koleso v dôsledku zvýšených dát zo senzora viac zrýchlené ako pravé koleso. To má za následok, že sa robot pohybuje stále rýchlejšie k objektu a koliduje s objektom (ničiteľské správanie).
|
|
Kontakt: Marek Bundzel |