1 Introduction

Smart grid (SG) is an intensification of the 20th century. It is a combination of different technologies such as communication, information technology, sensing, control, and other smart energy tools. We can classify SG on the basis of many definitions (Burr 2003) depending on their functions, technology, and benefits. SG is basically an upgradation of the existing electrical grid, which usually “transmits” electric power from certain generation points to a large number of customers. SG is capable of transmitting power in more efficient and optimal ways, so that the energy demand among customers can be fulfilled. SG technology will be beneficial for utility companies. These benefits can be in the form of economic reductions from the current costs, future cost reduction, as well as more reliability and consumer satisfaction. SG can control the energy consumption to facilitate customers using demand side management (Hashmi et al. 2011).

The SG has gained relevance in the past decade as the solution to many of these myriad issues. Electric Power Research Institute (EPRI) defines the SG as a modernization of the electricity delivery system as it monitors, protects, and automatically optimizes the operation of its interconnected elements (Jiang et al. 2009). The SG consists of two terms, Smart and Grid.

The grid is the network that transmits electricity from the power plants where it is generated to the points where it is consumed. The grid includes wires, substations, transformers, switches, and much more. Therefore, in simple words, SG means computerizing the electric utility grid (Li et al. 2010).The rising SG is a system that can respond and reinstate quickly from faults and disturbances. It can analyze consumers’ energy consumption and their behaviors. SG can bear physical strikes and supply reliable quality of power according to the customers’ needs. Different local and regional generation technologies can be synchronized with the SG (Momoh 2009).

The SG is a next-generation intelligent electric power grid that has the ability to deliver electricity in a controlled, efficient, and smart manner from points of generation to the points of consumption. It uses modern information, communications, and electronics technology for transmitting energy in reliable manner (Gungor et al. 2011). Communication infrastructure is used for the flow of two-way digital information between the generation and consumption point. Modern communication infrastructure can play a major role in SG to manage, control, and optimize different devices and systems. Two-way flow of energy and information in SG is only feasible using information and communication technologies. Figure 1 shows the future for the smart grid (Pazheri et al. 2011). Efficiency, reliability and quality of power are increased by SG to fulfill the desires of customers. SG is the future for electrical systems and it is expected to provide more customer satisfaction, security, and sustainability to our global society (Farhangi 2010). Functions of SG are described in Fig. 2 (Momoh 2009)

Fig. 1
figure 1

Overview of future smart grid

Fig. 2
figure 2

Function of smart grid

1.1 Related Work

Researchers around the world sort many challenges in demand side management (DSM) of an SG. Recent research work reveals the importance of DSM and communication between customers and the energy source. DSM is a fundamental technique for demand response (DR) system in SG networks. The goal of DSM is to minimize electricity bill or peak load. More recent work reveals that interest of users lies in reducing their electricity bills without sacrificing user convenience. Energy optimization enables stability between generation and demand which also results in reduction of energy bills (Palensky and Dietrich 2011). In (Shinwari et al. 2012), authors proposed a water filling-based scheduling algorithm that results in constant power demand as consumers shift their loads to off-peak hours. A non-cooperative energy consumption game was proposed in a centralized manner by authors in (Ma et al. 2013) to reduce electricity cost. In (Imamura et al. 2013), authors worked on genetic algorithm (GA). Their objective was to obtain flattened demand curve of each consumer. Later, in (Guo et al. 2012), energy scheduling was attained by an online algorithm designed for the utility to minimize overall cost while scheduling loads.

A General Algebraic Modeling System (GAMS) software is used in (Sheikhi et al. 2012) to find optimal size and operation of combined cooling heating and power (CCHP), heat, and electrical storage unit. Furthermore, financial parameters are calculated by Computer Model for Feasibility Analysis and Reporting (COMFAR) software. An algorithm for DSM using Information Communications Technology (ICT) is proposed by authors in (Bae et al. 2014), to minimize electricity bill and peak load. In (Rayati et al. 2015), a multi-carrier energy system known as smart energy hub (SEH) is designed in SG to manage energy consumption of users. An effective model for the arrival of electric vehicles (EVs) is presented in (Alizadeh et al. 2011). To gather and control the data, authors proposed a communication structure. In (Sheikhi et al. 2016), authors provided computing network for group of smart energy hubs and game theory is presented to model DSM for SEH. To enlarge the integration of intermittent resources in power grid, authors proposed a model in (Alizadeh et al. 2011). This model is presented with adequate communication rate requirements. Authors worked on SEH in (Sheikhi et al. 2015) to optimize cost of energy consumption and propose integrated DSM (IDSM) game to reduce peak to average ratio (PAR) in electrical grid.

