Demand-side management in a smart micro-grid: A distributed approach based on Bayesian game theory