In this thesis I present an algorithm and its implementation for 2D and 3D simplicial mesh optimization. An energy function for each simplex of a mesh in R<super>n</super> , where 2 &le n &ge 3, is defined as the volume of the ideal hyperbolic simplex in R<super>n+1</super> constructed from the said simplex. It has been proven otherwise and mentioned here as well that a regular simplex has maximum energy. Thus maximizing this energy by reshaping each individual simplex of the mesh will improve the overall quality of the mesh. The algorithm maximizes this energy to achieve an optimal mesh by displacing vertices and updating connectivity of the mesh conforming to the delaunay property by following a gradient descent method. The details of the energy function, proof of correctness and implementation details are presented herewith.