forked from sisl/ConstructionBots.jl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_demo.jl
145 lines (107 loc) · 4.97 KB
/
test_demo.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
let
project_params = get_project_params(4)
open_animation_at_end = false
save_animation_along_the_way = false
save_animation_at_end = true
anim_active_agents = true
anim_active_areas = true
rvo_flag = true
tangent_bug_flag = true
dispersion_flag = true
assignment_mode = :greedy # :milp :greedy :milp_w_greedy_warm_start
write_results = false
overwrite_results = false
env, stats = run_lego_demo(;
ldraw_file = project_params[:file_name],
project_name = project_params[:project_name],
model_scale = project_params[:model_scale],
num_robots = project_params[:num_robots],
assignment_mode = assignment_mode,
rvo_flag = rvo_flag,
tangent_bug_flag = tangent_bug_flag,
dispersion_flag = dispersion_flag,
open_animation_at_end = open_animation_at_end,
save_animation = save_animation_at_end,
save_animation_along_the_way = save_animation_along_the_way,
anim_active_agents = anim_active_agents,
anim_active_areas = anim_active_areas,
write_results = write_results,
overwrite_results = overwrite_results,
stop_after_task_assignment = false
)
end
let
project_params = get_project_params(4)
open_animation_at_end = false
save_animation_along_the_way = false
save_animation_at_end = false
anim_active_agents = false
anim_active_areas = false
rvo_flag = false
tangent_bug_flag = false
dispersion_flag = false
assignment_mode = :milp # :greedy :milp_w_greedy_warm_start
write_results = true
overwrite_results = true
env, stats = run_lego_demo(;
ldraw_file = project_params[:file_name],
project_name = project_params[:project_name],
model_scale = project_params[:model_scale],
num_robots = project_params[:num_robots] + 5,
assignment_mode = assignment_mode,
milp_optimizer = :gurobi, # :gurobi :highs
optimizer_time_limit = 30,
rvo_flag = rvo_flag,
tangent_bug_flag = tangent_bug_flag,
dispersion_flag = dispersion_flag,
open_animation_at_end = open_animation_at_end,
save_animation = save_animation_at_end,
save_animation_along_the_way = save_animation_along_the_way,
anim_active_agents = anim_active_agents,
anim_active_areas = anim_active_areas,
write_results = write_results,
overwrite_results = overwrite_results,
look_for_previous_milp_solution = false,
save_milp_solution = false,
stop_after_task_assignment = false
)
end
let
project_params = get_project_params(4)
open_animation_at_end = false
save_animation_along_the_way = false
save_animation_at_end = false
anim_active_agents = false
anim_active_areas = false
rvo_flag = false
tangent_bug_flag = false
dispersion_flag = false
assignment_mode = :milp_w_greedy_warm_start
write_results = true
overwrite_results = true
env, stats = run_lego_demo(;
ldraw_file = project_params[:file_name],
project_name = project_params[:project_name],
model_scale = project_params[:model_scale],
num_robots = project_params[:num_robots] + 5,
assignment_mode = assignment_mode,
milp_optimizer = :gurobi, # :gurobi :highs
optimizer_time_limit = 30,
rvo_flag = rvo_flag,
tangent_bug_flag = tangent_bug_flag,
dispersion_flag = dispersion_flag,
open_animation_at_end = open_animation_at_end,
save_animation = save_animation_at_end,
save_animation_along_the_way = save_animation_along_the_way,
anim_active_agents = anim_active_agents,
anim_active_areas = anim_active_areas,
write_results = write_results,
overwrite_results = overwrite_results,
look_for_previous_milp_solution = false,
save_milp_solution = false,
stop_after_task_assignment = false
)
end
let
include("stage_graph_plots.jl")
end