This commit is contained in:
2020-12-16 18:04:26 -07:00
parent e335ce3c68
commit 74035a16eb
23 changed files with 4312 additions and 947 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@@ -7,7 +7,6 @@
<e p="Bootstrapper.cs" t="Include" /> <e p="Bootstrapper.cs" t="Include" />
<e p="ConsoleApp.csproj" t="IncludeRecursive" /> <e p="ConsoleApp.csproj" t="IncludeRecursive" />
<e p="CoreModule.cs" t="Include" /> <e p="CoreModule.cs" t="Include" />
<e p="HexPlot.py" t="Include" />
<e p="IJsonDeserializor.cs" t="Include" /> <e p="IJsonDeserializor.cs" t="Include" />
<e p="IModule.cs" t="Include" /> <e p="IModule.cs" t="Include" />
<e p="ISimRunner.cs" t="Include" /> <e p="ISimRunner.cs" t="Include" />
@@ -51,6 +50,7 @@
<e p="SquarePath.txt" t="Include" /> <e p="SquarePath.txt" t="Include" />
<e p="SquareTest.png" t="Include" /> <e p="SquareTest.png" t="Include" />
</e> </e>
<e p="Output 2.zip" t="Include" />
<e p="Output.zip" t="Include" /> <e p="Output.zip" t="Include" />
<e p="PathPlanners" t="Include"> <e p="PathPlanners" t="Include">
<e p="IPathPlanner.cs" t="Include" /> <e p="IPathPlanner.cs" t="Include" />
@@ -58,6 +58,7 @@
<e p="PathPlanner.cs" t="Include" /> <e p="PathPlanner.cs" t="Include" />
<e p="ReactivePathPlanner.cs" t="Include" /> <e p="ReactivePathPlanner.cs" t="Include" />
</e> </e>
<e p="plotGraphs.py" t="Include" />
<e p="Program.cs" t="Include" /> <e p="Program.cs" t="Include" />
<e p="Sim" t="Include"> <e p="Sim" t="Include">
<e p="DetectionHead.cs" t="Include" /> <e p="DetectionHead.cs" t="Include" />

View File

