added more descrptions for optimization and initialization