THE PROBLEM OF COALITION FORMATION MODELLING

. The paper deals with the problem of modelling of coalition formation. Petri Nets were suggested as they offer a simple way to graphically represent the coalition formation procedure, they allow to easily make changes in modelling procedure and there are many high-quality modelling tools. The authors do not provide complete modelling procedure, but only show that Petri Nets is a very effective tool for determining and parameter estimation of possible coalitions. An example is considered as well as conclusions about application of Petri Nets for modelling of coalition formation.


Introduction
The paper deals with the problem of modelling of coalition formation. Coalition is formed every time when there is a request from in-need entity. Coalition is formed from the agents of alliance. In case of great number of alliance' agents, there are possible many different coalitions. Each of the formed coalitions is prepared to perform the tasks on its own. In order to choose the single coalition for tasks execution an independent arbiter should be used. Such arbiter will be assigned with the task of evaluating the formed coalitions by way of comparing their capabilities and with the task of choosing the best coalition. Coalition formation is very complex process which requires correct planning and preliminary modelling in order to be solved effectively. For describing interactions among the agents and for modelling of coalition formation the following formal description techniques and tools are used: finite state machines [1], Petri Nets [3], languages such as LOTOS [7] and SDL [5], language Z [6], modelling languages based on UML such as Agent UML [2], Erlang/OTP platform [4]. Among the above mentioned techniques and tools we suggest exploiting the Petri Nets for the following reasons:  they offer a simple way of how to graphically represent the coalition formation procedure (such as agents' capabilities, agents' ability and willingness to communicate and negotiate, and restrictions imposed on task execution);  they allow to easily make changes in modelling procedure;  there are many high-quality modelling tools for solution of Petri Net.

Coalition formation process
During coalition formation each agent has to decide when and with which other agents to communicate. This decision is made on the basis of available to him information about other agents' capabilities and on the strategies which they adhere. We consider the agents that are more interested in maximum efficiency of tasks execution in shortest possible time rather than in gaining any direct benefits from their participation in the coalition. From this preference it follows that agents should be honest to each other in pursuing a coalition goal. It is implied that an agent doesn't change its previous decision to cooperate with particular agent when it gets the offer from another agent (i.e., the decision once made cannot be reversed). It is also expected that each agent provides correct information about its capabilities which will be held fixed in process of coalition formation. When an agent receives an offer from another agent, the delay with a reply should not be caused by waiting for a more attractive offer.
In general, an agent can be either active or passive. If the agent is passive, it only waits for offers from other agents and replies to the received offers. If the agent is active, it also offers the other agents to collaborate in the coalition. In this paper, we assume that all agents will be active since each of the agents is keen on shortening the period of coalition formation.
Generally, two approaches to coalition formation are possible. Namely:  coalition formation with preliminary exchange of information about agents' capabilities;  coalition formation without preliminary exchange of information about agents' capabilities. In the paper, we consider the former approach, and assume that each agent is aware of the capabilities of all other agents.
At the beginning of coalition formation, agents form interim coalitions (i.e., coalitions that can be further extended by adding new agents and, thus, increasing their capability). When capability of interim coalition has become greater or equal to the value required to perform the coalition tasks, the coalition formation ends and the formed coalition is considered as final.

