Is it training at all? Or is agent performance not improving over time? Q learning can be pretty unstable. I would recommend logging the sum of rewards received by the agent at the end of each episode and the model loss to help in the debugging process. The sum of rewards will show you if the agent is improving over time and the model loss will give you a ...
When it comes to GPU usage,
shows the usage at the time it was executed. You should try running
watch -n0.01 nvidia-smi
to see the usage of GPU every 0.01 second.
It should output some small usage for current model, like 5%. You could try to increase you model, to e.g.
self.d1 = Dense(1024, input_shape=(input_size,), activation="relu")