Numerical Methods For Solving Optimal Control Problems