Evolutionary dynamics is a fascinating topic in science which has been investigated by many researchers. In this dissertation we study two topics including mutation-selection balance in structured populations and the evolution of cooperation in voluntary public goods games. At first, we address the evolution of finite and structured populations including two types of species. The evolutionary dynamics of the system is governed by Moran process with constant fitnesses in the presence of mutation. We obtain the stationary distribution in a number of topologies. We also approximate the mixing time, i.e. the time that system needs to reach its stationary distribution. It is observed that the mean frequency of species in the stationary distribution is approximately independent of the population structure, and the mixing time has a power law behavior with respect to the population size whose exponent is closely related to the population structure. The obtained results indicate that more heterogeneity leads to longer mixing times. In our second study, we focus on the evolution of cooperation in the optional public goods games in the case that for infinite population and zero exploration rate, the system converges to a pure isolation state. Volunteering has been proposed as a mechanism capable of supporting cooperation in public good games. In the voluntary public goods game, groups of individuals are chosen to interact and may either participate and invest into the public good, participate but not invest into the public good, or abstain from participation. Their combined investments are then increased by a multiplication factor and distributed among participants. Despite the individual incentive to not contribute, previous work has shown that cooperation may persist in the population when the public goods are at least doubled, while all individuals otherwise opt out of participation. Here, we show that under realistic assumptions of finite population size and occasional strategy exploration, cooperation persists in the population also for lower multiplication factors. Furthermore, we show that cooperation is also possible under the more stringent “others-only” voluntary public-goods game, in which the benefits of individual investments are only distributed to other participants of the game. Specifically, we report the following findings. First, with exploration the stable point moves from homogeneous all-non-participant state to a state with finite mixture of three strategies, Second, demographic stochasticity enables cooperation outbreak, Third, for lower population size the cooperative outbreaks happens in a wider range of exploration. Fourth, by enhancing exploration rate the outbreaks are replaced by a stationary state consisting of a mixture of three strategies with a moderate frequency of cooperators. As we decrease the population size the frequency of cooperators in this mixture increases for a determined exploration rate. Taken together, our finding show that volunteering may be a more important mechanism for cooperation than previously believed.