@@ -18,30 +18,24 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="dafcaeb7-80aa-43a3-a480-786fafb78c0b" name="Default Changelist" comment=""> <list default="true" id="dafcaeb7-80aa-43a3-a480-786fafb78c0b" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/ConsoleApp/Maps/AstarSquareSearch.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/contentModel.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/contentModel.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.RobotIntelFinal/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/HexPlot.py" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/HexPlot.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/ConsoleApp.csproj" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/ConsoleApp.csproj" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/ISimulationResults.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/ISimulationResults.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/HexPlot.py" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/plotGraphs.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Maps/Cell.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Maps/Cell.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Maps/ICell.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Maps/ICell.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Maps/ISquareMap.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Maps/ISquareMap.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Maps/MapExtensions.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Maps/MapExtensions.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Maps/SquareMap.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Maps/SquareMap.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/Data.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/Data.txt" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Output/Data.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/Data.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexCoverage.png" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexCoverage.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexCoveredCells.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexCoveredCells.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexDetectedMines.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexDetectedMines.txt" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexDetectedMines.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexDetectedMines.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexPath.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexPath.txt" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexPath.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexPath.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexTest.png" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexTest.png" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Output/HexTest.png" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/HexTest.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/PathPlanners/IReactivePathPlanner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/PathPlanners/IReactivePathPlanner.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Output/Mines.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/Mines.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/SquareCoverage.png" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/SquareCoverage.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/SquareCoveredCells.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/SquareCoveredCells.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/SquareDetectedMines.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/SquareDetectedMines.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/SquarePath.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/SquarePath.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Output/SquareTest.png" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Output/SquareTest.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/PathPlanners/ReactivePathPlanner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/PathPlanners/ReactivePathPlanner.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Program.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Program.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/Program.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Program.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Sim/DetectionHead.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Sim/DetectionHead.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/ConsoleApp/UserConsole.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/UserConsole.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Sim/IVehicle.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Sim/IVehicle.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Sim/Vehicle.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Sim/Vehicle.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/Sim/VehicleConfiguration.json" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/Sim/VehicleConfiguration.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/SimRunner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/SimRunner.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ConsoleApp/SimulationResults.cs" beforeDir="false" afterPath="$PROJECT_DIR$/ConsoleApp/SimulationResults.cs" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -115,7 +109,6 @@
<option value="$PROJECT_DIR$/ConsoleApp/Maps/CellExtensions.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/CellExtensions.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Sim/IVehicle.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Sim/IVehicle.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/IHexMap.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/IHexMap.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/UserConsole.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/HexMap.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/HexMap.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/MapFactory.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/MapFactory.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/IMapFactory.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/IMapFactory.cs" />
@@ -129,7 +122,6 @@
<option value="$PROJECT_DIR$/ConsoleApp/Maps/MapExtensions.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/MapExtensions.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/IReactivePathPlanner.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/IReactivePathPlanner.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/ReactivePathPlanner.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/ReactivePathPlanner.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Program.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/AstarSquareSearch.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/AstarSquareSearch.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/Cell.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/Cell.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Maps/SquareMap.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Maps/SquareMap.cs" />
@@ -139,8 +131,10 @@
<option value="$PROJECT_DIR$/ConsoleApp/Sim/DetectionHead.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/Sim/DetectionHead.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/SimRunner.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/SimRunner.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/Sim/VehicleConfiguration.json" /> <option value="$PROJECT_DIR$/ConsoleApp/Sim/VehicleConfiguration.json" />
<option value="$PROJECT_DIR$/ConsoleApp/HexPlot.py" />
<option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" /> <option value="$PROJECT_DIR$/ConsoleApp/PathPlanners/PathPlanner.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/UserConsole.cs" />
<option value="$PROJECT_DIR$/ConsoleApp/HexPlot.py" />
<option value="$PROJECT_DIR$/ConsoleApp/Program.cs" />
</changedPaths> </changedPaths>
</component> </component>
<component name="ProjectId" id="1lIZ7IfsUjzqV2Jb1obOFvGFAfp" /> <component name="ProjectId" id="1lIZ7IfsUjzqV2Jb1obOFvGFAfp" />
@@ -152,7 +146,7 @@
<option name="showLibraryContents" value="true" /> <option name="showLibraryContents" value="true" />
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
<property name="DebuggerViewTab_PTCS_FirstProportionKey" value="0.22377622" /> <property name="DebuggerViewTab_PTCS_FirstProportionKey" value="0.22508793" />
<property name="DebuggerViewTab_PTCS_LastProportionKey" value="0.0" /> <property name="DebuggerViewTab_PTCS_LastProportionKey" value="0.0" />
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" /> <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
<property name="WebServerToolWindowFactoryState" value="false" /> <property name="WebServerToolWindowFactoryState" value="false" />
@@ -220,7 +214,7 @@
<workItem from="1607983862958" duration="7777000" /> <workItem from="1607983862958" duration="7777000" />
<workItem from="1607993290571" duration="88336000" /> <workItem from="1607993290571" duration="88336000" />
<workItem from="1608146906461" duration="175000" /> <workItem from="1608146906461" duration="175000" />
<workItem from="1608147111263" duration="13487000" /> <workItem from="1608147111263" duration="16256000" />
</task> </task>
<servers /> <servers />
</component> </component>

BIN
ConsoleApp/.DS_Store vendored

Binary file not shown.

View File

@@ -22,7 +22,7 @@
<None Update="Sim\VehicleConfiguration.json"> <None Update="Sim\VehicleConfiguration.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Update="HexPlot.py"> <None Update="plotGraphs.py">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
</ItemGroup> </ItemGroup>

BIN
ConsoleApp/Output 2.zip Normal file

Binary file not shown.

BIN
ConsoleApp/Output.zip Normal file

Binary file not shown.

View File

