Oscillation and direction control strategies for a robotic fish