system. In this problem, one is tasked with bouncing a ball using a paddle in three dimensional space at a specific location. This seemingly simple problem is actually quite difficult to solve well. Previously, there have been analytic controllers developed for simple models of ball dynamics [@rizzi1994further; @buhler1990stable]. Changes to the contact model or other dynamics requires further analysis. This is also a difficult problem for Reinforcement Learning alone to solve. To have any sort of positive reward, the event where the paddle hits the ball has to occur several times. The probability of such an event occurring with an initial random policy is low. In addition, it can be hard to specify a good reward function to describe the behaviour of bouncing a ball and the policy will have to be retrained for different behaviours. It can be much simpler writing out a loss function with constraints.

The state space of the system includes the 3D position and velocity of both the ball and the paddle. The paddle also has angular position and velocity for roll and pitch. Thus, this state space has 16 dimensions. The actions are the linear forces on the paddle in 3 dimensions as well 