Skip to content

mnmnc/MachineLearning_MazeFlooder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

MachineLearning_MazeFlooder

Passing simple maze by flooding all possible solutions simultaneously. First one to reach the exit is marked as the shortest one.

GRAPH

 7                   (A)--(B)--(C)--(D)
                      |              |
 6                   (E)--(F)       (G)--(H)
                           |              |
 5         (I)--(J)--(K)--(L)  (M)--(N)--(O)
            |              |    |         |
 4         (P)--(Q)       (R)  (S)       (T)
                 |              |         |
 3              (U)--(V)       (W)--(X)  (Y)
                      |              |    |
 2                   (Z)       (1)--(2)  (3)
                      |                   |
 1                   (4)--(5)--(6)--(7)--(8)

 0

       0    1    2    3    4    5    6    7

GRAPH VALUES

nodes_cords = {
        "A" : [2,7],    "B" : [3,7],
        "C" : [4,7],    "D" : [5,7],
        "E" : [2,6],    "F" : [3,6],
        "G" : [5,6],    "H" : [6,6],
        "I" : [1,5],    "J" : [2,5],
        "K" : [3,5],    "L" : [4,5],
        "M" : [5,5],    "N" : [6,5],
        "O" : [7,5],    "P" : [1,4],
        "Q" : [2,4],    "R" : [4,4],
        "S" : [5,4],    "T" : [7,4],
        "U" : [2,3],    "V" : [3,3],
        "W" : [5,3],    "X" : [6,3],
        "Y" : [7,5],    "Z" : [3,2],
        "1" : [5,2],    "2" : [6,2],
        "3" : [7,2],    "4" : [3,1],
        "5" : [4,1],    "6" : [5,1],
        "7" : [6,1],    "8" : [7,1]
}

OUTPUT:

Maze Flood Algorithm output

Searching path via [] --> C
        [ ] Node value: 6.0
        L[ ] Analyzing neighbour node: B
        L[ ] Analyzing neighbour node: D

Searching path via ['C'] --> D
        [ ] Node value: 6.083
        L[ ] Analyzing neighbour node: G

Searching path via ['C'] --> B
        [ ] Node value: 6.083
        L[ ] Analyzing neighbour node: A

Searching path via ['C', 'D'] --> G
        [ ] Node value: 6.099
        L[ ] Analyzing neighbour node: H

Searching path via ['C', 'B'] --> A
        [ ] Node value: 7.325
        L[ ] Analyzing neighbour node: E

Searching path via ['C', 'B', 'A'] --> E
        [ ] Node value: 7.385
        L[ ] Analyzing neighbour node: F

Searching path via ['C', 'D', 'G'] --> H
        [ ] Node value: 7.385
        L[ ] Analyzing neighbour node: N

Searching path via ['C', 'D', 'G', 'H'] --> N
        [ ] Node value: 7.472
        L[ ] Analyzing neighbour node: M
        L[ ] Analyzing neighbour node: O

Searching path via ['C', 'B', 'A', 'E'] --> F
        [ ] Node value: 8.099
        L[ ] Analyzing neighbour node: K

Searching path via ['C', 'B', 'A', 'E', 'F'] --> K
        [ ] Node value: 8.123
        L[ ] Analyzing neighbour node: J
        L[ ] Analyzing neighbour node: L

Searching path via ['C', 'D', 'G', 'H', 'N'] --> M
        [ ] Node value: 8.123
        L[ ] Analyzing neighbour node: S

Searching path via ['C', 'D', 'G', 'H', 'N', 'M'] --> S
        [ ] Node value: 8.162
        L[ ] Analyzing neighbour node: W

Searching path via ['C', 'D', 'G', 'H', 'N', 'M', 'S'] --> W
        [ ] Node value: 8.236
        L[ ] Analyzing neighbour node: X

Searching path via ['C', 'B', 'A', 'E', 'F', 'K'] --> L
        [ ] Node value: 9.0
        [@] Dead end discovered:  R

Searching path via ['C', 'D', 'G', 'H', 'N'] --> O
        [ ] Node value: 9.0
        L[ ] Analyzing neighbour node: T

Searching path via ['C', 'D', 'G', 'H', 'N', 'O'] --> T
        [ ] Node value: 9.243
        L[ ] Analyzing neighbour node: Y

Searching path via ['C', 'B', 'A', 'E', 'F', 'K'] --> J
        [ ] Node value: 9.472
        L[ ] Analyzing neighbour node: I

Searching path via ['C', 'D', 'G', 'H', 'N', 'M', 'S', 'W'] --> X
        [ ] Node value: 9.828
        L[ ] Analyzing neighbour node: 2

Searching path via ['C', 'D', 'G', 'H', 'N', 'M', 'S', 'W', 'X'] --> 2
        [ ] Node value: 10.236
        [@] Dead end discovered:  1

Searching path via ['C', 'D', 'G', 'H', 'N', 'O', 'T'] --> Y
        [ ] Node value: 11.0
        L[ ] Analyzing neighbour node: 3

Searching path via ['C', 'D', 'G', 'H', 'N', 'O', 'T', 'Y'] --> 3
        [ ] Node value: 10.162
        L[ ] Analyzing neighbour node: 8

Searching path via ['C', 'D', 'G', 'H', 'N', 'O', 'T', 'Y', '3'] --> 8
        [ ] Node value: 11.0
        L[ ] Analyzing neighbour node: 7

Searching path via ['C', 'D', 'G', 'H', 'N', 'O', 'T', 'Y', '3', '8'] --> 7
        [ ] Node value: 11.0
        L[ ] Analyzing neighbour node: 6

Searching path via ['C', 'B', 'A', 'E', 'F', 'K', 'J'] --> I
        [ ] Node value: 11.0
        L[ ] Analyzing neighbour node: P

Searching path via ['C', 'D', 'G', 'H', 'N', 'O', 'T', 'Y', '3', '8', '7'] --> 6
        [ ] Node value: 11.0
        L[ ] Analyzing neighbour node: 5

[+] Destination reached in 26 iterations.


SHORTEST PATH:
C [4, 7]
D [5, 7]
G [5, 6]
H [6, 6]
N [6, 5]
O [7, 5]
T [7, 4]
Y [7, 5]
3 [7, 2]
8 [7, 1]
7 [6, 1]
6 [5, 1]

About

Passing simple maze by flooding all possible solutions simultaneously. First one to reach the exit is marked as the shortest one.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages