Group Autonomy for Mobile Systems
Clone or download
jredmondson * Updated the namespaces that are generated by gpc.pl
* Updated dynamic_simulation.cpp to use new defaults for sending
Latest commit 33573d6 Nov 11, 2018
Permalink
Failed to load latest commit information.
.github Add CODEOWNERS file Aug 23, 2018
docs Apply modifications to NoGraphviz doxy file Jul 2, 2018
installer * Fixed issue with deb_installer_ia64 and ld loading Aug 15, 2018
port
resources * Removed one of the #expands and the unnecessary variable expansion … Mar 26, 2018
scripts * Updated the namespaces that are generated by gpc.pl Nov 10, 2018
src * Updated the namespaces that are generated by gpc.pl Nov 10, 2018
tests Ros2gams plugins (#62) Oct 24, 2018
.gitignore Ros2gams plugins (#62) Oct 24, 2018
.travis.yml Android Build Fixes (#61) Oct 22, 2018
BUILD Adding bazel build files Aug 21, 2018
Gams_Python.mpc
INSTALL.txt
LICENSE.txt * SIMS: Split Zone Coverage sims into zone_coverage_line, zone_covera… Feb 2, 2016
README-ANDROID.md
README.md Update README.md Aug 15, 2018
VERSION.txt * Updated version to 1.2.3 Aug 15, 2018
WORKSPACE
debug_build.mpb
default.features * Added initial python port for gams::pose Oct 3, 2018
doxygen_help_gen.mpb * Initial commit of version 0.6.0 Mar 24, 2015
gams.mpc
gams.mwc * Added initial python port for gams::pose Oct 3, 2018
ros_lib.mpb first working prototype for rosbridge working in the direction from R… Jun 1, 2018
simulation.mpc Remove ACE dependency Jun 1, 2018
tests.mpc
using_android.mpb Automated boost library for Android and simplified build process Jul 2, 2018
using_boost.mpb Ros2gams shield schema (#43) Sep 19, 2018
using_capnp.mpb Add generated types (#31) Aug 27, 2018
using_clang.mpb * Updating using_clang.mpb to allow for setting the clang suffix with… Jun 13, 2018
using_filesystem.mpb
using_gams.mpb Conversion to Eigen with no known regressions Jun 15, 2018
using_madara.mpb Add nothreadlocal flag Sep 5, 2018
using_nortti.mpb Add nortti MWC feature flag. When enabled, GAMS will avoid using type… Apr 17, 2018
using_nothreadlocal.mpb
using_ros.mpb Ros2gams shield schema (#50) Oct 2, 2018
using_simtime.mpb simtime for ros2gams - still wip Aug 18, 2018
using_types.mpb Add generated types (#31) Aug 27, 2018
using_utm.mpb Initial pass at adding UTM coordinate support (requires GeographicLib) Dec 22, 2015
using_vrep.mpb
vrep_lib.mpb Fix test_coordinates, fix for current VREP Jul 6, 2018

README.md

Build Status Documentation Status Javadocs

About GAMS

The Group Autonomy for Mobile Systems (GAMS) project at Carnegie Mellon University is intended to provide a distributed operating environment for control of one or more unmanned autonomous systems (UAS). The repository is composed of C++, Java, MADARA, and some LUA bindings that enable a single person to control and understand information from a swarm of agents, robots, or UAS.

GAMS is an extension of an earlier project called SMASH.


Installation

See the instructions at https://github.com/jredmondson/gams/wiki/GAMS-Installation for a list of methods for installing GAMS and its prerequisites. For Linux users, we have scripts in $GAMS_ROOT/scripts/linux that are useful for not only building but also getting the latest version of repositories. See the base_build.sh script in the linux directory for more information (pass help to it).

For Windows users, you will need to download the repositories for ACE, MADARA and GAMS along with whatever options you are wanting to compile in. Then, you can use the helpful base_build.bat script in %GAMS_ROOT%\scripts\windows to build GAMS and prerequisites. Pass help from command line to see options.

For the base_build scripts on Linux or Windows, you will need to at LEAST pass in "madara gams" in on a first build. After that, you can pick and choose what you want to update. Tests, vrep, and other options will need to be added by most users. There is a build_c++ script that wraps common options for most users.


Generating GAMS projects

We have a script called gpc.pl in $GAMS_ROOT/scripts/projects that is very useful for generating almost any kind of GAMS or MADARA project. See -h for usage information. The most common GAMS Project Configurator (GPC) usage is the --new-algorithm option and the many options for configuring a VREP simulation. Again, see the help information for specifics.


Compiling GAMS projects

After you've generated a project with the GPC, you should see two scripts in your project directory (action.bat|sh). The .bat file is used by Visual Studio users to compile GAMS projects. The .sh file is used by Linux g++ users to compile GAMS projects. Pass "help" to the script for usage information.


Help

  1. Please see our helpful Wiki which include guides at: https://github.com/jredmondson/gams/wiki

  2. Please see our full c++ doxygen documentation at: http://gams.readthedocs.io

    Java docs are available here: https://www.javadoc.io/doc/ai.gams/gams

  3. Issues can be posted to our Issue system (which hasn't gotten any usage): https://github.com/jredmondson/gams/issues

  4. The SEI at CMU created an Autonomy Tutorial Series that covers usage of GAMS to create multi-agent autonomy.

  5. If you are still having trouble, feel free to contact me directly at: jedmondson@gmail.com