TroglodyteDerivations commited on
Commit
ed69de8
ยท
verified ยท
1 Parent(s): 18064ff

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +146 -3
README.md CHANGED
@@ -1,3 +1,146 @@
1
- ---
2
- license: mit
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+
3
+
4
+ ![flux_krea_00365_](https://cdn-uploads.huggingface.co/production/uploads/68401f649e3f451260c68974/Er62mlciwE7gxap16wOk_.png)
5
+
6
+ ---
7
+ license: mit
8
+ tags:
9
+ - pathfinding
10
+ - simulation
11
+ - reinforcement-learning
12
+ - pyqt5
13
+ - autonomous-agents
14
+ - ai-education
15
+ - vacuum-cleaner
16
+ - search-algorithms
17
+ - bfs
18
+ - a-star
19
+ - manhattan-distance
20
+ - euclidean-distance
21
+ - chebyshev-distance
22
+ - turn-cost
23
+ - performance-metrics
24
+ - >-
25
+ - turn-cost - performance-metrics - algorithm-comparison - visualization-tool
26
+ - educational-software - python - artificial-intelligence -
27
+ robotics-simulation - grid-world - obstacle-avoidance -
28
+ multi-algorithm-framework - heuristic-evaluation - computational-efficiency -
29
+ node-expansion - path-optimization - interactive-learning -
30
+ real-time-simulation - gui-application - academic-project - research-tool -
31
+ algorithm-visualization - performance-analysis - turn-penalty - cost-analysis
32
+ - exploration-strategies - search-techniques - autonomous-navigation -
33
+ intelligent-agents - simulation-environment
34
+ - >-
35
+ - path-planning - heuristic-search - comparative-analysis -
36
+ educational-resource - ai-simulation - robotics-education -
37
+ algorithm-benchmarking - performance-metrics - visualization-framework -
38
+ interactive-demonstration - learning-tool - academic-resource -
39
+ simulation-software - ai-visualization - pathfinding-algorithms -
40
+ search-methods - heuristic-functions - turn-cost-modeling -
41
+ performance-evaluation - algorithm-testing - simulation-platform -
42
+ educational-application - ai-demonstration - robotics-simulation -
43
+ autonomous-systems - intelligent-systems - search-strategies -
44
+ path-optimization - performance-comparison - heuristic-performance -
45
+ algorithm-efficiency - simulation-tool - visualization-software -
46
+ educational-software - ai-education - robotics-education -
47
+ pathfinding-visualization - algorithm-visualization -
48
+ performance-visualization - turn-cost-visualization -
49
+ multi-algorithm-comparison - interactive-simulation - real-time-visualization
50
+ - gui-simulation - pyqt5-application - python-simulation - grid-simulation -
51
+ obstacle-navigation - dirty-cell-cleaning - autonomous-cleaning -
52
+ vacuum-simulation - search-algorithm-comparison - heuristic-comparison
53
+ ---
54
+ ---
55
+ title: Vacuum Cleaner Search Simulation
56
+ emoji: ๐Ÿ 
57
+ colorFrom: blue
58
+ colorTo: green
59
+ pinned: false
60
+ license: mit
61
+ ---
62
+
63
+ # Vacuum Cleaner Search Simulation
64
+
65
+ An interactive simulation that demonstrates various search algorithms for vacuum cleaner pathfinding in a grid environment.
66
+
67
+ ## ๐ŸŽฏ Overview
68
+
69
+ This application visualizes how different search algorithms navigate through a grid to find and clean dirty cells while avoiding obstacles. The simulation compares the performance of BFS and A* search with different heuristics.
70
+
71
+ ## ๐Ÿง  Features
72
+
73
+ - **Multiple Search Algorithms**:
74
+ - BFS (Breadth-First Search)
75
+ - A* with Manhattan distance heuristic
76
+ - A* with Euclidean distance heuristic
77
+ - A* with Chebyshev distance heuristic
78
+
79
+ - **Interactive Controls**:
80
+ - Reset environment
81
+ - Step-by-step simulation
82
+ - Auto-run mode
83
+ - Turn cost toggle (adds cost for direction changes)
84
+
85
+ - **Real-time Metrics**:
86
+ - Steps taken and total cost
87
+ - Nodes explored and expanded
88
+ - Computation time
89
+ - Algorithm performance comparison
90
+
91
+ ## ๐ŸŽฎ How to Use
92
+
93
+ 1. **Setup the Environment**:
94
+ - The grid automatically generates with obstacles (blue) and dirty cells (red)
95
+ - The vacuum starts at a random clean position
96
+
97
+ 2. **Choose Algorithm**:
98
+ - Select from the dropdown menu (BFS, A* Manhattan, A* Euclidean, A* Chebyshev)
99
+
100
+ 3. **Configure Options**:
101
+ - Toggle "Turn Cost" to enable/disable penalty for direction changes
102
+ - Turn cost adds +0.5 for each 90ยฐ direction change
103
+
104
+ 4. **Run Simulation**:
105
+ - Click **Next** to advance one step
106
+ - Click **Run** for continuous automatic execution
107
+ - Click **Stop** to pause automatic execution
108
+ - Click **Reset** to generate a new environment
109
+
110
+ ## ๐Ÿ—๏ธ Technical Details
111
+
112
+ ### Search Algorithms
113
+
114
+ - **BFS**: Explores all directions equally, guarantees shortest path
115
+ - **A* Manhattan**: Uses city-block distance heuristic (`|x1-x2| + |y1-y2|`)
116
+ - **A* Euclidean**: Uses straight-line distance heuristic
117
+ - **A* Chebyshev**: Uses chessboard distance heuristic (`max(|x1-x2|, |y1-y2|)`)
118
+
119
+ ### Cell Types
120
+
121
+ - ๐ŸŸก **Yellow**: Clean cells
122
+ - ๐Ÿ”ด **Red**: Dirty cells (need cleaning)
123
+ - ๐Ÿ”ต **Blue**: Obstacles (block movement)
124
+ - ๐ŸŸข **Green**: Explored cells
125
+ - ๐ŸŸ  **Orange**: Current path
126
+
127
+ ### Performance Metrics
128
+
129
+ - **Nodes Explored**: Total unique positions visited
130
+ - **Nodes Expanded**: Total nodes processed by algorithm
131
+ - **Computation Time**: Time taken to find paths
132
+ - **Turn Cost**: Additional cost from direction changes
133
+
134
+ ## ๐Ÿ“Š Algorithm Comparison
135
+
136
+ The application tracks and compares:
137
+ - Average nodes expanded per run
138
+ - Average computation time
139
+ - Efficiency across different heuristics
140
+
141
+ Typically:
142
+ - **BFS** explores more nodes but finds optimal paths
143
+ - **A* Euclidean** is often most efficient for direct paths
144
+ - **A* Chebyshev** may explore more nodes in grid environments
145
+
146
+ ## ๐Ÿš€ Local Development