Giter VIP home page Giter VIP logo

cs4278-5478-project-materials's Introduction

CS4278-5478-Project-Materials

Installation

We recommend the use of Anaconda to create a virtual environment for the project.

Run the following commands to install the Dukietown simulator:

# create a clean environment with python 3.8
conda create --name duckietown python=3.8 
conda activate duckietown

# git clone our repo
git clone https://github.com/AdaCompNUS/CS4278-5478-Project-Materials.git
cd CS4278-5478-Project-Materials

# install
pip install -e gym-duckietown

To test the installation, you may manually control the robot:

cd gym-duckietown
python manual_control.py --map-name map1

Running the Simulation

We will evaluate your system on 5 maps together with start and goal locations to compute the average accumulated reward. A primary component of your grade is how fast the robot finds the goal, and the reward achieved. In particular, take note below:

  • Oscillating in place may generate a high score in the simulator, but will be penalized in our evaluation. This is a flaw in the Duckietown simulator.

To initialize the gym-duckietown environment, there are 7 arguments:

  • --map-name: the name of the map
  • --seed: random seed of the environment
  • --start-tile: the starting tile. E.g. 1,13
  • --goal-tile: the goal tile. E.g. 3,3
  • --max-steps: the maximum run step. The default value is 1500. Do not change this default value when you generate the control files for submission.
  • --control_path: the control file to execute.
  • --manual: whether to use manual operation. When set to true, the robot can be controlled with arrow keys. Otherwise, the specified control file will be executed.

Generate the control files for submission, similar to what you have done in Lab 1. A sample file for the python environment is available here together with sample control file. They illustrate how to add arguments and output your controls to a file. To try our simple policy,

python run.py --map-name map4_0 --seed 2 --start-tile 1,13 --goal-tile 3,3 --manual False

You should be able to see the robot moving.

System Input

The robot is only allowed to take in the following information as input:

  • the starting tile
  • the goal tile
  • a map image
  • the goal images
  • image observation after each step
  • coarse robot position after each step

Testing

Test cases for the two submissions are in the testcases folder. For an example control file, see map4_0_seed2_start_1,13_goal_3,3.txt.

cs4278-5478-project-materials's People

Contributors

boai01 avatar student-petercai avatar siwei0729 avatar davidyhsu avatar yusufma03 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.