Optimal sizing of distributed energy resources in smart microgrids: A mixed integer linear programming formulation