@@ -1,14 +1,14 @@
General: General:
Total Mines: 23 Total Mines: 36
Hex: Hex:
Total Moves: 420 Total Moves: 687
Bombs Found: 23 Bombs Found: 35
Cleared Cell Count: 2263 Cleared Cell Count: 3591
Uncleared Cell Count: 41 Uncleared Cell Count: 9
Percentage Cleared: 98.22048611111111 Percentage Cleared: 99.75
Square: Square:
Total Moves: 553 Total Moves: 1045
Bombs Found: 20 Bombs Found: 34
Cleared Cell Count: 1996 Cleared Cell Count: 3251
Uncleared Cell Count: 308 Uncleared Cell Count: 349
Percentage Cleared: 86.63194444444444 Percentage Cleared: 90.30555555555554

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -1,23 +1,35 @@
39 7 48 7
17 8 47 13
12 11 35 8
5 10 12 8
12 14 5 18
16 20 31 14
27 14 28 20
31 20 36 14
32 14 37 12
35 25 42 18
33 22 49 16
21 19 45 23
20 21 42 23
15 23 49 27
9 29 42 29
34 26 6 22
37 26 10 28
35 37 9 31
35 36 19 27
34 36 54 29
29 38 16 39
10 36 10 34
20 42 26 40
33 42
50 42
52 53
45 48
38 48
36 51
34 51
29 54
30 50
27 54
26 49
12 49

View File

