Optimal Path Planning of an Unmanned Surface Vehicle in a Real- Time Marine Environment using a Dijkstra Algorithm