In (al 2013), authors studied the influence of distributed generation units’ penetration level on distribution networks. Integrated DR (IDR) program is proposed for electricity and natural gas networks (Bahrami and Sheikhi 2015). This program can increase the daily profit of utility companies and SE hubs daily payoff. Authors worked on IDR program in (Sheikhi et al. 2015). They prove that it can benefit the supplier side by decreasing the peak load demand and reducing energy consumption cost.

In (Ruiz et al. 2009), the author proposed direct load control (DLC) program to manage users of utility company and shift their loads from high price hours to low price hours as time periods are defined by the utility company for customers. However, for complete minimization of cost and energy consumption pattern, we need hourly based load information. In (Mohsenian-Rad et al. 2010), a system was designed in which customers and utility company can communicate with each other with some limited number of messages to minimize the cost of energy pattern consumption. Authors considered the real-time pricing (RTP) model. Optimization problem was designed while considering time varying prices to reduce the electricity cost. There was trade-off between the electricity bill minimization and from user side as there is a wait for the operation of appliance. Furthermore, in (Mohsenian-Rad et al. 2010) authors take the cost minimization problem as well as the minimization of PAR into account for all the load and relations between both problems. Advanced communication infrastructure enables a secure two-way communication between users and utility, so it is possible for the utility to give time-dependent price of the energy in real-time fashion.

Optimal RTP algorithm based on utility maximization was implemented in (Samadi et al. 2010). Different algorithms for DSM were implemented for utility maximization and cost reduction, such that the total power consumption should be below the generation capacity. The work in (Vuppala et al. 2011) studied the fairness within the demand response programs. First, authors addressed decencies in the current DSM programs. Furthermore, they have designed a pricing scheme known as fairness demand response (FDR) which flattens the demand curve and increases consumer satisfaction. Their proposed work benefits both the consumers and the utility company. A fair billing technique was proposed by authors in (Baharlouei et al. 2013). They interpret a fairness index for retrieving the fairness of designed algorithm.

In (Chen et al. 2011), the authors described the RTP-based power scheduling for a residential system and assumes that power consumption of each appliance can be altered to optimize power allocation during each hour. Through this, author got the information of start time and energy consumption of the user. In this research, the proposed technique only shifts the load without peak load reduction. In (Khomami and Javidi 2013), authors scheduled the power consumption and reduce the electricity cost (EC) and as well as PAR. It was done in three major parts, the first one was the novel architecture of home, then automated DSM framework for scheduling, and, finally, genetic algorithm (GA) was implemented to achieve the final results of optimization. Later, in (Zhao et al. 2013), authors designed the energy management system (EMS) for a home area network (HAN). From RTP, the demand response was conveyed to the home gateway, and then, this information was sent to energy management controller. Obtained information of DR and EMC was conveyed to appliances of each user through horizontal grid (HG). This scheme allowed all devices in home to operate in a cost-effective way.

In (Chavali et al. 2014), authors described a technique in which price of electricity was determined on the previous day. The cost of electricity was minimized if the user has kept the appliances in ideal start time and ideal operating mode. A different technique for minimizing the peak load of system was implemented in (Nguyen et al. 2012). Energy storage devices like batteries were used for this purpose. The main objective was that during low demand periods energy was stored in storage devices and discharges the energy from them in high demand periods. A distributed DSM algorithm was also proposed to minimize the total energy cost. A min–max algorithm was proposed by authors in (Li et al. 2012). This algorithm reduced the load peak and cost for the consumer. However, the problem in this algorithm was ignorance of consumption pattern. The focus was on the cost reduction and smoothing the PAR, but the user convenience was not considered. In (Bae H, Yoon J, Lee Y, Lee J, Kim T, Yu J, Cho S User-friendly demand side management for smart grid networks. In: International conf. on information networking (ICOIN) 2014), authors proposed time varying pricing-based DSM system with an algorithm which considered minimization of consumption bill, peak load, and also user convenience was maximized using the previous paper (Li et al. 2012) user consumption pattern.

