Git Product home page Git Product logo

jaykamat99 / rai Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marctoussaint/rai

0.0 0.0 0.0 14.7 MB

Robotic AI bare code. This is designed as shared submodule of other projects. Try other repos that expose clearer interfaces (rai-python, robotics-course) first.

License: MIT License

Makefile 0.65% Shell 0.03% C++ 78.19% C 18.89% Tcl 0.14% GAP 0.72% Python 0.16% SWIG 0.31% Jupyter Notebook 0.91% G-code 0.01%

rai's Introduction

RAI bare code

This repo contains core sources related to Robotic AI. First users are not recommended to use this repo alone. Please have a look at example projects that use this bare code as a submodule and expose and explain one particular functionality. E.g., KOMO or rai-python.

'bare code' means that this repo contains only sources, a minimal Ubuntu-specific build system, and only minimal tests. For integration in other projects, use it as a submodule and integrate it in your own out-of-source build system.

Brief history

Parts of the code have there origin at around 2004 (Edinburgh). The code grew over the years to a large repo with many projects from all lab members, but a somewhat consistent scope of code shared between projects. This repo exports a selection of the code shared between projects and contains a set of representations and methods for Robotics, ML and AI. As the functionality is diverse I don't even try to explain.

Documentation

I only recently started better documentation of some parts. So far, bits and pieces of documentation are scattered:

Quick Start

git clone [email protected]:MarcToussaint/rai.git
# OR, if you don't have a github account:
git clone https://github.com/MarcToussaint/rai.git
cd rai

# The following two commands depend on the config.mk -- see below
make -j1 printUbuntuAll    # for your information: what the next step will install
make -j1 installUbuntuAll  # calls sudo apt-get install; you can always interrupt

make -j4
make -j4 tests bin
make runTests      # compile and run the essential tests

# when interested in the python bindings:

pip3 install --user pybind11 jupyter nbconvert matplotlib


## Dependencies

To change the dependencies edit the `config.mk` in the root directory:
When a flag is set =0, this forces that this package is not
used. Otherwise (when set =0 is commented), a sub-folder Makefile may
set it equal to 1 and links to this package. After this you definitely
need to recompile some components. In doubt

make cleanAll make -j4


If you pull an update, it might help to create Makefile.dep files
throught the project using

make dependAll make -j4


## Maintenance & Alternative Build Systems

The rai repo has its own old-fashioned GNU make build system, which is convenient, modular and flexible for me, and compiles each source directory into its own shared lib. But I expect serious users to replace this by their own out-of-source build system.

In [rai-maintenence](https://github.com/MarcToussaint/rai-maintenance/tree/master/buildAlternatives) there is a minimalistic CMake example, showing how to compile selected sources into a single shared lib.

In [rai-maintenence](https://github.com/MarcToussaint/rai-maintenance/tree/master/docker) there are also examples for testing in docker (Ubuntu 18.04 and 16.04).

To install globally: (default path is ~/z.LOCAL)

sudo make install INSTALL_PATH=/usr/local

rai's People

Contributors

abaisero avatar boehmrn avatar cinhcet avatar cmapyopc avatar etpr avatar hildensia avatar lanagit avatar marctoussaint avatar marctuscher avatar ricoj avatar robert-lieck avatar sotte avatar stfnsky avatar svetlanalevit avatar v4hn avatar vienngo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.