@@ -46,32 +46,59 @@
45 0 45 0
46 0 46 0
47 0 47 0
47 1 48 0
47 2 49 0
47 3 50 0
47 4 51 0
47 5 52 0
47 6 53 0
47 7 54 0
46 7 55 0
56 0
57 0
58 0
59 0
59 1
59 2
59 3
59 4
59 5
59 6
59 7
58 7
57 7
56 7
55 7
54 7
53 7
52 7
51 7
51 7
51 7
51 8
50 9
50 10
49 10
48 10
47 10
46 9
46 8
45 7 45 7
44 7 44 7
43 7 43 7
42 7 42 7
42 7 41 7
42 7 40 7
42 8 39 7
41 9 38 7
41 10 37 7
40 10 37 7
39 10 37 6
38 10 36 5
37 9 35 5
37 8 34 5
36 7 33 5
35 7 33 6
34 7
33 7
32 7 32 7
31 7 31 7
30 7 30 7
@@ -86,18 +113,18 @@
21 7 21 7
20 7 20 7
19 7 19 7
19 7 18 7
19 6 17 7
18 5 16 7
17 5 15 7
16 5
15 5
15 6
14 7 14 7
13 7 14 7
12 7 14 6
11 7 13 5
10 7 12 5
11 5
10 5
10 6
9 7 9 7
8 7 8 7
7 7 7 7
@@ -124,16 +151,11 @@
7 14 7 14
8 14 8 14
9 14 9 14
9 14 10 14
9 14 11 14
9 15 12 14
10 16 13 14
10 17 14 14
11 17
12 17
13 17
14 16
14 15
15 14 15 14
16 14 16 14
17 14 17 14
@@ -144,27 +166,26 @@
22 14 22 14
23 14 23 14
24 14 24 14
24 14 25 14
24 14 26 14
24 15 27 14
25 16 28 14
25 17 28 14
26 17 28 14
27 17 28 15
28 17
29 16 29 16
29 16 29 17
30 16
30 17 30 17
31 17 31 17
32 17 32 17
33 17 33 17
34 16 33 17
34 15 34 17
35 14 35 17
36 14 36 17
37 14 37 17
38 14 38 16
38 15
39 14 39 14
40 14 40 14
41 14 41 14
@@ -172,72 +193,113 @@
43 14 43 14
44 14 44 14
45 14 45 14
46 14 45 14
47 14 45 15
47 15 46 16
47 16 46 17
47 17
47 18 47 18
47 19 47 19
48 19
49 19
50 19
51 18
51 17
52 16
51 15
52 14
53 14
54 14
55 14
56 14
57 14
58 14
59 14
59 15
59 16
59 17
59 18
59 19
59 20
59 21
58 21
57 21
56 21
55 21
54 21
53 21
52 21
51 21
50 21
49 21
48 21
47 21
47 21
47 20
46 20
45 20
46 20
47 20 47 20
47 21 47 21
46 21 48 22
45 21 48 23
44 21 48 24
43 21 47 25
42 21 47 26
41 21 46 26
40 21 45 26
39 21 44 26
43 26
42 26
41 26
40 25
40 24
39 23
39 22
38 21 38 21
37 21 37 21
36 21 36 21
35 21 35 21
35 21 34 21
35 20 33 21
34 19 32 21
33 19 31 21
33 18 30 21
32 17 30 21
31 17 30 22
30 17 29 23
29 17 28 23
29 18 27 23
28 19 26 23
28 20 26 22
28 21
27 21
26 21
25 21 25 21
24 21 24 21
23 21 23 21
23 21 22 21
23 22 21 21
22 23 20 21
22 24 19 21
21 24 18 21
20 24 17 21
19 24 16 21
18 24 15 21
17 25 14 21
17 26 13 21
16 26
15 26
14 26
13 25
13 24
12 23
12 22
12 21 12 21
11 21 11 21
10 21 10 21
9 21 9 21
8 21 8 21
7 21 8 21
6 21 9 22
5 21 8 23
4 21 8 24
3 21 7 25
6 25
5 25
4 25
4 24
3 23
3 22
2 21 2 21
1 21 1 21
0 21 0 21
@@ -258,20 +320,24 @@
7 28 7 28
7 27 7 27
8 26 8 26
9 26 8 25
10 26 9 25
11 26 10 25
11 27 11 25
12 28 12 26
12 27
13 28 13 28
14 28 14 28
15 28 15 28
16 28 16 28
17 28 17 28
18 28 17 28
19 28 17 29
20 28 18 30
21 28 19 30
20 30
21 30
21 29
22 28 22 28
23 28 23 28
24 28 24 28
@@ -283,29 +349,59 @@
30 28 30 28
31 28 31 28
32 28 32 28
32 28 33 28
32 29 34 28
33 29 35 28
34 29 36 28
35 29 37 28
36 29 38 28
37 29
38 29
39 28 39 28
40 28 40 28
41 28 40 28
42 28 40 27
43 28 41 26
44 28 42 26
43 26
44 26
44 27
45 28 45 28
46 28 46 28
47 28 47 28
47 28
47 29 47 29
47 30 48 30
47 31 49 30
47 32 50 30
47 33 51 30
47 34 51 29
52 28
52 27
53 26
54 26
55 26
56 26
56 27
57 28
58 28
59 28
59 29
59 30
59 31
59 32
59 33
59 34
59 35
58 35
57 35
56 35
55 35
54 35
53 35
52 35
51 35
50 35
49 35
48 35
47 35 47 35
46 35 46 35
45 35 45 35
@@ -317,13 +413,11 @@
39 35 39 35
38 35 38 35
37 35 37 35
37 34 36 35
36 33 35 35
35 33 34 35
34 33 33 35
33 33 32 35
32 33
32 34
31 35 31 35
30 35 30 35
29 35 29 35
@@ -345,12 +439,12 @@
13 35 13 35
12 35 12 35
12 35 12 35
12 34 12 36
11 33 11 37
10 33 10 37
9 33 9 37
8 33 8 37
8 34 8 36
7 35 7 35
6 35 6 35
5 35 5 35
@@ -383,29 +477,31 @@
15 42 15 42
16 42 16 42
17 42 17 42
17 42 18 42
17 42 19 42
17 43 20 42
18 44 21 42
18 45 22 42
19 45
20 45
21 45
22 44
22 43
23 42 23 42
24 42 24 42
25 42 24 42
26 42 24 43
27 42 25 43
26 43
27 43
28 42 28 42
29 42 29 42
30 42 30 42
31 42 30 42
32 42 30 42
33 42 30 43
34 42 31 44
35 42 31 45
32 45
33 45
34 45
35 44
35 43
36 42 36 42
37 42 37 42
38 42 38 42
@@ -418,3 +514,174 @@
45 42 45 42
46 42 46 42
47 42 47 42
47 42
47 42
47 43
48 44
48 45
49 45
50 45
51 45
52 44
52 43
53 42
54 42
55 42
56 42
57 42
58 42
59 42
59 43
59 44
59 45
59 46
59 47
59 48
59 49
58 49
57 49
56 49
55 49
54 49
53 49
52 49
51 49
50 49
49 49
48 49
47 49
47 49
47 50
46 51
45 51
44 51
43 51
43 50
42 49
41 49
40 49
40 49
40 50
39 51
39 52
38 53
38 54
37 54
36 54
35 54
34 54
33 54
32 53
32 54
31 55
31 56
30 57
29 57
28 57
27 57
26 57
25 57
25 56
24 55
24 54
24 53
24 52
23 51
23 50
23 49
22 49
21 49
20 49
19 49
18 49
17 49
16 49
15 49
15 49
15 49
15 50
14 51
14 52
13 52
12 52
11 52
10 51
10 50
9 49
8 49
7 49
6 49
5 49
4 49
3 49
2 49
1 49
0 49
1 50
1 51
2 52
1 53
1 54
0 55
0 56
1 56
2 56
3 56
4 56
5 56
6 56
7 56
8 56
9 56
10 56
11 56
12 56
13 56
14 56
15 56
16 56
17 56
18 56
19 56
20 56
21 56
22 56
23 56
24 56
25 56
25 56
25 57
26 57
27 57
28 57
29 57
30 57
31 56
32 56
33 56
34 56
35 56
36 56
37 56
38 56
39 56
40 56
41 56
42 56
43 56
44 56
45 56
46 56
47 56
48 56
49 56
50 56
51 56
52 56
53 56
54 56
55 56
56 56
57 56
58 56
59 56

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -1,23 +1,36 @@
32 14 30 50
20 42 48 7
27 14 16 39
12 14 42 18
34 26 47 13
9 29 50 42
10 36 52 53
31 20 49 16
34 36 36 14
15 23 54 29
5 10 6 22
33 22 26 49
35 37 28 20
16 20 10 34
37 26 27 54
12 11 49 27
39 7 35 8
29 38 26 40
35 36 38 48
20 21 10 28
21 19 12 8
35 25 5 18
17 8 42 23
45 23
42 29
36 51
37 12
29 54
34 51
33 12
45 48
19 27
12 49
31 14
33 42
9 31

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 19 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -1,20 +1,34 @@
39 7 48 7
17 8 47 13
12 11 49 16
5 10 35 8
12 14 12 8
16 20 31 14
15 23 28 20
9 29 36 14
10 36 42 18
20 21 42 23
21 19 42 29
27 14 49 27
31 20 54 29
33 22 45 23
34 26 6 22
37 26 5 18
35 25 9 31
20 42 10 28
35 37 10 34
29 38 16 39
19 27
26 40
33 42
38 48
34 51
36 51
30 50
26 49
27 54
29 54
45 48
52 53
50 42
12 49

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -42,9 +42,9 @@ namespace ConsoleApp.PathPlanners
path.AddRange( path.AddRange(
map.GetShortestPath( map.GetShortestPath(
currentPostion, currentPostion,
map.GetCell(currentPostion.X, currentPostion.Y + vehicle.DetectorRadius * 2 - 1))); map.GetCell(currentPostion.X, currentPostion.Y + (vehicle.DetectorRadius * 2) - 1)));
currentPostion = new Cell(currentPostion.X, currentPostion.Y + (vehicle.DetectorRadius * 2 - 1)); currentPostion = new Cell(currentPostion.X, currentPostion.Y + (vehicle.DetectorRadius * 2) -1);
if (currentHeading == GlobalDirection.East) if (currentHeading == GlobalDirection.East)
currentHeading = GlobalDirection.West; currentHeading = GlobalDirection.West;
else else

