In this paper, an ellipse based energy calculation algorithm is proposed for Self Adaptive Monte Carlo Localization method, abbreviated as SA-MCL. SA-MCL is a localization method based on particle filters and solves position tracking, global localization and kidnapping problems in localization. The SA-MCL is faster since it uses map energy grids concept where the particles are distributed similar energy regions on the map. However, the traditional SA-MCL is only suitable for the robots with range sensors which are (quasi-)uniformly placed on the robot. With the ellipse based energy calculation algorithm, this constraint is eliminated, and improved SA-MCL proposed in this study can be utilized for localization problem of all mobile robots equipped with range sensors. The algorithm proposed is validated in simulation and the efficiency of it is demonstrated on ROS.