1.2 Motivation and Contribution

Naturally, every consumer is interested in minimizing the utility bill. If utility gives the same price information to every consumer, the algorithm takes advantage of time with low prices and shifts the load of schedulable appliances from the high price hours to low price hours. This shifting of schedulable appliances causes peaks in low price hours. Such peaks are denoted as rebound peak. Thus, all the major research that has been done on DSM has a hidden problem of rebound peak which results in severe sub-optimality in the proposed algorithms. The presented scheme allocates different prices to different consumers at night. In other words, some consumers get lower prices than others during the off-peak hours. Though this scheme provides a solution to the rebound peak, it results in a serious problem of user fairness. Some users may enjoy the scheduling at very cheap rate in peak hours, while others have to shift their appliances in the very late night hours to curtail their cost. The aim of this work is to design the cost reduction algorithms in smart grid, such that the proposed algorithms do not cause the rebound peak.

2 System model and problem formulation

Through the advent of Information Technology (IT), the domestic as well as industrial demand of high quality and reliable electrical energy is gradually increasing. We can design the optimal ways of energy management in SG, so that the electrical energy can be utilized in more suitable and efficient manner. In this section, we provide an analytical description for the depiction of the power system and the energy cost. Now, consider a smart grid system along with numerous load (users) with single source of energy (utility). The block diagram of system is shown in Fig. 3 in which utility is supplying power to the number of users connected to it. We suppose that each load subscriber is equipped with smart meter with DSM module. The DSM module has the functionality to schedule the household appliances attached to it. The DSM module uses the information given by utility and manages the working of appliances. All the messages (communication) between utility and the smart meter are done through wireless communication by using appropriate communication protocol. We have two groups of appliances, i.e., schedulable appliances and real-time appliances. Schedulable appliances such as dish-washer, washing machines, and air conditioner, but some cannot be scheduled such as PCs, TVs, and lighting installations. Real-time appliances are also known as un-schedulable appliances. The DSM has the ability to only schedule the schedulable appliances.

Fig. 3
figure 3

Block diagram of system

2.1 Scheme 1

The following representation will be used throughout the paper. N represents the total number of users where each user is \(n\varepsilon N\).

For each user, the load at hour \({\text{h }}\) is represented by \(l_{n}^{h}\). Each day is divided into \(H\) hours where each hour is \(h\varepsilon H = 1,2,3, \ldots ..,H\), where H = 24. The total load of all users in each hour \(h\varepsilon H\) can be calculated as

$$L_{h} = \mathop \sum \limits_{n = 1}^{N} l_{n}^{h} .$$
(1)

The total daily predetermined energy consumption of each user n in all hours 1,2,3….H is represented as \(E_{n}\). Cost function indicates the cost of electricity generated or distributed by energy source at each hour \(h\varepsilon H\) and is denoted by \(C_{h} \left( {L_{h} } \right).\) The peak in daily load is

$$L_{\text{peak}} = {}_{h\varepsilon H}^{\hbox{max} } L_{h} .$$
(2)

The average value of load in H hour is given as

$$L_{\text{avg}} = \frac{1}{H}\mathop \sum \limits_{h = 1}^{H} L_{h} .$$
(3)

An effective scheduling of energy consumption can be expressed in terms of minimizing the energy cost of all the users. With the above defined notations, the optimization problem can be written mathematically as

$$\min_{C(h)} \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} C_{h} (l_{n}^{h} ),$$
(4)
$${\text{s}} . {\text{t}} \mathop \sum \limits_{h = 1}^{H} l_{n}^{h} = E_{n } \forall n,$$
(5)
$$l_{n}^{h} \ge 0 \quad \forall n,h,$$
(6)

where

$$C_{h} \left( {l_{n}^{h} } \right) = a_{h} + b_{h} L_{h} + c_{h} .$$
(7)

