Kas yra judėjimo planavimas?

Judesio planavimas reiškia, kaip robotuose galima planuoti judesius, paprastai tam, kad pasiektų tam tikrą tarpinį tašką arba pasiektų kelias paskirties vietas iš eilės. Tai galima padaryti suteikiant robotui kompiuterinę viziją arba užprogramuojant judėjimo planavimą su visomis tam tikroje erdvėje esančiomis kliūtimis, kad robotas iš karto žinotų erdvės geometriją. Kartu su paprastais judesiais, tokiais kaip judėjimas į priekį, robotas taip pat gali būti sukurtas sudėtingiems judesiams, pavyzdžiui, nusileidimui laiptais. Nors tai dažniausiai naudojama robotikoje, ji taip pat turi vietą vaizdo žaidimų programavime, kur ji neleidžia veikėjams pereiti per sienas ir programuoja nežaidžiamus personažus (NPC).

Pagrindinė judesių planavimo užduotis yra nurodyti robotui, kaip judėti. Valdymas paprastai yra subtilus, o apibrėžtas kelias robotui nepriskiriamas, tačiau robotui paprastai nurodoma galinio taško vieta. Subtilus programavimas reiškia, kad robotas žinos, kaip judėti, bet jam nebus griežtai liepta eiti į priekį tam tikrą atstumą, kad pasiektų tikslą. Tai gali būti naudojama tam, kad robotas būtų pasiekiamas vienoje vietoje, arba robotas gali būti užprogramuotas kelioms kelionėms tikslams eilės tvarka. Kai valdymas paprastai yra subtilus, robotas naudos visą žinomą informaciją, kad išsiaiškintų savo kelią į tikslą.

Paprastai yra dvi skirtingos technologijos, kurios gali būti naudojamos planuojant judesius. Kompiuterinis matymas arba įgalinimas robotams pamatyti ir atpažinti kliūtis gali būti naudojamas, kad robotas žinotų, ką gali ir ko negali pereiti bandydamas pasiekti tikslą. Visų žinomų erdvės kliūčių ir geometrijos, pavyzdžiui, dydžio ir formos, programavimas gali būti toks pat naudingas kaip ir kompiuterinis matymas, tačiau jam trūksta universalumo.

Norint planuoti pagrindinį judesį, robotas turi atlikti tik paprastus judesius, susijusius su judėjimu pirmyn ir atgal. Pažangesnės judesio planavimo versijos apima sudėtingus judesius, pvz., leidimąsi laiptais ar rampomis. Kad tai būtų įmanoma, robotas turi turėti kūną, galintį atlikti šiuos judesius.

Judėjimo planavimas paprastai naudojamas kalbant apie robotiką, tačiau jis taip pat gali būti naudojamas vaizdo žaidimų programavimui. Kalbant apie žaidėjo charakterį, tai padeda užtikrinti, kad veikėjas negalėtų pereiti kietų žaidimo objektų, tokių kaip sienos ir įvairūs daiktai. NPC keliams, ypač tiems, kurie nėra griežtai užprogramuoti, tai gali užtikrinti, kad NPC tinkamai praeis per žaidimo erdvę.