This paper presents various approaches used by researchers for handling the uncertainties involved in renewable energy sources, load demands, etc. It gives an idea about stochastic programming (SP) and discusses the formulations given by different researchers for objective functions such as cost, loss, generation expansion, and voltage/V control with various conventional and advanced methods. Besides, it gives a brief idea about SP and its applications and discusses different variants of SP such as recourse model, chance constrained programming, sample average approximation, and risk aversion. Moreover, it includes the application of these variants in various power systems. Furthermore, it also includes the general mathematical form of expression for these variants and discusses the mathematical description of the problem and modeling of the system. This review of different optimization techniques will be helpful for smart grid development including renewable energy resources (RERs).