In optimization problem, the objective function is the minimization of cost for all users in all hours. The cost function is a quadratic function where \(a_{h } > 0, \quad {\text{and}}\quad b_{h}\),\(c_{h } \ge 0\) at each hour \(h\varepsilon H\). There are two constraints in the above proposed optimization problem. The first constraint is \(\sum\nolimits_{h = 1}^{H} {l_{n}^{h} = E_{n} }\). This constraint states that the sum of load \(l_{n}^{h}\) of each user n in all hours, i.e., \(h\varepsilon H = 1,2,3 \ldots . H\) must be equal to the predetermined total daily energy consumption \(E_{n}\). This constraint is for all users n.

The second constraint is \(l_{n}^{h} \ge 0\forall_{n} ,h\). This constraint depicts that load of each user n in each hour h must be a positive value. This constraint is for all users n and all hours h.

  1. 1.

    Proposed solution Numerous efficient iterative algorithms have been developed to extract the global optimal solution for the unconstrained optimization. To solve the formulated convex optimization problem, we use the Lagrange duality theory. The Lagrangian is defined as

$$L\left( {c_{h} ,\lambda_{n} ,z_{n}^{h} } \right) = \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} c_{h} (l_{n}^{h} )} \right) + \left( {\mathop \sum \limits_{n = 1}^{H} \lambda_{n} \left( {\mathop \sum \limits_{h = 1}^{H} (l_{n}^{h} ) - E_{n} } \right)} \right) + \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} z_{n}^{h} ( - l_{n}^{h} ),$$
(8)

where \(\lambda = \lambda_{n} ,n\quad {\text{and}}\quad z = z_{n}^{h} ,n,h\) are Lagrange multipliers or dual variables:

$$D(\lambda_{n} ,z_{n}^{h} ) = \min_{l } \left( {L\left( {\lambda_{n} ,c_{h} ,z_{n}^{h} } \right)} \right).$$
(9)

The dual optimization problem is given as

$$\hbox{max} D\left( {\lambda_{n} ,z_{n}^{h} } \right)$$
(10)
$${\text{s}} . {\text{t }} \lambda_{n} \ge 0$$
$$z_{n}^{h} \ge 0.$$

Difference between dual problem and primal problem optimal solution is known as duality gap (Boyd and Vandenberghe 2004). The primal problem is given as follows:

The duality gap is given as follows:

d = primal problem–dual problem.

For duality gap to be zero means that the primal and the dual optimization problems have the same solution and this is always true if the primal problem is convex. The Karush–Kuhn–Tucker (KKT) conditions are the set of mathematical equations related to an optimization problem which are always necessary for optimality. For the convex optimization problem, the KKT conditions become necessary as well as sufficient for optimality (Sheikhi et al. 2015):

Applying KKT conditions, we obtain:

$$L\left( {c_{h} \lambda_{n} z_{n}^{h} } \right) = \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} a_{h} \left( {l_{n}^{h} } \right)^{2} + b_{h} + c_{h} } \right) + \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} \lambda_{n} l_{n}^{h} } \right) - \left( {\mathop \sum \limits_{n = 1}^{N} \lambda_{n} E_{n} } \right) - \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} z_{n}^{h} (l_{n}^{h} )} \right)$$
(11)
$$L\left( {c_{h} ,\lambda_{n} ,z_{n}^{h} } \right) = \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} \left( {a_{h} \left( {l_{n}^{h} )^{2} } \right) + b_{h} \left( {l_{n}^{h} } \right) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} } \right) + \lambda_{n} \left( {E_{n} } \right) - z_{n}^{h} (l_{n}^{h} )).$$
(12)

Let,

$$f\left( x \right) = \left( {\left( {a_{h} (l_{n}^{h} )^{2} + b_{h} \left( {l_{n}^{h} } \right) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} )} \right) + \lambda_{n} \left( {E_{n} } \right) - z_{n}^{h} (l_{n}^{h} ))} \right),$$
(13)
$$\frac{\partial (f(x))}{{\partial (l_{n}^{h} )}} = \frac{{\left( {\left( {a_{h} (l_{n}^{h} )^{2} } \right) + b_{h} \left( {l_{n}^{h} } \right) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} ) + \lambda_{n} \left( {E_{n} } \right) - z_{n}^{h} (l_{n}^{h} )} \right)}}{{\partial (l_{n}^{h} )}},$$
(14)
$$\frac{\partial (f(x))}{{\partial (l_{n}^{h} )}} = 2(a_{h} (l_{n}^{h} )) + b_{h} + (\lambda_{n} - z_{n}^{h} ).$$
(15)