View File

@@ -27,19 +27,10 @@ namespace ConsoleApp
private static void Initialization() private static void Initialization()
{ {
_userConsole.PrintStartMenu(); var (x,y) = _userConsole.GetMapDimensions();
var input = UserConsole.GetUserInput(); var minePercentage = 1;
if (input == "1") RunSimulation(x, y, minePercentage);
{
var (x,y) = _userConsole.GetMapDimensions();
var minePercentage = UserConsole.GetMinePercentage();
RunSimulation(x, y, minePercentage);
}
else
{
UserConsole.PrintInvalidInput();
Initialization();
}
} }
private static void RunSimulation(int x, int y, double minePercentage) private static void RunSimulation(int x, int y, double minePercentage)
@@ -53,7 +44,7 @@ namespace ConsoleApp
private static void GenerateImages() private static void GenerateImages()
{ {
var file = Path.Combine("./",Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"HexPlot.py"); var file = Path.Combine("./",Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"plotGraphs.py");
ProcessStartInfo startInfo = new ProcessStartInfo() ProcessStartInfo startInfo = new ProcessStartInfo()
{ {
FileName = "python3", FileName = "python3",

View File

@@ -24,18 +24,18 @@ namespace ConsoleApp
public (int width, int height) GetMapDimensions() public (int width, int height) GetMapDimensions()
{ {
Console.WriteLine($"Enter map width: "); Console.WriteLine($"Enter map width (5-15) meters: ");
var x = GetUserInput(); var x = GetUserInput();
if (!int.TryParse(x, out var width)) if (!int.TryParse(x, out var width) && width >= 5 && width <= 15)
{ {
PrintInvalidInput(); PrintInvalidInput();
GetMapDimensions(); GetMapDimensions();
} }
Console.WriteLine($"Enter map height: "); Console.WriteLine($"Enter map height (5-15) meters: ");
var y = GetUserInput(); var y = GetUserInput();
if (int.TryParse(y, out var height)) return (width, height); if (int.TryParse(y, out var height) && height >= 5 && height <= 15) return (width, height);
PrintInvalidInput(); PrintInvalidInput();
GetMapDimensions(); GetMapDimensions();
return (width, height); return (width, height);

View File

@@ -68,10 +68,9 @@ if __name__ == "__main__":
yf.append(int(y)) yf.append(int(y))
fig = plt.figure(1) fig = plt.figure(1)
plt.plot(xc, yc) plt.plot(xc, yc, 'h', label='vehicle', color='blue', linestyle='None')
plt.plot(xc, yc, 'o', label='vehicle', color='blue') plt.plot(xm, ym, 'h', label='all mines', color='red', linestyle='None')
plt.plot(xm, ym, 'o', label='all mines', color='red') plt.plot(xf, yf, 'h', label='detected mines', color='orange', linestyle='None')
plt.plot(xf, yf, 'o', label='detected mines', color='orange')
plt.title('Hex Simulation') plt.title('Hex Simulation')
plt.legend(loc='lower left', fontsize='xx-small') plt.legend(loc='lower left', fontsize='xx-small')
matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/HexTest.png') matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/HexTest.png')
@@ -80,10 +79,9 @@ if __name__ == "__main__":
plt.close(fig) plt.close(fig)
fig = plt.figure(2) fig = plt.figure(2)
plt.plot(sxc, syc) plt.plot(sxc, syc, 's', label='vehicle', color='blue', linestyle='None')
plt.plot(sxc, syc, 'o', label='vehicle', color='blue') plt.plot(sxm, sym, 's', label='all mines', color='red', linestyle='None')
plt.plot(sxm, sym, 'o', label='all mines', color='red') plt.plot(sxf, syf, 's', label='detected mines', color='orange', linestyle='None')
plt.plot(sxf, syf, 'o', label='detected mines', color='orange')
plt.title('Square Simulation') plt.title('Square Simulation')
plt.legend(loc='lower left', fontsize='xx-small') plt.legend(loc='lower left', fontsize='xx-small')
matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/SquareTest.png') matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/SquareTest.png')
@@ -91,8 +89,8 @@ if __name__ == "__main__":
plt.close(fig) plt.close(fig)
fig = plt.figure(3) fig = plt.figure(3)
plt.plot(hccx, hccy, 'o', label='covered cells', color='red') plt.plot(hccx, hccy, 'h', label='covered cells', color='red', linestyle='None')
plt.plot(xf, xy, 'o', label='detected mines', color='blue') plt.plot(xf, yf, 'h', label='detected mines', color='blue', linestyle='None')
plt.title('Hex Coverage') plt.title('Hex Coverage')
plt.legend(loc='lower left', fontsize='xx-small') plt.legend(loc='lower left', fontsize='xx-small')
matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/HexCoverage.png') matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/HexCoverage.png')
@@ -100,8 +98,8 @@ if __name__ == "__main__":
plt.close(fig) plt.close(fig)
fig = plt.figure(4) fig = plt.figure(4)
plt.plot(sccx, sccy, 'o', label='covered cells', color='red') plt.plot(sccx, sccy, 's', label='covered cells', color='red', linestyle='None')
plt.plot(sxf, syf, 'o', label='detected mines', color='blue') plt.plot(sxf, syf, 's', label='detected mines', color='blue', linestyle='None')
plt.title('Square Coverage') plt.title('Square Coverage')
plt.legend(loc='lower left', fontsize='xx-small') plt.legend(loc='lower left', fontsize='xx-small')
matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/SquareCoverage.png') matplotlib.pyplot.savefig('/Users/brady.bodily/Documents/Repositories/CS5890_Robot_Intelligence/RobotIntelFinal/ConsoleApp/Output/SquareCoverage.png')