as roll and pitch torques. This gives a continuous control input with 5 dimensions. A simulation of this Ball-Paddle system is created in Mujoco [@todorov2012mujoco] using DeepMind Control Suite bindings [@tassa2018deepmind].

The learned model is used with an analytic controller. One difficult part of this problem is modeling the contact or bounce of the ball. A simple semi-elastic model of the ball using a coefficient of restitution does not model the behaviour well enough. Thus, the contact model is a natural candidate to be learned. The model takes the state of the system and controller action at the point of contact as input and predicts how the ball will bounce. This prediction is in the form of an $(x,y)$ coordinate where the ball will next cross a predetermined $(x,y)$ plane. The action space of the model is the velocity and orientation of the paddle.

A simple form of how the analytic controller uses the model is the following policy, $$\begin{aligned}
\label{eq:ball_paddle_opt}
    \pi( {s}) =& \min_{ {a}} \left\| \phi_\theta( {s,a}) -  {p}_{desired} \right\| \\
    & \text{s.t. }  {a}_{min} \leq \left\|  {a} \right\| \leq  {a}_{max} \nonumber \\
    & \quad \quad \phi_\theta(s,a) \not \in P_{obstacle} \nonumber,\end{aligned}$$ where $ {p}_{desired}$ is a desired location 