Now,

$$2\left( {a_{h} \left( {l_{n}^{h} } \right)} \right) + b_{h} + \left( {\lambda_{n} - z_{n}^{h} } \right) = 0,$$
(16)
$$l_{n}^{h} = \frac{{\left( {z_{n}^{h} - \lambda_{n} } \right)}}{{\left( {\left( {2* a_{h} } \right) + b_{n} } \right)}}.$$
(17)

Equation 17 is the expression of load which consists of Lagrange multipliers \(z_{n}^{h} ,\lambda_{n}\) and the quadratic equation variables \(a_{h} , b_{h}\). Now, it remains to find the solution of dual problem. To find the value of dual variables \(z_{n}^{h} ,\lambda_{n}\) to obtain optimal values, sub-gradient update method can be used. At (n + 1) th iteration, the dual variables are updated as follows:

$$\lambda \left( {n + 1} \right) = \lambda \left( n \right) + {\text{constant}} \left( {\mathop \sum \limits_{h = 1}^{H} \left( {l_{n}^{h} } \right) - E_{h} } \right),$$
(18)
$$z_{n,h} \left( {t + 1} \right) = z_{n,h} \left( t \right) + {\text{constant}}\left( { - l_{n}^{h} } \right).$$
(19)

Note that for each iteration of (18) and (19), we need to find the \(l_{n}^{h}\) from Eq. (7). The cost of load is determined from Eq. (7) and the cost of each user n in all hours is determined by 4.

We have efficiently solved the problem using optimization technique that can effectively shift the load’s peaks from high hours to low peak hours and can reduce the total cost. However, it may result in some peaks in the peak hours (the results in the next scheme will show this fact). To solve the problem of rebound peak, we propose Scheme 2.

2.2 Scheme 2

The cost of the load consumed by the users can be calculated as in Eq. (7). The formulated problem in Eq. (4) can minimize the cost of electricity consumed by all users in all hours. However, this causes the problem of rebound peak in load profile. The optimization problem is updated by adding another constraint that guarantees to solve the problem of rebound peak:

$$\min_{c\left( h \right)} \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} C_{h} (l_{n}^{h} )$$
(20)
$${\text{s}} . {\text{t }} \mathop \sum \limits_{h = 1}^{H} l_{n}^{h} = E_{n} \quad \forall_{n}$$
(21)
$$\mathop \sum \limits_{h = 1}^{H} l_{n}^{h} \le \delta \quad \forall_{n}$$
(22)
$$l_{n}^{h} \ge 0\quad \forall_{n} ,h.$$
(23)

2.2.1 Proposed Optimal Solution

For the above Problem 11, the dual function is defined as follows. The dual optimization problem is given as

$$\max_{{\lambda_{n} ,\eta_{h} ,z_{n}^{h} }} D\left( {\lambda_{n} ,\eta_{h} ,z_{n}^{h} } \right)$$
(24)
$${\text{s}} . {\text{t}} \; \lambda_{n} \ge 0$$
$$\eta_{h} = 0$$
$$z_{n}^{h} \ge 0.$$

The dual function can be written as

$$D\left( {\lambda_{n} ,\eta_{h} ,z_{n}^{h} } \right) = \min_{{\lambda_{n} ,\eta_{h} ,z_{n}^{h} }} \left( {L\left( {\lambda_{n} ,\eta_{h} ,z_{n}^{h} } \right)} \right),$$
(25)

where L is the Lagrange whose actual value is

$$L\left( {c_{h} \lambda_{n} z_{n}^{h} } \right) = \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} a_{h} \left( {l_{n}^{h} } \right)^{2} + b_{h} + c_{h} } \right) + \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} \lambda_{n} l_{n}^{h} } \right) - \left( {\mathop \sum \limits_{n = 1}^{N} \lambda_{n} E_{n} } \right) + \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} \eta_{n} l_{n}^{h} } \right) - \left( {\mathop \sum \limits_{h = 1}^{H} \eta_{n} \delta } \right) - \left( {\mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} z_{n}^{h} (l_{n}^{h} )} \right)$$
(26)

