P1) Implement the dynamic programming algorithm to solve the minimum cost path planning problem on a given graph
P2) Implement and compare the performance of Dijkstra and A∗ algorithms to solve for the minimum cost paths on a given graph. We will consider only 2D grid graphs in this assignment. The edge costs are the distances between the two vertices. Each vertex can be connected to at most eight of its neighbors (N,NW,W,SW,S,SE,E,NE).