I implemented the DQN model from this paper: https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf.
I used a simple network with two hidden layers and an output layer, instead of the CNN described in the paper due to the relative simplicity of the Cart-Pole environment compared to Atari games.
I implemented the target network described in the more recent paper here: https://storage.googleapis.com/deepmind-data/assets/papers/DeepMindNature14236Paper.pdf.
Note that compared to the implementation without the target network found here https://gym.openai.com/evaluations/eval_EdDdHKTo6OsW4v0MukA, this model takes longer to train but the training is smoother and it is more stable once the problem is solved.