where \(\eta = \eta_{h} \quad {\text{and }}\quad z = z_{n}^{h} ,\quad \forall_{n} ,\forall_{h}\) are the Lagrange multiplier and dual variables?

Let

$$L\left( {c_{h} ,\lambda_{n} ,\eta_{h} ,z_{n}^{h} } \right) = \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} \left( {a_{h} (l_{n}^{h} )^{2} + b_{h} (l_{n}^{h} ) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} ) + \eta_{h} (l_{n}^{h} ) - z_{n}^{h} (l_{n}^{h} )} \right)$$
(27)
$$f\left( x \right) = \left( {\left( {a_{h} (l_{n}^{h} )^{2} + b_{h} (l_{n}^{h} ) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} ) + \eta_{h} (l_{n}^{h} ) - z_{n}^{h} (l_{n}^{h} )} \right)} \right).$$
(28)

Now, applying KKT conditions

$$\frac{\partial (f(x))}{{\partial (l_{n}^{h} )}} = \frac{{\left( {\left( {a_{h} \left( {l_{n}^{h} )^{2} } \right) + b_{h} \left( {l_{n}^{h} } \right) + c_{h} } \right) + \left( {\lambda_{n} (l_{n}^{h} } \right) + \eta_{h} \left( {l_{n}^{h} } \right) - z_{n}^{h} (l_{n}^{h} ))} \right)}}{{\partial (l_{n}^{h} )}}$$
(29)
$$\frac{\partial (f(x))}{{\partial (l_{n}^{h} )}} = 2(a_{h} (l_{n}^{h} )) + b_{h} + (\lambda_{n} + \eta_{h} - z_{n}^{h} ).$$
(30)

Now

$$2\left( {a_{h} (l_{n}^{h} )} \right) + b_{h} + \left( {\lambda_{n} + \eta_{h} - z_{n}^{h} } \right) = 0$$
(31)
$$l_{n}^{h} = \frac{{\left( {z_{n}^{h} - \lambda_{n} - \eta_{h} } \right)}}{{\left( {\left( {2* a_{h} } \right) + b_{n} } \right)}}.$$
(32)

The load expression in Eq. 32 is in terms of three Lagrange multipliers \(z_{n}^{h} ,\lambda_{n} \eta_{h }\) and two quadratic variables \(a_{h} ,b_{h}\). Sub-gradient method is used to find the value of Lagrange multiplier \(z_{n}^{h} ,\lambda_{n} \eta_{h}\). To find the value of Lagrange multipliers \(z_{n}^{h} ,\lambda_{n} \eta_{h}\), we use the iterative sub-gradient method. For sub-gradient method, the equations will be as follows:

$$\lambda \left( {n + 1} \right) = \lambda \left( n \right) + {\text{constant}} \left( {\mathop \sum \limits_{h = 1}^{H} \left( {l_{n}^{h} } \right) - E_{h} } \right),$$
(33)
$$\eta \left( {n + 1} \right) = \eta \left( n \right) + {\text{constant}}\left( {\mathop \sum \limits_{h = 1}^{H} \left( {l_{n}^{h} } \right) - \delta } \right),$$
(34)
$$z_{n,h} \left( {t + 1} \right) = z_{n,h} \left( t \right) + {\text{constant}}\left( { - l_{n}^{h} } \right).$$
(35)

With the above solution, the rebound peak problem can be resolved now. The load of all users in each hour will be distributed in such a manner that the problem of rebound peak is fixed now. However, due to per hour total power consumption constraint, the cost of this scheme may increase significantly as compared to the Scheme 1. Furthermore, the per hour constraints limit the user comfort. Therefore, we should opt for a more sophisticated solution that minimizes the cost of the load of all users in all hours as well as reducing the problem of rebound peak.

2.3 Scheme 3

Now, our previous optimization problem has been improved by replacing a constraint with more enhanced constraint. The new optimization problem will be as follows:

