sierra-research 1.3.1__py3-none-any.whl → 1.3.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sierra/core/config.py +1 -1
- sierra/core/graphs/stacked_line_graph.py +9 -6
- sierra/core/models/graphs.py +0 -1
- sierra/core/pipeline/stage2/exp_runner.py +4 -4
- sierra/core/pipeline/stage3/imagizer.py +2 -1
- sierra/core/pipeline/stage4/__init__.py +2 -0
- sierra/core/startup.py +1 -0
- sierra/core/utils.py +1 -1
- sierra/main.py +1 -1
- sierra/version.py +1 -1
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man1/sierra-cli.1 +134 -134
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-examples.7 +15 -15
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-exec-envs.7 +12 -12
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-glossary.7 +12 -12
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-platforms.7 +31 -31
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-usage.7 +56 -56
- {sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra.7 +5 -5
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/METADATA +7 -6
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/RECORD +23 -23
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/WHEEL +1 -1
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/LICENSE +0 -0
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/entry_points.txt +0 -0
- {sierra_research-1.3.1.dist-info → sierra_research-1.3.6.dist-info}/top_level.txt +0 -0
{sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-examples.7
RENAMED
@@ -1,8 +1,5 @@
|
|
1
1
|
.\" Man page generated from reStructuredText.
|
2
2
|
.
|
3
|
-
.TH "SIERRA-EXAMPLES" "7" "Jan 25, 2023" "1.3.1" "SIERRA"
|
4
|
-
.SH NAME
|
5
|
-
sierra-examples \- Examples of SIERRA usage. These examples all assume that you have successfully set up SIERRA with a project of your choice.
|
6
3
|
.
|
7
4
|
.nr rst2man-indent-level 0
|
8
5
|
.
|
@@ -30,11 +27,14 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
30
27
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
31
28
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
32
29
|
..
|
30
|
+
.TH "SIERRA-EXAMPLES" "7" "Apr 01, 2024" "1.3.6" "SIERRA"
|
31
|
+
.SH NAME
|
32
|
+
sierra-examples \- Examples of SIERRA usage. These examples all assume that you have successfully set up SIERRA with a project of your choice.
|
33
33
|
.sp
|
34
34
|
This page contains reference examples of SIERRA usage to help you craft your own
|
35
35
|
SIERRA invocation. These examples use the SIERRA project plugins from the
|
36
|
-
SIERRA sample project repo: \fI\%https://github.com
|
37
|
-
|
36
|
+
SIERRA sample project repo: \fI\%https://github.com/jharwell/sierra\-sample\-project\fP\&. See
|
37
|
+
\fI\%Trying Out SIERRA\fP or \fI\%Getting Started With SIERRA\fP for setting up the
|
38
38
|
sample project repository.
|
39
39
|
.sp
|
40
40
|
In all examples:
|
@@ -46,7 +46,7 @@ In all examples:
|
|
46
46
|
plugin
|
47
47
|
.IP \(bu 2
|
48
48
|
\fB$HOME/git/sierra\-sample\-project/projects\fP is on
|
49
|
-
\
|
49
|
+
\fI\%SIERRA_PLUGIN_PATH\fP\&.
|
50
50
|
.UNINDENT
|
51
51
|
.sp
|
52
52
|
If your setup is different, adjust paths in the commands below as needed.
|
@@ -102,7 +102,7 @@ Within each experiment, 3 copies of each simulation will be run (each with
|
|
102
102
|
different random seeds), for a total of 21 ARGoS simulations. On a reasonable
|
103
103
|
machine it should take about 10 minutes or so to run. After it finishes, you can
|
104
104
|
go to \fB$HOME/exp\fP and find all the simulation outputs. For an explanation of
|
105
|
-
SIERRA\(aqs runtime directory tree, see
|
105
|
+
SIERRA\(aqs runtime directory tree, see \fI\%SIERRA Runtime Directory Tree\fP\&.
|
106
106
|
.SS HPC Example
|
107
107
|
.sp
|
108
108
|
In order to run on a SLURM managed cluster, you need to invoke SIERRA within a
|
@@ -128,7 +128,7 @@ export ARGOS_INSTALL_PREFIX=/$HOME/.local
|
|
128
128
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ARGOS_INSTALL_PREFIX/lib/argos3
|
129
129
|
export ARGOS_PLUGIN_PATH=$ARGOS_INSTALL_PREFIX/lib/argos3:$HOME/git/mycode
|
130
130
|
export SIERRA_PLUGIN_PATH=$HOME/git/sierra\-projects
|
131
|
-
export PARALLEL
|
131
|
+
export PARALLEL=\(dq\-\-env ARGOS_PLUGIN_PATH \-\-env LD_LIBRARY_PATH\(dq
|
132
132
|
|
133
133
|
sierra\-cli \e
|
134
134
|
\-\-sierra\-root=$HOME/exp \e
|
@@ -157,7 +157,7 @@ previous example.
|
|
157
157
|
\fBIMPORTANT:\fP
|
158
158
|
.INDENT 0.0
|
159
159
|
.INDENT 3.5
|
160
|
-
You need to export \
|
160
|
+
You need to export \fI\%PARALLEL\fP containing all necessary
|
161
161
|
environment variables your code uses in addition to those needed
|
162
162
|
by SIERRA before invoking it, otherwise some of them might not be
|
163
163
|
transferred to the SLURM job and/or the new shell GNU parallel
|
@@ -167,7 +167,7 @@ starts each simulation in.
|
|
167
167
|
.sp
|
168
168
|
Note that if you compile ARGoS for different architectures within the same HPC
|
169
169
|
environment, you can use a combination of conditionally setting
|
170
|
-
\
|
170
|
+
\fI\%ARGOS_PLUGIN_PATH\fP with setting \fI\%SIERRA_ARCH\fP to some string to
|
171
171
|
tell SIERRA to use a given version of ARGoS, depending on where you request
|
172
172
|
resources from. For example, you could set \fBSIERRA_ARCH=x86\fP or
|
173
173
|
\fBSIERRA_ARCH=arm\fP to link to an \fBargos3\-x86\fP or \fBargos3\-arm\fP executable
|
@@ -202,7 +202,7 @@ sierra\-cli \e
|
|
202
202
|
The runs 3 simulations in parallel with 1 physics engine each, and runs ARGoS
|
203
203
|
under \fBXvfb\fP to get it to render headless images. During stage 4, these
|
204
204
|
images are stitched together using \fBffmpeg\fP to create videos (see
|
205
|
-
|
205
|
+
\fI\%SIERRA Runtime Directory Tree\fP for where the videos will appear). No
|
206
206
|
graphs are generated during stage 4 in this example.
|
207
207
|
.sp
|
208
208
|
You may also be interested in the \fB\-\-camera\-config\fP option, which allows you
|
@@ -358,7 +358,7 @@ different random seeds), for a total of 16 Gazebo simulations. Each experimental
|
|
358
358
|
run will be will be 10 seconds of simulated time. On a reasonable machine it
|
359
359
|
should take about 10 minutes or so to run. After it finishes, you can go to
|
360
360
|
\fB$HOME/exp\fP and find all the simulation outputs. For an explanation of
|
361
|
-
SIERRA\(aqs runtime directory tree, see
|
361
|
+
SIERRA\(aqs runtime directory tree, see \fI\%SIERRA Runtime Directory Tree\fP\&.
|
362
362
|
.SS HPC Example
|
363
363
|
.sp
|
364
364
|
In order to run on a SLURM managed cluster, you need to invoke SIERRA within a
|
@@ -407,7 +407,7 @@ simulation will be 1,000 seconds long and use same scenario as before.
|
|
407
407
|
\fBIMPORTANT:\fP
|
408
408
|
.INDENT 0.0
|
409
409
|
.INDENT 3.5
|
410
|
-
You need to export \
|
410
|
+
You need to export \fI\%PARALLEL\fP containing all necessary
|
411
411
|
environment variables your code uses in addition to those needed
|
412
412
|
by SIERRA before invoking it, otherwise some of them might not be
|
413
413
|
transferred to the SLURM job and/or the new shell GNU parallel
|
@@ -474,12 +474,12 @@ size. SIERRA will pause for 60 seconds between runs so you can reset the robot\(
|
|
474
474
|
positions and environment before continuing with the next
|
475
475
|
run. \fBturtlebots3.txt\fP contains the IP addresses of all 6 robots in the swarm
|
476
476
|
(SIERRA may use different combinations of these if the swarm size is < 6). You
|
477
|
-
could also omit \fB\-\-nodefile\fP and set \
|
477
|
+
could also omit \fB\-\-nodefile\fP and set \fI\%SIERRA_NODEFILE\fP instead.
|
478
478
|
.sp
|
479
479
|
For these experiments, no master node is needed, so it is disabled. After all
|
480
480
|
runs have completed and SIERRA finishes stages 3 and 4, you can go to
|
481
481
|
\fB$HOME/exp\fP and find all the simulation outputs. For an explanation of
|
482
|
-
SIERRA\(aqs runtime directory tree, see
|
482
|
+
SIERRA\(aqs runtime directory tree, see \fI\%SIERRA Runtime Directory Tree\fP\&.
|
483
483
|
.SH AUTHOR
|
484
484
|
John Harwell
|
485
485
|
.SH COPYRIGHT
|
{sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-exec-envs.7
RENAMED
@@ -1,8 +1,5 @@
|
|
1
1
|
.\" Man page generated from reStructuredText.
|
2
2
|
.
|
3
|
-
.TH "SIERRA-EXEC-ENVS" "7" "Jan 25, 2023" "1.3.1" "SIERRA"
|
4
|
-
.SH NAME
|
5
|
-
sierra-exec-envs \- The execution environments SIERRA supports.
|
6
3
|
.
|
7
4
|
.nr rst2man-indent-level 0
|
8
5
|
.
|
@@ -30,6 +27,9 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
30
27
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
31
28
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
32
29
|
..
|
30
|
+
.TH "SIERRA-EXEC-ENVS" "7" "Apr 01, 2024" "1.3.6" "SIERRA"
|
31
|
+
.SH NAME
|
32
|
+
sierra-exec-envs \- The execution environments SIERRA supports.
|
33
33
|
.SH HPC EXECUTION ENVIRONMENT PLUGINS
|
34
34
|
.sp
|
35
35
|
SIERRA is capable of adapting its runtime infrastructure to a number of
|
@@ -41,9 +41,9 @@ These plugins tested with the following platforms (they may work on other
|
|
41
41
|
platforms out of the box too):
|
42
42
|
.INDENT 0.0
|
43
43
|
.IP \(bu 2
|
44
|
-
|
44
|
+
\fI\%ARGoS Platform\fP
|
45
45
|
.IP \(bu 2
|
46
|
-
|
46
|
+
\fI\%ROS1+Gazebo Platform\fP
|
47
47
|
.UNINDENT
|
48
48
|
.sp
|
49
49
|
SIERRA makes the following assumptions about the HPC environments corresponding
|
@@ -106,7 +106,7 @@ No additional configuration/environment variables are needed with this HPC
|
|
106
106
|
environment for use with SIERRA.
|
107
107
|
.SS ARGoS Considerations
|
108
108
|
.sp
|
109
|
-
The # threads per experimental run is defined with
|
109
|
+
The # threads per \fI\%experimental run\fP is defined with
|
110
110
|
\fB\-\-physics\-n\-engines\fP, and that option is required for this HPC environment
|
111
111
|
during stage 1.
|
112
112
|
.SS PBS HPC Plugin
|
@@ -177,14 +177,14 @@ Use
|
|
177
177
|
T}
|
178
178
|
_
|
179
179
|
T{
|
180
|
-
\
|
180
|
+
\fI\%SIERRA_ARCH\fP
|
181
181
|
T} T{
|
182
182
|
Used to enable architecture/OS specific builds of simulators for maximum
|
183
183
|
speed at runtime on clusters.
|
184
184
|
T}
|
185
185
|
_
|
186
186
|
T{
|
187
|
-
\
|
187
|
+
\fI\%PARALLEL\fP
|
188
188
|
T} T{
|
189
189
|
Used to transfer environment variables into the GNU parallel
|
190
190
|
environment. This must be always done because PBS doesn\(aqt transfer
|
@@ -267,14 +267,14 @@ Use
|
|
267
267
|
T}
|
268
268
|
_
|
269
269
|
T{
|
270
|
-
\
|
270
|
+
\fI\%SIERRA_ARCH\fP
|
271
271
|
T} T{
|
272
272
|
Used to enable architecture/OS specific builds of simulators for maximum
|
273
273
|
speed at runtime on clusters.
|
274
274
|
T}
|
275
275
|
_
|
276
276
|
T{
|
277
|
-
\
|
277
|
+
\fI\%PARALLEL\fP
|
278
278
|
T} T{
|
279
279
|
Used to transfer environment variables into the GNU parallel
|
280
280
|
environment. This must be done even though SLURM can transfer variables
|
@@ -311,14 +311,14 @@ Notes
|
|
311
311
|
T}
|
312
312
|
_
|
313
313
|
T{
|
314
|
-
\
|
314
|
+
\fI\%SIERRA_NODEFILE\fP
|
315
315
|
T} T{
|
316
316
|
Contains hostnames/IP address of all compute nodes SIERRA can use. Same
|
317
317
|
format as GNU parallel \fB\-\-sshloginfile\fP\&.
|
318
318
|
T} T{
|
319
319
|
\fB\-\-nodefile\fP
|
320
320
|
T} T{
|
321
|
-
\
|
321
|
+
\fI\%SIERRA_NODEFILE\fP must be defined or \fB\-\-nodefile\fP passed. If
|
322
322
|
neither is true, SIERRA will throw an error.
|
323
323
|
T}
|
324
324
|
_
|
{sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-glossary.7
RENAMED
@@ -1,8 +1,5 @@
|
|
1
1
|
.\" Man page generated from reStructuredText.
|
2
2
|
.
|
3
|
-
.TH "SIERRA-GLOSSARY" "7" "Jan 25, 2023" "1.3.1" "SIERRA"
|
4
|
-
.SH NAME
|
5
|
-
sierra-glossary \- Glossary of SIERRA terminology.
|
6
3
|
.
|
7
4
|
.nr rst2man-indent-level 0
|
8
5
|
.
|
@@ -30,6 +27,9 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
30
27
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
31
28
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
32
29
|
..
|
30
|
+
.TH "SIERRA-GLOSSARY" "7" "Apr 01, 2024" "1.3.6" "SIERRA"
|
31
|
+
.SH NAME
|
32
|
+
sierra-glossary \- Glossary of SIERRA terminology.
|
33
33
|
.SH GLOSSARY
|
34
34
|
.sp
|
35
35
|
SIERRA uses a number of common research\-related terms, perhaps in different ways
|
@@ -45,7 +45,7 @@ supports as a \fI\%Platform\fP\&. The ARGoS website is at
|
|
45
45
|
.B Gazebo
|
46
46
|
A state\-of\-the\-art robotics simulator with many features including .urdf
|
47
47
|
robot models, realistic 3D rendering, and more. The Gazebo website is at
|
48
|
-
\fI\%
|
48
|
+
\fI\%https://gazebosim.org\fP\&.
|
49
49
|
.TP
|
50
50
|
.B ROS1
|
51
51
|
You know it. You either love it or hate it, but you can\(aqt escape it. The
|
@@ -71,7 +71,7 @@ argument passed on the cmdline to sets of XML changes as part of
|
|
71
71
|
.INDENT 7.0
|
72
72
|
.INDENT 3.5
|
73
73
|
The parent directories of all SIERRA project plugins must
|
74
|
-
be on \
|
74
|
+
be on \fI\%SIERRA_PLUGIN_PATH\fP, or SIERRA won\(aqt be able
|
75
75
|
to find them.
|
76
76
|
.UNINDENT
|
77
77
|
.UNINDENT
|
@@ -86,7 +86,7 @@ each as needed.
|
|
86
86
|
.UNINDENT
|
87
87
|
.UNINDENT
|
88
88
|
.sp
|
89
|
-
Specified via \fB\-\-project\fP on the cmdline. See
|
89
|
+
Specified via \fB\-\-project\fP on the cmdline. See \fI\%Command Line Interface\fP for
|
90
90
|
documentation.
|
91
91
|
.TP
|
92
92
|
.B Tick
|
@@ -97,9 +97,9 @@ run.
|
|
97
97
|
.B Batch Criteria
|
98
98
|
A \fIvariable\fP you wish to use with SIERRA to measure its effect on system
|
99
99
|
behavior. A batch criteria can has a single axis (such as
|
100
|
-
|
100
|
+
\fI\%Population Size\fP), in which case it is
|
101
101
|
called \fIunivariate\fP, or have two axes (such as
|
102
|
-
|
102
|
+
\fI\%Population Size\fP and another batch
|
103
103
|
criteria such as one defining sensor and actuator noise to apply to the
|
104
104
|
robots), in which case it is called \fIbivariate\fP\&.
|
105
105
|
.sp
|
@@ -146,7 +146,7 @@ A set of \fI\%Experiments\fP each defined by XML changes
|
|
146
146
|
generated by the selected \fI\%Batch Criteria\fP to a template \fB\&.argos\fP
|
147
147
|
file passed to SIERRA during stage 1 via \fB\-\-template\-input\-file\fP\&.
|
148
148
|
.sp
|
149
|
-
For example, for the
|
149
|
+
For example, for the \fI\%Population Size\fP
|
150
150
|
batch criteria, each experiment is defined by a single XML change to the
|
151
151
|
provided \fB\&.argos\fP file: the number of robots in the swarm. Depending on
|
152
152
|
the specifics you set for the \fIrange\fP of sizes you are interested in,
|
@@ -212,7 +212,7 @@ not know the difference.
|
|
212
212
|
.TP
|
213
213
|
.B Inter\-Batch .csv
|
214
214
|
A CSV file created by SIERRA during stage 5. An inter\-batch CSV
|
215
|
-
is created by
|
215
|
+
is created by \(dqcollating\(dq columns from a \fI\%Summary .csv\fP present in
|
216
216
|
multiple \fI\%Batch Experiments\fP into a single
|
217
217
|
CSV. Used during stage 5.
|
218
218
|
.TP
|
@@ -245,7 +245,7 @@ controllers easily when configuring your project.
|
|
245
245
|
.B Controller Category
|
246
246
|
A semantic label attached to a set of controllers which are similar in
|
247
247
|
some way. For example, if you have two controllers which use the same type
|
248
|
-
of memory (say it\(aqs a
|
248
|
+
of memory (say it\(aqs a \(dqlast N objects seen\(dq memory), you could create a
|
249
249
|
\fBLastN\fP category, and then define controllers within it, e.g.,
|
250
250
|
\fBLastN.Ring\fP and \fBLastN.DecayRing\fP for two controllers which have a
|
251
251
|
ringbuffer of remembered objects and a decaying ringbuffer of remembered
|
@@ -261,7 +261,7 @@ plotted against empirical results for comparison.
|
|
261
261
|
.TP
|
262
262
|
.B Plugin
|
263
263
|
A python package/module living in a directory on
|
264
|
-
\
|
264
|
+
\fI\%SIERRA_PLUGIN_PATH\fP which contains functionality to extend SIERRA
|
265
265
|
without modifying its core (i.e., customization of different parts of the
|
266
266
|
pipeline). Plugins come in several flavors, all of which are handled
|
267
267
|
equivalently by SIERRA:
|
{sierra_research-1.3.1.data → sierra_research-1.3.6.data}/data/share/man/man7/sierra-platforms.7
RENAMED
@@ -1,8 +1,5 @@
|
|
1
1
|
.\" Man page generated from reStructuredText.
|
2
2
|
.
|
3
|
-
.TH "SIERRA-PLATFORMS" "7" "Jan 25, 2023" "1.3.1" "SIERRA"
|
4
|
-
.SH NAME
|
5
|
-
sierra-platforms \- The platforms SIERRA supports, and platform-specific Batch Criteria.
|
6
3
|
.
|
7
4
|
.nr rst2man-indent-level 0
|
8
5
|
.
|
@@ -30,18 +27,21 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
30
27
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
31
28
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
32
29
|
..
|
30
|
+
.TH "SIERRA-PLATFORMS" "7" "Apr 01, 2024" "1.3.6" "SIERRA"
|
31
|
+
.SH NAME
|
32
|
+
sierra-platforms \- The platforms SIERRA supports, and platform-specific Batch Criteria.
|
33
33
|
.SH ARGOS PLATFORM
|
34
34
|
.sp
|
35
35
|
This platform can be selected via \fB\-\-platform=platform.argos\fP\&.
|
36
36
|
.sp
|
37
37
|
This is the default platform on which SIERRA will run experiments, and uses the
|
38
|
-
ARGoS simulator. It cannot be used to run experiments on real robots.
|
38
|
+
\fI\%ARGoS\fP simulator. It cannot be used to run experiments on real robots.
|
39
39
|
.SS Batch Criteria
|
40
40
|
.sp
|
41
|
-
See Batch Criteria for a thorough explanation of batch criteria, but the
|
41
|
+
See \fI\%Batch Criteria\fP for a thorough explanation of batch criteria, but the
|
42
42
|
short version is that they are the core of SIERRA\-\-how to get it to DO stuff for
|
43
43
|
you. The following batch criteria are defined which can be used with any
|
44
|
-
Project\&.
|
44
|
+
\fI\%Project\fP\&.
|
45
45
|
.INDENT 0.0
|
46
46
|
.IP \(bu 2
|
47
47
|
\fI\%Population Size\fP
|
@@ -162,38 +162,38 @@ experiment will be linearly spaced between the min and max densities.
|
|
162
162
|
.UNINDENT
|
163
163
|
.SS Environment Variables
|
164
164
|
.sp
|
165
|
-
This platform respects \
|
165
|
+
This platform respects \fI\%SIERRA_ARCH\fP\&.
|
166
166
|
.SS Random Seeding For Reproducibility
|
167
167
|
.sp
|
168
168
|
ARGoS provides its own random seed mechanism under \fB<experiment>\fP which SIERRA
|
169
|
-
uses to seed each experiment. Project code should use this mechanism or
|
169
|
+
uses to seed each experiment. \fI\%Project\fP code should use this mechanism or
|
170
170
|
a similar random seed generator manager seeded by the same value so that
|
171
171
|
experiments can be reproduced exactly. By default SIERRA does not overwrite its
|
172
172
|
generated random seeds for each experiment once generated; you can override with
|
173
173
|
\fB\-\-no\-preserve\-seeds\fP\&. See ln\-sierra\-tutorials\-project\-template\-input\-file and
|
174
|
-
|
174
|
+
\fI\%Experimental Definition Requirements\fP for details on the format of the provided seed.
|
175
175
|
.SH ROS1+GAZEBO PLATFORM
|
176
176
|
.sp
|
177
177
|
This platform can be selected via \fB\-\-platform=platform.ros1gazebo\fP\&.
|
178
178
|
.sp
|
179
179
|
This is the platform on which SIERRA will run experiments using the
|
180
|
-
Gazebo simulator and ROS1\&. It cannot be used to run
|
180
|
+
\fI\%Gazebo\fP simulator and \fI\%ROS1\fP\&. It cannot be used to run
|
181
181
|
experiments on real robots. To use this platform, you must setup the
|
182
|
-
SIERRA ROSBridge\&.
|
182
|
+
\fI\%SIERRA ROSBridge\fP\&.
|
183
183
|
.sp
|
184
184
|
Worlds within ROS1+Gazebo are infinite from the perspective of physics engines,
|
185
185
|
even though a finite area shows up in rendering. So, to place robots randomly in
|
186
|
-
the arena at the start of simulation across Experimental Runs (if you want to do that)
|
186
|
+
the arena at the start of simulation across \fI\%Experimental Runs\fP (if you want to do that) \(dqdimensions\(dq for a given world must
|
187
187
|
be specified as part of the \fB\-\-scenario\fP argument. If you don\(aqt specify
|
188
188
|
dimensions as part of the \fB\-\-scenario\fP argument, then you need to supply a
|
189
189
|
list of valid robot positions via \fB\-\-robot\-positions\fP which SIERRA will choose
|
190
190
|
from randomly for each robot.
|
191
191
|
.SS Batch Criteria
|
192
192
|
.sp
|
193
|
-
See Batch Criteria for a thorough explanation of batch criteria, but the
|
193
|
+
See \fI\%Batch Criteria\fP for a thorough explanation of batch criteria, but the
|
194
194
|
short version is that they are the core of SIERRA\-\-how to get it to DO stuff for
|
195
195
|
you. The following batch criteria are defined which can be used with any
|
196
|
-
Project\&.
|
196
|
+
\fI\%Project\fP\&.
|
197
197
|
.INDENT 0.0
|
198
198
|
.IP \(bu 2
|
199
199
|
\fI\%System Population Size\fP
|
@@ -236,27 +236,27 @@ linear increment. Defaults to 10 if omitted.
|
|
236
236
|
.UNINDENT
|
237
237
|
.SS Environment Variables
|
238
238
|
.sp
|
239
|
-
This platform ignores \
|
239
|
+
This platform ignores \fI\%SIERRA_ARCH\fP\&.
|
240
240
|
.SS Random Seeding For Reproducibility
|
241
241
|
.sp
|
242
242
|
ROS1+Gazebo do not provide a random number generator manager, but SIERRA
|
243
|
-
provides random seeds to each Experimental Run which Project
|
243
|
+
provides random seeds to each \fI\%Experimental Run\fP which \fI\%Project\fP
|
244
244
|
code should use to manage random number generation, if needed, to maximize
|
245
245
|
reproducability. See ln\-sierra\-tutorials\-project\-template\-input\-file and
|
246
|
-
|
246
|
+
\fI\%Experimental Definition Requirements\fP for details on the format of the provided seed. By default
|
247
247
|
SIERRA does not overwrite its generated random seeds for each experiment once
|
248
248
|
generated; you can override with \fB\-\-no\-preserve\-seeds\fP\&.
|
249
249
|
.SH ROS1+ROBOT PLATFORM
|
250
250
|
.sp
|
251
251
|
This platform can be selected via \fB\-\-platform=platform.ros1robot\fP\&.
|
252
252
|
.sp
|
253
|
-
This is the platform on which SIERRA will run experiments using ROS1 on
|
253
|
+
This is the platform on which SIERRA will run experiments using \fI\%ROS1\fP on
|
254
254
|
a real robot of your choice. To use this platform, you must setup the
|
255
|
-
SIERRA ROSBridge\&. This is a generic
|
256
|
-
platform meant to work with most real robots which ROS1 supports, and as
|
255
|
+
\fI\%SIERRA ROSBridge\fP\&. This is a generic
|
256
|
+
platform meant to work with most real robots which \fI\%ROS1\fP supports, and as
|
257
257
|
a starting point to derive more specific platform configuration for a given
|
258
258
|
robot (if needed). For all execution environments using this platform (see
|
259
|
-
|
259
|
+
\fI\%Real Robot Execution Environment Plugins\fP for examples), SIERRA will run experiments
|
260
260
|
spread across multiple robots using GNU parallel.
|
261
261
|
.sp
|
262
262
|
SIERRA designates the host machine as the ROS master, and allows you to
|
@@ -266,10 +266,10 @@ helpful in some situations (e.g., simple robots which can\(aqt manage network
|
|
266
266
|
mounted filesystems).
|
267
267
|
.SS Batch Criteria
|
268
268
|
.sp
|
269
|
-
See Batch Criteria for a thorough explanation of batch criteria, but the
|
269
|
+
See \fI\%Batch Criteria\fP for a thorough explanation of batch criteria, but the
|
270
270
|
short version is that they are the core of SIERRA\-\-how to get it to DO stuff for
|
271
271
|
you. The following batch criteria are defined which can be used with any
|
272
|
-
Project\&.
|
272
|
+
\fI\%Project\fP\&.
|
273
273
|
.INDENT 0.0
|
274
274
|
.IP \(bu 2
|
275
275
|
\fI\%System Population Size\fP
|
@@ -311,14 +311,14 @@ linear increment. Defaults to 10 if omitted.
|
|
311
311
|
.UNINDENT
|
312
312
|
.SS Environment Variables
|
313
313
|
.sp
|
314
|
-
This platform ignores \
|
314
|
+
This platform ignores \fI\%SIERRA_ARCH\fP\&.
|
315
315
|
.SS Random Seeding For Reproducibility
|
316
316
|
.sp
|
317
317
|
ROS do not provide a random number generator manager, but SIERRA provides random
|
318
|
-
seeds to each Experimental Run which Project code should use to
|
318
|
+
seeds to each \fI\%Experimental Run\fP which \fI\%Project\fP code should use to
|
319
319
|
manage random number generation, if needed, to maximize reproducability. See
|
320
320
|
ln\-sierra\-tutorials\-project\-template\-input\-file and
|
321
|
-
|
321
|
+
\fI\%Experimental Definition Requirements\fP for details on the format of the provided seed. By
|
322
322
|
default SIERRA does not overwrite its generated random seeds for each experiment
|
323
323
|
once generated; you can override with \fB\-\-no\-preserve\-seeds\fP\&.
|
324
324
|
.SS Real Robot Considerations
|
@@ -327,7 +327,7 @@ SIERRA makes the following assumptions about the robots it is allocated each
|
|
327
327
|
invocation:
|
328
328
|
.INDENT 0.0
|
329
329
|
.IP \(bu 2
|
330
|
-
No robots will die/run out of battery during an Experimental Run\&.
|
330
|
+
No robots will die/run out of battery during an \fI\%Experimental Run\fP\&.
|
331
331
|
.IP \(bu 2
|
332
332
|
Password\-less ssh is setup to each robot SIERRA is handed to use (can be as a
|
333
333
|
different user than the one which is invoking SIERRA on the host machine).
|
@@ -335,21 +335,21 @@ different user than the one which is invoking SIERRA on the host machine).
|
|
335
335
|
The robots have static IP addresses, or are always allocated an IP from a
|
336
336
|
known set so you can pass the set of IPs to SIERRA to use. This set of IP
|
337
337
|
address/hostnames can be explicitly passed to SIERRA via cmdline (see
|
338
|
-
|
339
|
-
\
|
338
|
+
\fI\%Command Line Interface\fP) or implicitly passed via
|
339
|
+
\fI\%SIERRA_NODEFILE\fP\&.
|
340
340
|
.IP \(bu 2
|
341
341
|
The ROS environment is setup either in the .bashrc for the robot login user,
|
342
342
|
or the necessary bits are in a script which SIERRA sources on login to each
|
343
343
|
robot (this is a configuration parameter\-\-see
|
344
344
|
ln\-sierra\-tutorials\-project\-main\-config).
|
345
345
|
.IP \(bu 2
|
346
|
-
ROS does not provide a way to say
|
346
|
+
ROS does not provide a way to say \(dqRun this experiment for X seconds\(dq, so
|
347
347
|
SIERRA inserts its own timekeeper node into each robot which will exit after X
|
348
348
|
seconds and take the roslaunch process with it on each robot and/or the master
|
349
349
|
node.
|
350
350
|
.UNINDENT
|
351
351
|
.sp
|
352
|
-
See also
|
352
|
+
See also \fI\%ROS1+Robot Platform\fP\&.
|
353
353
|
.SH AUTHOR
|
354
354
|
John Harwell
|
355
355
|
.SH COPYRIGHT
|