A review on the electric vehicle routing problems: Variants and algorithms