$$\min_{c\left( h \right)} \mathop \sum \limits_{h = 1}^{H} \mathop \sum \limits_{n = 1}^{N} C_{h} (l_{n}^{h} )$$
(36)
$${\text{s}} . {\text{t}} \mathop \sum \limits_{h = 1}^{H} l_{n}^{h} = E_{n} \quad \forall_{n}$$
(37)
$$l_{n}^{h} - {\text{peak}} \le \delta \quad \forall_{h}$$
(38)
$$l_{n}^{h} \ge 0\quad \forall_{n} ,\forall_{h} .$$
(39)

The optimization problem described consists of a new constraint. This constraint is to ensure that the difference between the load of each user in each hour and peak value is not too large. The difference between the load of each user in each hour and the peak value must be less than a constant. To deal with this, we model the prices of each hour, such that:

$${\text{Orignal price}} = {\text{orignal price}} w_{1} \left( {l_{h} - {\text{average}}} \right) + w_{2} \left( {{\text{peak}} - {\text{average}} } \right).$$
(40)

The cost will be updated in next iteration according to the mentioned formula in (40), let \({\text{var}} = l_{h} - {\text{average}}\). There are two conditions of implementing the formula (40). If var is a positive value, then the price is

$${\text{Orignal price}} = {\text{Orignal price}} + \left( {w_{1} (l_{h} - {\text{average}}) + w_{2} ({\text{peak}} - {\text{average}})} \right).$$
(41)

If var is a negative value, then the price is

$${\text{Orignal price}} = {\text{Orignal price}} - \left( {w_{1} (l_{h} - {\text{average}}) + w_{2} ({\text{peak}} - {\text{average}})} \right).$$
(42)

Under this formulation, we can remove the rebound peak constraint from the above problem. The remaining problem is similar to the problem in first scheme and can be solved using duality theory. The exact solution steps are missing for simplicity, after implementing this scheme, the peak values of resultant load are minimized up to maximum level. Therefore, the problem of rebound peak is also resolved. Later, in simulations, we shall show that the cost of this scheme is less than the commonly used scheme in which load is distributed evenly. Therefore, this solution is the most optimal solution among all the above-mentioned schemes.

2.4 Scheme 4

Scheme 3 aims to minimize the problem of rebound peak as well as cost. In the past, some authors tried for the reduction of rebound peak and minimized the cost. For the purpose of comparison, a scheme is presented which is based on the ideas in (Rayati et al. 2015). The main cause of rebound peak in load is that every user attached to the utility is receiving the same price value in all hours. The DSM module attached to each user’s home is taking advantage of hours with low prices. In this scheme, we have price vector of all hours in such a way that all the users did not get the same price in all hours. For this type of price allocation, we divide the total number of users in different groups. Each group of users is getting a different price from the other group of users in each hour. Through this method, all the users are not able to take advantage of the hour with low prices. Hence, rebound peak will not occur. This scheme will also fulfill the constraints in Eqs. 37 and 38.

2.5 Scheme 5

The schemes presented earlier involve iterative algorithms which may take time to converge. Here we present a low complexity suboptimal scheme. Utility allocates different prices in different hours. To minimize the overall cost, we first select the hour with minimum price per unit. To obtain the share of each user scheduling in that particular hour, divide the utility defined per hour limit by the total number of users. In the next iteration, we select the second minimum price hour, check if a certain user has already finished with its demand, subtract that user from the candidates, and allocate share to the remaining users. This process is repeated for all hours. In this way, the peak hours having high prices will experience less load, because the load in high price hours is allocated after the low price hours. Up to that time, users with less demand of load will fulfill their need.

3 Simulation Results

In this section, we present simulations to illustrate the effectiveness of the proposed schemes. We consider smart grid with ten users, where each user has various appliances. The time scheduling horizon is H = 1,2, 3,…24. The price vector a(h) is taken for 24 h. Every user has different demand of load. The demand of all users in total hours is denoted by E(n). Therefore, in simulation, the following parameters are identical for all the schemes under consideration:

  • The number of users, i.e., 10 and hours, i.e., 24;

  • the prices of load in each hour;

  • the demand of all users;

  • the initial value of Lagrange multipliers.

