DStarLite
D* Lite implementation in C#
Install / Use
/learn @Bastiantheone/DStarLiteREADME
DStarLite
D* Lite implementation in C#
What is D* Lite
D* Lite is a dynamic version of A*. It dynamically finds the shortest path to the goal.
Uses of This Implementation
To navigate a robot to some goal coordinates, when the map gets explored as the robot moves. The map needs to be able to be represented as a grid with navigable and unnavigable terrain. The robot is able to move forwards, backwards and to the sides. It is not able to move diagonal. To allow diagonal movements or to add different cost to different movements some simple changes to the code need to be made. This implementation is made for a 100x100 plane. To change the size simply change the size of the State array in <a href="https://github.com/Bastiantheone/DStarLite/blob/master/DStarLite.cs#L80">Initialize</a>.
How to Use it
Create a class that inherits the DStarLiteEnvironment interface. This class is responsible for the interaction between the environment and the algorithm. It has two methods MoveTo and GetObjectsInVision which are pretty self-explanatory. Then call RunDStarLite(StartX, StartY, GoalX, GoalY, EnvironmentClass). See <a href="https://github.com/Bastiantheone/DStarLite/blob/master/TestProgram.cs">TestProgram.cs</a> for an example.
Related Skills
node-connect
341.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.6kCommit, push, and open a PR
