https://github.com/systemslibrarian/ai-decision-lab
Interactive visualization of search, optimization, and robot motion planning using DFS, BFS, weighted A*, path smoothing, and gradient-style descent.
https://github.com/systemslibrarian/ai-decision-lab
Last synced: 2 days ago
JSON representation
Interactive visualization of search, optimization, and robot motion planning using DFS, BFS, weighted A*, path smoothing, and gradient-style descent.
- Host: GitHub
- URL: https://github.com/systemslibrarian/ai-decision-lab
- Owner: systemslibrarian
- License: mit
- Created: 2026-03-22T13:23:15.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-03-22T17:13:21.000Z (2 months ago)
- Last Synced: 2026-03-23T04:58:08.808Z (2 months ago)
- Language: JavaScript
- Size: 174 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AI Decision Lab
[](https://github.com/systemslibrarian/ai-decision-lab/actions/workflows/deploy-pages.yml)
[Live Site](https://systemslibrarian.github.io/ai-decision-lab/)
**Visualizing Search, Optimization, and Robot Motion Planning**
AI Decision Lab is an interactive browser-based simulator that demonstrates how pathfinding, optimization, and motion planning work together in robotics and AI systems.
It combines:
- **DFS** for deep uninformed exploration
- **BFS** for shortest-path search on unweighted grids
- **Weighted A\*** for informed path planning with terrain costs
- **Path smoothing** for motion optimization
- **Robot animation** for path execution
- **Gradient-style descent visualization** for continuous optimization concepts
## Why this project exists
Modern intelligent systems often combine:
- **Discrete search** for planning
- **Continuous optimization** for refinement
- **Motion constraints** for realistic execution
This project makes those ideas visible and interactive.
## Features
- Interactive grid editor
- Place start and goal nodes
- Draw and erase walls
- Paint weighted terrain
- Run DFS, BFS, and Weighted A*
- Optimize paths with smoothing
- Animate robot traversal
- Compare search with gradient-style optimization
- Split-screen visualization
- Keyboard shortcuts
- Live replanning toggle
## Concepts illustrated
### Search
- DFS explores deeply without guaranteeing the best route
- BFS finds shortest paths in unweighted grids
- A* uses path cost + heuristic guidance
- Weighted A* models more realistic terrain-aware navigation
### Optimization
- Path smoothing reduces jagged movement
- Turn penalties model motion constraints
- Gradient descent visualization shows iterative improvement on a continuous surface
## Tech stack
- HTML
- CSS
- Vanilla JavaScript
- Canvas API
No frameworks, no build step, no backend.
## Run locally
Open `index.html` in your browser.
Or use a simple local server:
```bash
python -m http.server 8000
```
Then visit:
```text
http://localhost:8000
```
## Controls
### Mouse
- Place start
- Place goal
- Draw walls
- Erase cells
- Paint terrain cost
### Buttons
- Run A* Search
- Run BFS
- Run DFS
- Optimize Route
- Animate Robot
- Run Gradient
- Random Obstacles
- Clear Path
- Clear Grid
- Compare A* vs DFS
- Live Replan
### Keyboard shortcuts
- `1` Place Start
- `2` Place Goal
- `3` Place Walls
- `4` Erase
- `5` Paint Weight
- `A` Run A*
- `B` Run BFS
- `D` Run DFS
- `O` Optimize Path
- `R` Animate Robot
- `G` Run Gradient
## Project structure
```text
ai-decision-lab/
├── index.html
├── styles.css
├── script.js
├── README.md
├── LICENSE
├── .gitignore
├── assets/
│ └── favicon.svg
└── docs/
└── concept-notes.md
```
## Deployment
This project deploys easily to:
- GitHub Pages
- Netlify
- Vercel
- any static host
## Portfolio value
This project demonstrates:
- algorithm visualization
- UI/UX for technical education
- robotics-relevant thinking
- AI/optimization concepts
- clean browser-based implementation
## Future upgrades
- moving obstacles
- preset warehouse / maze maps
- chart of cost over optimization iterations
- mobile-first toolbar layout
- explanation overlays for interviews and demos
## License
MIT