This tutorial, a complement to tutorial 10, covers the process of running rllab experients on an Amazon EC2 instance. This tutorial assumes rllab has been installed correctly (instructions).
First, follow the rllab cluster setup instructions with region us-west-1. Modify rllab/config_personal.py to reference the most current Flow Docker image (at the time of this writing, evinitsky/flow). [@fangyu is this true?]
Navigate to your flow directory and modify Makefile.template per the instructions in that file. The variable RLLABDIR should be the relative path from your flow directory to rllab and should not have a backslash at the end.
When running AWS experiments, your entire rllab directory is uploaded to AWS so that the files necessary for your experiment are available to the EC2 instance. Thus, commands are included to copy over your flow directory to your rllab root directory (this is the reason for the RLLABDIR variable above).
make prepare from your flow directory.flow directory, because that instance is what will be used to run your experiment. Upon visualization, the same files will need to be used—for example, changes to environment's state-space would break the ability to run a trained policy using a different state space. Check out an old commit of your flow directory and run make prepare to use visualization tools included with rllab.make clean removes the debug directory and also all XML files in rllab root directory to reduce the size of the data to upload to AWS. If you are using already-existing network files (from, say, OpenStreetMap), ensure they do not get deleted by make clean by storing such files elsewhere.
Inside the experiment, change the mode to ec2 (other options are local and local_docker). You should run the experiment in local_docker mode briefly before running the ec2 version to ensure there are no errors, particularly with Docker image compatability
After running python example.py once the mode of example.py is ec2, you should see your experiment running on AWS.