jackliuto / MultiViewRL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Object Navigation in a 3D Rendered Home Environment with Multi-View Reinforcement Learning

CISC 856 Final Project Group 27

Example of a trained agent

ego_best_1 alo_best_1

Intsructions

To train Egocentric Agent:

python src/main.py --mode train_ego

To train Allocentric Agent:

python src/main.py --mode train_alo

To train Double Agent:

python src/main.py --mode train_double

To test a policy:

python src/main.py --mode test

To output saliency maps:

python visuals/saliency_map.py

The repository contains the following:

  • src contains the necessary python files used to train the algorithm. Follow the instructions above to run.
    • agent.py contains DQN agent class
    • network.py contrains all Neuarl Network class
    • main.py contains a commandline program for our code
    • solve.py contrains the traing and enviorment code for AI2-THOR
  • model_samples contains model checkpoints for the easy and hard conditions each trained on egocentric only, allocentric only and combined perspective.
  • visuals contains the necessary files to generate saliency maps using the model checkpoints

Requirements

  • matplotlib>=3.2.2
  • numpy>=1.18.5
  • opencv-python>=4.1.2
  • Pillow
  • PyYAML>=5.3.1
  • scipy>=1.4.1
  • torch>=1.7.0
  • torchvision>=0.8.1
  • tqdm>=4.41.0
  • ai2thor
  • networkx
  • pathlib
  • moviepy

About


Languages

Language:Jupyter Notebook 88.3%Language:Python 11.7%