Vad är rörelseplanering?
Rörelseplanering avser hur rörelser kan planeras i robotar, i allmänhet antingen för att nå en viss vägpunkt eller träffa flera destinationer i en sekvensiell ordning. Detta kan göras genom att ge robotdatorvisionen eller genom att programmera rörelseplaneringen med alla hinder i det givna utrymmet så att roboten omedelbart känner till rymdets geometri. Tillsammans med enkla rörelser som att gå framåt kan roboten också behöva byggas för komplexa rörelser som att gå nerför trappan. Även om detta oftast används för robotik, har det också en plats i programmering av videospel, där det hindrar karaktärer från att gå igenom väggar och programmera icke-spelbara karaktärer (NPC).
Rörelseplaneringens främsta uppgift är att berätta för en robot hur man rör sig. Styrningen är normalt subtil och en definierad sökväg tilldelas inte roboten, men roboten berättas vanligtvis om slutpunktens placering. Subtil programmering innebär att roboten kommer att veta hur man ska röra sig, men det kommer inte att sägas strikt att gå framåt ett visst avstånd för att nå målet. Detta kan användas för att ge roboten ett ställe att nå, eller roboten kan programmeras med flera destinationer för att nå i en sekvensiell ordning. Eftersom kontrollen normalt är subtil, kommer roboten att använda all känd information för att räkna ut sitt eget sätt till destinationen.
Det finns normalt två olika tekniker som kan användas för att hjälpa till med rörelseplanering. Datorsyn, eller möjliggöra för robotar att se och känna igen hinder, kan användas så att roboten vet vad den kan och inte kan gå igenom när man försöker nå målet. Programmering i alla rymdets kända hinder och geometri - som dess storlek och form - kan vara lika användbart som datorsyn men tenderar att sakna mångsidighet.
För grundläggande rörelseplanering måste roboten bara göras för enkla rörelser som involverar att gå framåt och bakåt. Mer avancerade versioner av rörelseplanering innebär komplexa rörelser, som att gå nerför trappor eller ramper. För att rymma detta bör roboten ha en kropp som kan utföra dessa rörelser.
Rörelseplanering används vanligtvis med hänvisning till robotik, men den kan också användas för programmering av videospel. När det gäller spelarens karaktär, hjälper detta till att säkerställa att karaktären inte kan gå igenom spelets fasta föremål, såsom väggar och diverse föremål. För NPC-vägar, särskilt de som inte är strikt programmerade, kan detta säkerställa att NPC går korrekt genom spelets utrymme.