Figures 4, 5 show the considered demands of each user and price of electricity in a day, respectively. After scheduling according to the scheme 1, the load of all users in all hours is calculated. Figure 6 shows the load of each user in all hours. Figure 6 proves that the first constraint is fulfilled, as mentioned in the optimization problem in Eq. (4). The 2nd constraint is also fulfilled as the value of load of each user in each hour is positive.

Fig. 4
figure 4

Demand of load of each user

Fig. 5
figure 5

Price of electricity in all users

Fig. 6
figure 6

Load of each user in all hours

Figure 7 depicts the problem of rebound peak. When we compare Figs. 5 and 8, it can be seen that the hours with low prices have maximum load consumption, while the hours with high price hours have minimum load consumption by all users. In Scheme 2, the optimization problem defined in the previous scheme is updated by adding a constraint. The load of each user in each hour according to the optimization problem in Eq. (6), as Fig. 9 shows the demand of all users, has been fulfilled. When we take the sum of load of all users in each hour, it is less than. The third constraint is also fulfilled; value of load of each user in each hour is positive value.

Fig. 7
figure 7

Load of all users in each hour

Fig. 8
figure 8

Cost of load consumed by each user in a day

Fig. 9
figure 9

Load of each user in all hours

Now, by comparing the results of Scheme 1 and 2, we can see that the rebound peak is minimized. However, the cost of load in scheme 2 is higher than that of scheme 1. We should take more effective constraints to tackle both of issues. In Scheme 3, we add a constraint to limit the rebound peak in load. The results show that this scheme effectively reduced the rebound peak in load and cost minimization. Figure 6 proves that the constraints 1 and 3 of optimization problem in Eq. (36) are fulfilled. Figure 9 shows the load profile of all users in each hour. This figure proves that rebound peak problem is tackled in this scheme.

Figure 8 shows the cost of each user for the consumption of energy in all hours. From the above figures, it is concluded that this scheme solves the problem of rebound peak and also reduces the cost of load of all users in all hours. We compared this scheme with two other schemes also. Scheme 4 is from the literature, in which the author tried to solve the problem of rebound peak. The results of scheme 4 are as follows: Fig. 6 assures that the load demand of all users is fulfilled in this scheme and load of each user in each hour is positive.

Therefore, when we compare the result of Figs. 9 and 10, we conclude that the Scheme 3 is solving the problem of rebound peak more efficiently. Scheme 5 is the suboptimal scheme which is described in scheme 3. By comparing Figs. 4 and 11, it shows that the demand of energy of each user is fulfilled. Figure 8 shows that the users with higher demand, i.e., user 1, 5, and 10, have to experience high cost, which is the drawback of this scheme.

Fig. 10
figure 10

Load of all users in each hour

Fig. 11
figure 11

Sum of load of each user in all hours

4 Comparison of Cost and Rebound Peak

By solving our problem in MATLAB, we have relieved the following results from the iterations. Table 1 and Fig. 12 show the comparison of different schemes with respect to cost of energy and rebound peak. Total cost in Table 1 is the sum of cost of all users in all hours. Rebound peak is the maximum. From Table 1, we can see that rebound peak of scheme 2 and 3 is less, but the cost of both schemes is higher than scheme 3. Scheme 3 is the most balanced optimal solution of cost minimization and rebound peak reduction in the load profile.

Table 1 Comparison of cost and rebound peak

5 Conclusion and Future Work

In this research, optimization problems for the minimization of electrical cost and rebound peak reduction have been formulated and solved efficiently. Every user wants the demand of electricity to also be fulfilled along with electricity cost reduction. In the proposed optimization problem, the demand of each user is fulfilled. We tried to improve the scheduling algorithm by introducing more sophisticated constraints. Proposed algorithm can efficiently minimize the cost as well as solving the problem of rebound peak.

Fig. 12
figure 12

Comparison of cost of all schemes

The results of this research work can be enhanced in several directions. First, the proposed algorithms can be modified to address the case when we consider each of the schedulable appliances of all users in optimization problem. We can extend the proposed system model of smart power system with multiple energy sources in the system. Future work will reduce the problem of rebound peak by introducing some other constraints or using some other optimization techniques. We will investigate efficient computational techniques in future for problem of rebound peak and cost reduction and design user-friendly interfaces to enable efficient energy management at home.