https://github.com/aleksandarhaber/deep-q-learning-network-from-scratch-in-python-tensorflow-and-openai-gym