The utility functions of users To quantify the utility obtained from the resource, user utility considers the price of resource and the processing rate based on the acquired resource. According to the logarithmic function of allocated resource , the payoff of a user can be formulated as
where e is a payoff parameter and f (r) is the function of the acquired cloud resource from the connected broker.
Here, user in community j will select a proper broker to buy cloud resource, aiming to maximize his payoff with the least cost. Therefore, the utility function of a user in community j is defined as the difference between the payoff and cost on resource by
where si: j (ri) denotes the payoff of a user in community j who connects broker i, and Ci, j (ri) is defined as the cost for buying the cloud resource from broker i. The payoff can be obtained by
Here, Qit j denotes the QoE of a user in community j who connects broker i.
And broker i has bought ri resource from media cloud. ni is the number of users who connect broker i. As users in the same community may share the resource of broker i, users have the identical amount of resource when connecting broker i. Thus, the QoE of user j connecting broker i can be defined as
Here ai, j and Д j are two constants of a user in community j who connects broker i, and they are related to media applications, which imply the sensitivity of a user on satisfaction of the obtained resource. For example, the sensitivity of watching video is higher than listening to the music with media cloud.
The cost for buying the cloud resource from broker i can be obtained by
where pi is the price of resource. Therefore, the utility function of a user in community j who has the connection with broker i can be defined as
The objective of user is to achieve a large QoE with a cost as low as possible, in order to maximize its utility. Thus, the optimization problem for a user in community j connecting broker i can be formulated by
The utility functions of brokers For each broker, it provides the cloud resource for processing users’ media tasks. The utility of broker is the revenue obtained from users minus the cost to buy cloud resource from media cloud. Thus, the utility of broker i can be defined as
where Ri (pi) is the revenue through selling cloud resource from broker i to users, and Ci (Ei) denotes the cost to obtain cloud resource from the media cloud.
We can obtain the revenue from selling the cloud resource by
According to the pricing strategy of media cloud, the cost function can be denoted by
where p is the real-time price of cloud resource. Di denotes the cloud resource to support the basic operation of broker i, it can be seen as the reserved resource which is provided to brokers by media cloud. Ei denotes the additional cloud resource to conduct the media task when broker i is busy. Therefore, the utility function of broker i is
We assume that there is a discount when brokers obtain cloud resource from media cloud due to the transmission loss between media cloud and brokers. Thus,
where g is the discount parameter.
The objective of broker is to achieve the revenue and reduce the cost as much as possible, for maximizing its utility. Thus, the optimization problem for broker i can be formulated as
The utility function of media cloud By selling the cloud resource with a certain price to brokers, media cloud can obtain the corresponding revenue. In addition, the cost for processing media task should be also considered. Thus, the utility function of media cloud is defined as the difference between the revenue and the cost by
where Rr (p) denotes the revenue that cloud resource can obtain and Cr is the cost of media cloud for operation.
The revenue of media cloud by selling of cloud resource can be obtained by
The cost for processing tasks is defined as
where cr denotes the unite cost. Therefore, the utility function of cloud becomes
The objective of media cloud is to achieve the large revenue by maximizing its utility. Thus, the optimization problem for media cloud can be formulated as
Four Stage Stackelberg Game
We formulate the above problem as a four stage Stackelberg game, by considering the utility maximization of media cloud, brokers and users. In stage I, as a leader in the Stackelberg game, media cloud offers a real-time cloud resource price p to brokers. In stage II, as a follower in stage I, the broker decides the amount of cloud resource Ei based on the price offered by media cloud. Next, the broker acts as the leader in stage III, and offers the resource price to users. In stage IV, each user selects a proper broker to connect to acquire media service, based on the resource price and availability of cloud resource offered by the broker.