First, clarify what problem needs to be solved and whether there are already proven solutions. The example here searches for the shortest path between two cities. Algorithms like Dijkstra, A*, and ...