GithubHelp home page GithubHelp logo

qiuhualiu / scott-eu Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ericssonresearch/scott-eu

0.0 0.0 0.0 136.66 MB

SCOTT – Secure Connected Trustable Things

Home Page: https://scottproject.eu/uc04-logistics-management-using-collaborative-robots-and-devops-methodologies/

License: Apache License 2.0

Python 39.72% Prolog 0.75% Lua 5.83% Shell 0.22% Makefile 0.73% HTML 1.09% Java 24.78% JavaScript 3.04% CSS 0.16% Dockerfile 0.30% CMake 1.56% C++ 4.72% C 12.59% Objective-C 0.08% Kotlin 2.72% Scala 0.06% Groovy 0.13% C# 1.22% Cuda 0.30% MATLAB 0.02%

scott-eu's Introduction

SCOTT sandbox

This repository contains all projects that are part of the SCOTT Warehouse Sandbox as described in the SCOTT WP10. SCOTT (www.scottproject.eu) has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 737422.

The repository consists of 9 projects that use Docker images individually and are orchestrated using Docker Compose (as of now). Below is a brief summary of each project.

Warehouse Controller

Warehouse Controller (/warehousecontroller) is the entry point to the sandbox (currently).

Until the multi-objective optimisation (MOO) service is present, its implementation is stubbed via the mission.json file.

Until the Ontology server is up and serving the warehouse state, the controller fetches it from the kb.json file.

Until the Planner Reasoner is able to serve the PDDL problem file, it is generated in the generatePddlProblemFile method of the mission2plan.py file. Until the Planner Reasoner is able to serve the PDDL domain file, it is fetched from the whdomain-2.pddl file.

When the problem & domain PDDL files are ready, they are uploaded to the Metric-FF Docker service and plan generation is triggered.

👉 Start by running the Docker Compose as described in the Deployment section and running a cURL test script to trigger plan generation. Also see README.

Simulated Environment

This contains simulations required by the sandbox. It currently consists of the automated warehouse simulated in VREP with all its elements and robots. Until the multi-objective optimisation (MOO) service is present, its results should be provided by the mission.json file. Until it contains the discret event simulations for modeling the supply chain dynamics, all required information should be provided by the mission.json file.

Access to this scene (both reading and control) is currently implemented by using VREP's remoteAPI in python. This is expected to change once ROS is deployed and used for controlling the robots in the scene.

Deployment

Deployment project contains the Docker Compose configuration that allows you to start all the elements of the sandbox demo:

👉 Start by running docker-compose up -d command inside the /deployment subdirectory and reading its README.

Metric-FF Docker

Metric-FF Docker (/ff-metric-docker) exposes Metric-FF-based planning via a RESTful service running on port 5000.

👉 Start by running the preconfigured docker-compose environment and reading project README.

Ontology server

Ontology server (/ontology-server) exposes named graphs in the Cliopatria installation over HTTP in RDF format via an Nginx server.

👉 Start by following the Getting Started section in the README.

Optic Docker

Optic Docker (/optic-docker) is a project that packages an alternative OPTIC planner via Docker.

NB! This project does not expose OPTIC via REST (yet)!

👉 Start by reading the README.

PDDL Examples

PDDL Examples (/pddl-examples) �s a folder with example PDDL files (domain and problem files), just for learning and testing purposes of the planners.

PDDL Planner - deprecated code that has been merged into Metric-FF Docker (/ff-metric-docker)

PDDL Planner (/planner) exposes PDDL planners via a REST API (so does the Metric-FF Docker, but using dockerised Metric-FF). Theoretically supports both OPTIC and Metric-FF, but only implements support for Metric-FF. Requires local installation of Metric-FF (see ff_path in plannerService.py).

👉 Start by using Metric-FF Docker and consult with Costa and Swarup if you need to touch this project.

Planner Reasoner

Planner Reasoner (/planner_reasoner) uses an internal planning ontology to transform the warehouse state (given in a form that adheres to the warehouse ontology) into the PDDL problem and domain files .

👉 Start by reading about the generate_pddl/3 predicate. A plan is generated using generate_plan/6, generate_plan/8 predicates. The plan is validated using validate_plan/8 predicate.

NB! The project is called a reasoner because it is using Prolog reasoning facilities, it does not do any reasoning over the ontology and does not produce any inferred triples (as of now).

scott-eu's People

Contributors

berezovskyi avatar jramadeu avatar albertohata avatar likelion avatar enyucao avatar konstantino avatar kicacacko avatar kraizer avatar shaolei-wang avatar ricardossouza avatar dependabot[bot] avatar swarupmohalik avatar ahmadterra avatar hassamriaz avatar bluelancer avatar arennuit 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.