The agent is represented by a CNN with the following properties:
- A single-input 84 × 84 slice.
- Three convolutional layers with striding for downsampling.
- ELU activations.
- Two fully connected layers.
- Seven output neurons (one for each neuron).
- Batch normalization and dropout, applied after each layer (even the convolutional) to prevent overfitting. Overfitting in this task is particularly exaggerated because we cannot use any meaningful data augmentation techniques. For example, say that we randomly flipped the image horizontally. In this case, we would have to also alter the label to reverse the steering value. Therefore, we'll rely on regularization as much as we can.
The following code block shows ...