Application of Petri Nets for modelling
Petri Nets are a graphical tool for the formal description of the flow of activities in complex systems. In our case, the activities which should be modelled are the communications among the agents of an alliance aimed at forming interim and final coalitions.
In order to show how Petri Net can be used to describe agents' communications, we start with simple example when alliance consists of only three agents, particularly, agent A, agent B and agent C. Agent's capability can be measured and expressed via number of tokens. For the example under consideration, we assume that for carrying out the task facing the coalition the capabilities need to be equal to nine tokens. We also assume that the distribution of tokens among the agents is as follows: agent A has two tokens, agent B has four tokens and agent C has six tokens.
In Fig. 1, places P 1 , P 2 and P 3 represent the states of agents A, B and C, in which the corresponding agent cannot negotiate other agents for some reasons. For instance, at the start of coalition formation, an agent may continue in performing its own main tasks. As another reason why an agent cannot immediately start negotiation consists in that an agent may require some time to prepare for the negotiations. Timed transitions T A , T B and T C allow simulating the lapse of time while the agent cannot negotiate. Timed transitions T 1 , T 4 and T 5 simulate the time when the corresponding agent either waits for an offer or tries to contact other agents to form the interim coalition. Places P 4 , P 5 and P 6 represent the states of agents A, B and C, in which the corresponding agent can contact or be contacted by other agents. Timed transitions T 0 , T 6 , T 2 , T 7 and T 3 allow simulating the amount of time required for negotiation between two agents. Places P 17 , P 9 and P 31 represent the events of interim coalition formation. For example, if place P 17 has a token, it means that interim coalition AB is formed (i.e., agents A and B have agreed and prepared to cooperate). How many times interim coalition can be formed is set by the number of tokens in special place. For interim coalitions AB, AC and BC these places are P 22 , P 23 and P 24 , respectively. In Fig. 1, places P 22 , P 23 and P 24 contain one token each. It means that each interim coalition can be formed only once. Immediate transitions t 0 and t 1 simulate the logical operation "OR". The same relates the immediate transitions t 2 and t 3 . Interim coalition BC can be considered as final coalition since four and six tokens that the associated places P 2 and P 3 have are enough for performing coalition tasks. In contrast, interim coalitions AB and AC cannot perform coalition tasks, and thus agents A, B and C should continue in coalition formation process.
In the example under consideration, we simulate such agent's features as:  agent's engaged and free periods (i.e., availability for negotiations);  agent's preferences in the choice of agents for communications;  agent's capabilities.
We also simulate the coalition capabilities by summarizing the capabilities of the agents that form the coalition. By using agent's preferences it is possible to model coalition formation when some agents refuse to communicate and negotiate with each other, i.e., deal with the agents of restricted alliance [8]. It is especially important when restricted alliance includes great number of agents. In this case, Petri Net modelling coalition formation will allow to find out the possible deadlocks and to estimate the probability of their occurrences. A deadlock occurs when current interim coalitions are unable to perform coalition tasks and cannot be expanded for the reason of agents' refusals to negotiate with each other.
We provide modelling for the simple example when only three agents are available. Nevertheless, this modelling includes most of the features that are needed in more complex cases.
Since Petri Net that we have designed for modelling coalition formation (see Fig. 1) includes probabilistically defined timed transitions, it relates to Stochastic Petri Nets. There exist many modelling tools for solution of Stochastic Petri Nets. For our research we have chosen Sharpe [10] for the following reasons:  Sharpe enables both developing graphical Petri Nets and reading input and output matrices that represent Petri Nets. This is very important for our purposes since graphical representation of Stochastic Petri Nets is very difficult or even impossible when the number of places is great. This problem can be solved by designing the Petri Net generator whose output can be read and used by Sharpe. Similar generator was designed by us for Petri Nets simulating mutual checks in multicore processors [9];  Sharpe has the tools for providing analysis of the model;  Sharpe has a friendly interface. Petri Nets simulating coalition formation when only three agents can be engaged in this process can be plotted directly in the proper window of Sharpe.
While performing the modelling we varied such parameters as period of time when an agent is available for negotiations. In Petri Net, this parameter is set by value of rate T 1 (associated with free period of agent A), by value of rate T 4 (for agent B) and by value of rate T 5 (for agent C). We set these rates as function from two arguments. Particularly, these argument are the time needed for negotiation and time of agent' idle period Fig, 2 shows how the probability of final coalition formation depends on the time devoted to coalition formation. We set the values of rates T A , T B and T C to 1/10 (case-1), 1/20 (case-2) and 1/30 (case-3) respectively, while the values of rates T 0 , T 6 , T 2 , T 7 and T 3 were held fix equaling to 1, and values of rates T 1 , T 4 and T 5 equaling to ½. In Fig. 2, the time is measured in arbitrary unit. For example, value 10 of t can be interpreted as either 10 ms or 10s or 10h or 10 days etc. From Fig. 2 we can infer that the dependence of probability P k on time t is of exponential type. Fig. 2 allows us to make prediction (with corresponding probability) about the time of final coalition formation. For considered example, this time is approximately equal to 10 arbitrary units for case-1. This prediction is made with probability equal to 0.85.

Conclusions
Coalition formation process has many parameters that are probabilistically defined. Therefore, it is very difficult to determine all possible coalitions that can be formed with the agents of alliance, especially when the total number of agents is large. Even more difficult task is the task of estimating the probability of formation for different coalitions. These tasks can be solved only on the basis of corresponding modelling. There are several ways of how to perform this modelling. We preferred to exploit Petri Nets for providing modelling of coalition formation for the reasons mentioned above.
We did not aim to provide complete modelling, but only wanted to show that Petri Nets is a very effective tool for determining and estimation of possible coalitions. With the help of Petri Net we can predict the time needed for coalition formation. We can also determine the probability of formation of all possible coalitions, including the formation of the "best" coalition. We can evaluate how separate parameters influence the main characteristics of coalition formation process.
For providing analysis of a designed Petri Net, we used special tool called Sharpe. With the help of Sharpe we can obtain all the characteristics of coalition formation that are of interest. For the case when the number of agents is small, Sharpe allows graphical representation of coalition formation. With graphical representation of coalition formation it is easy to make changes of different model parameters and to estimate of how these changes could influence the process of coalition formation.
When number of agents of alliance is very large, graphical representation of coalition formation is very difficult or even impossible. Nevertheless, it is possible to design Perti Net generator whose output can be used directly by Sharpe. Hence, Petri Nets can be used to model coalition formation also for the case with large number of agents.