Skip to content

Robotics Engineering A.A. 2020/2021 - Artificial Intelligence for Robotics 2 - Assignment No.2

License

Notifications You must be signed in to change notification settings

programmatoroSeduto/AIRo2-Assignment-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI4Ro2 - Assignment no.2 - Robot Bar - Motion Planning

Francesco Ganci, Zoe Betta, Federico Zecchi, Litong Huang

Here is the repository for the second assignment for the course in Artificial Intelligence for Robotics 2, A.A. 2020/2021.

You can find here:

  • compatibility and dependencies
  • how to compile the project
  • how to run the project

For further informations, please refer to the report attached to this project.

Before building the project - dependencies

Before making and running the project, you need some depts.

Compatibility

The project is compatible with Ubuntu 18. This isn't tested yet with other previous distros. It doesn't work with Ubuntu 20 because of lack of retro-compatibility with some components needed to build and run the project.

Packages

You can install all you need running the following command:

sudo apt-get install build-essential cmake coinor-libclp-dev coinor-libcbc-dev coinor-libcoinutils-dev coinor-libosi-dev coinor-libcgl-dev bison flex

Popf-tif

The project uses the extensible temporal planner popf-tif. Here is the link to the repository:

Popf-tif planner - GitHUb

The planner is already included into this workspace, so you don't need to re-download it.

How to built the project

Here are how to build the project. You don't need to compile everything at turn: scripts are provided to speed-up the build process.

Build the entire project

A script is provided in order to build the whole project. Run this from the main folder of the repository:

./build_all.sh

Usually, the compiling process requires a bit, at least 50 seconds.

Remember: make the script executable before calling it.

Build only the external module

If you don't want to build the entire project, it is possible to build the only part of the external module running this command from the main folder of this repository:

./build_visits_only.sh

Testing the build

You can find the outputs of the compiler in three log files:

  • /popf-tif/logs/log1-first-build.log : the build log for the planner, first step
  • /popf-tif/logs/log2-popf3-clp.log : the second step for building the planner
  • /popf-tif/logs/log3-visits-build.log : the making of the external module VisitSolver.

If everything works well, you should see two folders:

  • /popf-tif/planner/release : the folder containing the compiled popf-tif planner. In particular, you should see a file named popf3-clp: if there is no file with this name, the command 'make' failed for some reason. The best you can do in this case is to check the dependencies.
  • /visits/visits_module/build : the folder contains all the executables for running the external module visitSolver.

How to run the project

There is a handy script for running the project, located in the main folder:

./call.sh

The command runs the planner with the external module, using these files:

  • visits/visits_domain/dom1.pddl : the domain file (Temporal PDDL).
  • visits/visits_domain/prob1.pddl : the problem file (Temporal PDDL).
  • visits/visits_domain/region_poses : the list of all the regions.
  • visits/visits_domain/landmarks.txt : coordinates of the landmarks for the motion planning.
  • visits/visits_domain/waypoints.txt : coordinates of the waypoint associated with one region.

An example of output is located into the folder /docs along with the project.

About

Robotics Engineering A.A. 2020/2021 - Artificial Intelligence for Robotics 2 - Assignment No.2

Topics

Resources

License

Stars

Watchers

Forks