Wat is motion planning?
Bewegingsplanning verwijst naar hoe bewegingen kunnen worden gepland in robots, meestal om een bepaald waypoint te bereiken of om verschillende bestemmingen in een opeenvolgende volgorde te raken. Dit kan worden gedaan door de robotcomputer een beeld te geven of door de bewegingsplanning te programmeren met alle obstakels in de gegeven ruimte, zodat de robot onmiddellijk de geometrie van de ruimte kent. Naast eenvoudige bewegingen zoals vooruit rijden, moet de robot mogelijk ook worden gebouwd voor complexe bewegingen zoals trappen aflopen. Hoewel dit meestal wordt gebruikt voor robotica, heeft het ook een plek in de programmering van videogames, waar het voorkomt dat personages door muren gaan en niet-speelbare personages (NPC's) programmeert.
De belangrijkste taak van motion planning is om een robot te vertellen hoe hij moet bewegen. De besturing is normaal gesproken subtiel en er wordt geen gedefinieerd pad toegewezen aan de robot, maar de robot krijgt meestal de locatie van het eindpunt te horen. Subtiele programmering betekent dat de robot weet hoe te bewegen, maar er zal niet strikt worden gezegd om een bepaalde afstand te gaan om het doel te bereiken. Dit kan worden gebruikt om de robot één plaats te geven om te bereiken, of de robot kan worden geprogrammeerd met verschillende bestemmingen om in een opeenvolgende volgorde te bereiken. Omdat de besturing normaal gesproken subtiel is, gebruikt de robot alle bekende informatie om zijn eigen weg naar de bestemming te vinden.
Er zijn normaal twee verschillende technologieën die kunnen worden gebruikt om te helpen bij het plannen van bewegingen. Computer vision, of het mogelijk maken van robots om obstakels te zien en te herkennen, kan worden gebruikt zodat de robot weet wat hij wel en niet kan doorlopen wanneer hij de bestemming probeert te bereiken. Programmeren in alle bekende obstakels en geometrie van de ruimte - zoals de grootte en vorm - kan net zo nuttig zijn als computer vision, maar heeft vaak een gebrek aan veelzijdigheid.
Voor elementaire bewegingsplanning hoeft de robot alleen te worden gemaakt voor eenvoudige bewegingen waarbij vooruit en achteruit wordt gereden. Meer geavanceerde versies van bewegingsplanning omvatten complexe bewegingen, zoals trappen of hellingen aflopen. Om dit mogelijk te maken, moet de robot een lichaam hebben dat deze bewegingen kan uitvoeren.
Bewegingsplanning wordt meestal gebruikt in verband met robotica, maar het kan ook worden gebruikt voor het programmeren van videogames. Als het gaat om het personage van de speler, helpt dit ervoor te zorgen dat het personage niet door de solide objecten van het spel kan gaan, zoals muren en diverse items. Voor NPC-paden, met name die niet strikt zijn geprogrammeerd, kan dit ervoor zorgen dat de NPC goed door de ruimte van het spel gaat.