This is my secret notebook which helps me to track my progress on writing SDC, AI-related master's thesis.
- Build AirSim on Linux, control the car remotely via ssh (31.10.2018)
- build UnrealEngine 4.18 and Microsoft/AirSim
- customize example Unreal project
- set up ssh connection with proxy jump and remote port forwarding
- run bare-bones
airsim
python script to control the car and capture images from camera - full demo video
# Carla 0.9 from jenkins
# Save movie frames as pnf files to <...>/CarlaUE4/Saved/Screenshots/LinuxNoEditor/MovieFrame<...>.png
./CarlaUE4.sh -benchmark -fps=30 -dumpmovie
./CarlaUE4 -benchmark -fps=30 -dumpmovie
About VNC + VGL https://github.com/CDAT/cdat/wiki/Remote-server-setup-for-VNC
Virtual Displays https://towardsdatascience.com/how-to-run-unity-on-amazon-cloud-or-without-monitor-3c10ce022639
Nervana Coach alg descriptions: https://nervanasystems.github.io/coach/algorithms/policy_optimization/ddpg/
Unity ML-agents student-teacher (imitation learning) https://blogs.unity3d.com/2018/05/24/imitation-learning-in-unity-the-workflow/
Overtaking in ROS: http://www.dcsc.tudelft.nl/~jalonsomora/docs/17-andersen-ITSC.pdf
Policy algorithms explained with math: https://lilianweng.github.io/lil-log/2018/04/08/policy-gradient-algorithms.html
DDPG explained: https://yanpanlau.github.io/2016/10/11/Torcs-Keras.html
Amazon AWS Autonomous manouvers with RL + demo videos https://www.youtube.com/watch?v=UqoWv4IWkRc
Visualization: https://tobloef.com/text2mindmap/
Thesis
Simulators and environments
Udacity v1
Udacity v2
Carla sim
Microsoft/AirSim
Deepdrive
F1 2015 (telemetry)
Dirt 3 (telemetry)
Euro Truck Simulator 2
Harbador, Tesla, Unity projects (source code not public)
Methods to try
Behavioral Cloning
A3C Actor critic
Supervised Learning
Conditional Imitation Learning
Pure Reinforcement Learning
Goal(s) to achieve
Lane keeping
Parking
Crossroads
Following planned route with concious decisions (e.g. A*, safe turns)
First steps to make
1. Run different environments and estimate their capabilities (make detailed comparison)
2. Try to run selected envs on remote machines using ssh (cluster) (AirSim/Carla/Udacity)?
3. Collect most valuable links/papers (I have too much of junk resources, still)
4. Write table of contents sketch
5. Write abstract with goal(s) description and current SDC state
Deepdrive 2.1
- pyarrow unable to serialize object of class CaptureLastCollision -> replace with empty dict
api/server/py
elif method == m.REWARD_RANGE:
resp = self.env.reward_range
print('REWA ----------------------------------------')
elif method == m.METADATA:
resp = self.env.metadata
print('META ----------------------------------------')
else:
log.error('Invalid API method')
import json
if resp is not None and resp[0] is not None:
resp[0]['last_collision'] = dict()
print('---------------------------------------')
print('111111111111111111', resp)
print(type(resp))
self.socket.send(pyarrow.serialize(resp).to_buffer())