• Nie Znaleziono Wyników

Software performance engineering for Multiagent Systems Abstract:

N/A
N/A
Protected

Academic year: 2021

Share "Software performance engineering for Multiagent Systems Abstract:"

Copied!
1
0
0

Pełen tekst

(1)

Software performance engineering for Multiagent Systems

Abstract:

In Multiagent Systems the time of response ton a client’s request is one of the fundamental problems.

This time is combined from agent activity times and inter-agent communication times. Many Multiagent Systems design methods are based on UML or its modifications. Performance evaluation is mainly based on system dynamics. In the UML, the most extensive models of dynamics are statecharts. The Performance statecharts are extensions of statecharts that contain probability distribution for activity duration times and probability distributions in order to solve non-determinism.

A performance analysis of the information retrieval system with three types of agents using performance statecharts is carried over.

1. Introduction

Multiagent technologies support a development of programming of great structural and functional complexity. Multiagent systems have the following features: flexibility in adaptation to environment changes, possibility of increasing the number of function, mobile data and programs, etc.

In order to create the Multiagent programming, the tools supporting this development are required.

These tools are needed because of great complexity of requirements gathering and specification, analysis, design, and implementation of the Multiagent systems (MASs).

Information retrieval systems in heterogeneous distributed environment are one of the most popular applications of Multiagent programming. In the heterogeneous environment, information is stored in different formats: relational data base, knowledge base, programs, HTML, XML, etc. In order to retrieve the suitable information, the following is done: data analysis, unused data are neglected, recovery of incomplete data. When the information retrieval system is developed, performance metrics of information distribution, retrieval and recovery are taken into account.

In order to get better values of performance metrics for MAS, these systems include agents of different types. There are agents with: complete knowledge (Fat Agents) and limited knowledge (Thin Agent), mobile agents that migrate through a net. Additionally, there are hierarchical MASs with different agents at different hierarchy levels. An appropriate MASs organisation can reduce communicating complexity from quadratic to linear.

MAS communication is realized concurrently in distributed environment. A communication protocol is expressed by a set of messages. Sometime, the sequence of messages are called conversations.

When developing the MAS communication protocol, it is supposed that: environment is closed, agents can play many roles, the agent behaviour is deterministic, the agents communicate by conversations, they can participate in many conversations simultaneously, changes in environment can disturb a conversation.

Meta UML [OVDPB2001], [FIPA], [DWS2001] supports development of the Multiagent programming in requirements gathering and specifying, analysis, design and implementation. The agents are defined using class diagrams and the communication protocols are designed with application of the sequence diagrams and the statecharts diagrams.

For the Multiagent systems, the time of delivering a response on a the client’s request is the significant metric. This is a function of the agent activity times and the interagent communication times. In the literature, performance evaluation of the following MASs: ZEUS [CACM2002], JADE [CACM2002], Skeleton Agent [CACM2002], ACORN [CGM2002], Aglets IBM [DKS2001], [FS], [JI2001], [YN1999], Concordia [DKS2001], [JI2001], Voyager [DKS2001], [JI2001] is presented. The following metrics are examined: the response time as a function of the number of the required documents [CACM2002], the average time for generating one agent with respect to the total number of the created agents as well as the average time for sending one non-blocking message from one agent to another with respect to the number of sent messages, the mean two agent synchronisation time versus the number of synchronizations [DKS2001], the creation time of an agent group as a function of the number of agents, the number of key words for one agent [CGM2002], the response time versus the server processing time and a directory size, and the number of points (shops) visited by

(2)

a mobile agent [JI2001]. In these papers existing MASs are examined. When a new MASs is designed, performance requirements have to be considered at each phase of life cycle. When a system with performance requirements is designed, software performance engineering [S1990] is useful.

According to software performance engineering, time requirements are considered in all life cycle phases. It is difficult to have the exact values of performance metrics in such life cycle phases as a requirement specification analysis or a design but some approximations of the performance metrics have to be known. Such approximations can be obtained from performance assessment of the reused software components that will be incorporated into developed MASs. Modelling of the performance of the components that are not yet implemented is very important. The performance analysis of systems at phases before implementation can be based on: performance models of the components and intercomponent communication. The parameters of these models can be obtained from the existing components or on the base of the software engineers’ intuition.

Now we shortly present performance models. In paper [RJ], this model is based on stochastic Petri nets. Behaviour of agents can be expressed by differential equations of dynamics [L]. This approach can be applied in robotic systems evaluation and optimization. In paper [BSW2003], performance analysis is executed using model with such parameters as bandwidths and latencies of wide and local area networks, sizes of: commands and acknowledgements.

The performance models are usually dynamics driven models. In the UML, the dynamics of components and inter-components communication can be expressed by statecharts. Therefore, performance extension of the statecharts is strongly required. The performance statecharts have been presented in [BHM2001], [BHM2003], and have been applied to the performance analysis of: a continuous media transport protocol [BHM2001] and signalling (connection establishment and release) in the ATM networks [BHM2003].

2. Multiagent System example

Our approach is based on a FIPA Multiagent system (Foundation for Intelligent Physical Agents), which supports specification and formation of the Multiagent oriented software. In Figure 1 we introduced the model of this system, which represents the environment of FIPA agent existence and specializes in the following necessary acts for rational agent existence in the distributed environment:

creation, activity and removal. The following specific types of agent components are: DF (Directory Facilitator), AMS (Agent Management System), ACC (Agent Communication Channel) and MTS (Message Transport System), which support management of the application agents.

Agent Management

System (AMS)

Directory Facilitator

(DF) Agent

Software

Agent Platform (AP)

Message Transport System (MTS)

Message Transport System (MTS) Agent Platform (AP)

Agent Communication

Canal (ACC)

Figure 1. Agent Management Model – the logic level

An agent is an computational process that represents an autonomous and communicating functionality of an application and it has competence of existence in an organization, that consists of other agents. MTS is a communication system between different Agent Platform (AP). FIPA supports communication between agents on the different APs from single processes including agent threads, to the fully distributed APs based on open middleware. FIPA gives programmer the interface and the different facilities for software formation.

2.1. Physical realization of communication between agents

The example in Figure 2 illustrates physical realization of communication between three agents, which have the following AID (Agent Identifier): Mngr, Bidder_1 and Searcher_1. Communication between

(3)

agents is defined with the use of an Interaction Protocol (IP). The FIPA system provides a collection of the protocols templates, which are dedicated for the different typical applications and it supports user protocol designing, which is based on the founded criterions. The interaction protocols include the following typical elements: threads service, a reaction to: lost messages, rejection messages, termination time, cancelled messages etc. The interaction protocols (IP) are expressed in the languages from the FIPA Content Language Library. The protocols templates belong to the FIPA Interaction Protocol Library Maintenance. During formation of the new interaction protocols, one has to fulfil the following duties: to use AUML language [OVDPB2001] for protocol designing, to supply documentary evidence for a new protocol and to prove the representative character of protocol.

Agent Facilitator

Directory

Agent Entries Directory

Agent Mngr

Mngr of a manager type agent is going to

communicate with Searcher_1 of a searcher type agent Message Message

Agent Bidder_1 Directory entry for Bidder_1

Agent-name: Bidder_1 Agent Locator:

Transport type: HTTP Transport-specific-address http://www.w.net/Bid1 Transport type: SMTP Transport-specific-address Bidder_1@lowcal.w.net Agent-attributes:

Attrib-1: yes Attrib-2: yellow

Language: French, German, English Preferred negotiation: bidder-net

Query

Agent Searcher_1

Message Message

Bidder_1 of a bidder type agent is going to communicate with

Searcher_1 of a searcher type agent Figure 2. Communication between three type of Agent – the physical level

2.2. Interaction protocols diagrams

UML is the basic language for modelling of the Multiagent systems, which supports building of the following models:

 use cases, modelling external requirements of application

 static, including the following models: the analysis and design agents class models, the package models of logical implementation level, the component models of physical implementation level

 dynamic: including the following diagrams: sequence, collaboration, statecharts, activity.

OCL (Object Constraint Language) is used to define the following things: constraints, invariants, pre- conditions and post-conditions of each operations, navigation paths it is used. UML is applied to the FIPA middleware for making the diagrams that model agent structure and behaviour, and the following notional changes are executed in comparison with the objects: agents activities including goals are based on their internal states and conditions defining the way of task realization.

The objects have to be controlled in an external way for executing own methods, while the agents collaborate together, act in groups and they know their own conditions and expected effects of their actions and the responsibility for their doings. The new diagrams based on the UML sequence diagrams are defined. The new elements of protocol diagrams (PD) are expressed in the meta-UML, named AUML (Agent UML) [OVDPB2001]. A protocol diagram PD represents interactions controlled by a set of messages which are exchanged between agents. These agents fulfil different roles for accomplishment of the intentional effects.

In Figure 3, a Protocol Diagram (PD) of a sample application is shown. The rectangles represent the roles fulfilled by any type of an agent and they are marked in the following way: an instance of an

(4)

gent: a type of an agent. The agent lifeline (with rectangles on a vertical dashed line) starts when the agent is created and stops when it is destroyed. AND parallelism and decisions (one up to many - exclusive–or) are applied to messages sending in the designed protocol of Figure 1. The AND parallelism is described by a vertical heavy bar with the arrows, which start at it, while the decision (exclusive-or) is described by a heavy bar with a non-filled diamond with an “x” inside the diamond and the arrows, which start at it. Since different communicative acts are allowed as an answer to an incoming message, the thread of interaction (the processing of incoming messages) has to be split into different threads of interaction. The thread of interaction defines the reaction to received messages and it is shown as a tall thin rectangle putting on the lifeline. The top of this rectangle is aligned to initiation time of the thread and the bottom is aligned with completion time of it. To simplify diagrams the parallelism and the decision can be abbreviated by omitting the splitting/merging and putting the different threads of the interaction one another on the receiver lifeline. The arrows’ labels represent the name of the instance message of the following message types, which are included in the FIPA communicative Act Library – inform, failure, propose request, etc. They are preceded by a fulfilled guard–condition of the message (e.g.[failed]) and ended in the argument list, enclosed in parentheses (e.g.(task)). A full description of the protocol diagrams is given in specification [FIPA].

2.3. The interaction protocol of examined MAS

The bidder-net protocol diagram of examined MAS is showed in Figure 3. This Mas includes following agents: manager type agent (the MTA) as the type of the Fat Agent, the bidder type agents (BTAs) as the type of the Thin Agent and the searcher type agents (STAs) as the type of the Thin Agent.

inform-of-announce(task) inform-of-announce(task)

cfp-info cfp-info

request-to-search request-to-search

request-to-search [failed]failure-search

inform-result

[failed]failure-search

inform-result

[failed]failure-search

inform-result propose-result(the_best_result)

propose-result(the_best_result)

x

inform-winner

inform-winner inform-looser inform-looser [failed]failure-result

[failed]failure-result

x x

x

x

x

x

inform-looser inform-looser

Meta-UML symbols have been used during sending messages

- - decision type: one from many

- parallel type: AND x

Mngr:

manager

Bidder_1

:bidder Bidder_2:

bidder

Searcher_1 :searcher

Searcher_2

:searcher Searcher_3 :searcher

Figure 3. The user-defined interaction protocol diagram, named bidder-net

(5)

The bidder-net protocol is mapped to the state-charts of following agents: the MTA (Figure 4), the BTA (Figure 5) and the STA (Figure 6). The statecharts diagrams capture the life cycles of agents.

Therefore the Mas will be described by the protocol diagram and by statecharts of all agents.

When the Mas starts, the BTAs and the STAs immediately have transited to the idle states (Figures 5, and 6). The MTA transits to the idle state when it has prepared the bidder-list (Figure 4). When the MTA receives on succeeding task, it informs the set of BTAs (any way two agents) about the need of task realization by sending the inform-of announce messages and transits to the begin state, where it has prepared the result_list, starts the tm timer and assign the answer variable for counting the answers from the BTAs.

When the BTA receives the inform-of-announce message from the MTA as an announcement for searching information, the transition from the idle state to the wait-for proposal state is performed.

This successor state has the optional state variable compartment, where the following variables are assigned: the termination time tb, searcher_list including the list of STAs, result=0 for counting responses from STAs, the_ best_result=0 for indicating the best information received from STAs.

The MTA sends the cfp1 message to the BTAs as a proposal for searching information and transit to the receive-results state.

The BTA sends the request-to-search message to all STAs after receiving the cfp1 message from the MTA and transits to the wait-for-result state. In this state, there is the optional activity compartment, where events and actions are listed.

When the STAs have received the request-to-search message they transit to the search state and begin to find information (the find activity). When they finish searching with successes, they have sent the inform-result message or in opposition to this situation, they have sent the failure-search message.

Then they transit to the idle state, waiting for new search task.

The BTA remains in the wait-for-result state as long as it can receive responses from STAs: the good ones by the inform- result message and the bad ones by the failure-search message as the events. The conditions for performing these events are defined by the guard-conditions as true valuated Boolean expressions. Both events can be serviced until the termination time tb has not elapsed (time<tb) and the BTA has not received good or bad responses from all STAs (length(searcher_list)>results). When inform-result or failure-search has occurred the BTA counts the bad or good response (result++).

Only when inform-result has occurred the BTA selects the best result (the_best_result=max(info, the_best_result)). When the value of these guard-conditions is false (length(searcher_list)==results or/and time==tb), the BTA changes state to the wait-for-mngr one after sending one of the following messages to the MTA: the failure-result message when additionally the BTA has not received any good responses (the_best_result==0) or otherwise the propose-result one.

When the MTA remains in the receive-result state as long as it can receive proposals of results from the BTAs: the good ones by the proposal- result message and the bad ones by the failure-result message as the events The conditions for performing these events are defined by the guard-conditions as true valuated Boolean expressions. Both events can be serviced until the termination time tm has not elapsed (time<tm) and the MTA has not received good or bad responses from all BTAs (length(bidder_list)>anserws). When propose-result or failure-result has occurred the MTA counts the bad or good results (anserws++). Only when propose-result has occurred the MTA adds result to the result_list (add(result_list, the_best_result)). When the value of these guard-conditions is false (length(bidder_list)=anserws or/and time==tm), the MTA changes state to the evaluate one. When the result_list is not empty and includes best information, the MTA has chosen the one winner bidder from the evaluated the result_list (evaluatebid(result_list)) - the rest of the BTAs are the loosers. All the BTAs are loosers when the result_list is empty. The MTA has sent the inform-winner message to one BTA when the result_list is not empty and includes best information or/and transit to the inform- looser state. In this state it has sent the inform-looser messages to all looser BTAs and transit to the idle state.

The BTA changes state from wait-for-mngr to idle when it has received the inform-winner or the inform-looser message from the MTA. The first message can be received by the BTA when it has sent the good response, which is the best of good responses of BTAs. Otherwise, the BTA receives the second message, because it has sent the failure-result or its propose_result was not the best one of the good responses of the BTA or the MTA has received no responses from the BTA before the

(6)

termination time tm. Then the BTA transit to the idle state

2.4. Statecharts for three types of agents

The agent statecharts diagram based on the user-defined interaction protocol named the bidder-net (Figure 3) is shown in Figures 4, 5, 6. They are described in section 2.2.

Figure 4. Statecharts of the MTA

Figure 5. Statecharts of the BTA

Figure 6. Statecharts of the STA

(7)

3. Performance statecharts

First, a definition of statecharts (without time) will be shown, and then a definition of the performance statecharts, which contains the definition of statecharts.

Statechart [BHM2001] is a graph defined as six tuple:

S = <BoxN, childB, typeB, defaultB, ArcN, Arc>, where:

BoxN is finite set of state names, which are nodes of the graph depicted as round-edged rectangles named boxes.

childB BoxN BoxN is a hierarchy relation: <b1, b2>childB means that b2 is a "child" of

"father" b1. Set BoxN with relation childB defines a tree of states <BoxN,childB>. The root r of the tree has no parents, leaves have no children.

typeB : BoxN {PRIM, XOR, AND} is a function which assign a type to each box. The root r is of type XOR (an sequential automaton), the leaves are of type PRIM, and other boxes may be either of type XOR or AND (state with orthogonal substates).

defaultB : BoxN 2BoxN is the partial function that gives the default for each box. The default for a XOR box is a set with exactly one box of its children (an initial state of the automaton), while the default for an AND box is the set of all its children. The default for a PRIM box is the empty set.

ArcN is a finite set of names for arcs. BoxN  ArcN =.

Arc BoxN ArcN BoxN is the set of arcs. An arc Arc is a triple <b1,a,b2> with source() = b1, and target( ) = b2, and name() = a. It is assumed that arcs are uniquely identified by arc names, therefore we also will use an inverse function name-1(a) = . Arcs depict transitions between states.

A structural configuration of the statechart S is a subset of boxes B  BoxN such that rB and for each box bB if typeB(b) = AND then all its children are in B, and if typeB (b) = XOR then exactly one of its children is in B.

The performance statechart PS [BHM2001], [BHM2003] is a triple: PS =<S, A, L>, where:

S is a statechart,

A is a set of attributes. An attribute has a name and value, i.e. boolean, integer, real or time type.

L is a labelling function, which gives an interpretation for arcs. With each transition Arc such that =<b1,a,b2>, it associates a label l. The label l is a six tuple:

l = < un, pr, te,[gc], al, de >, where:

un is a probability distribution function. The function defines opening delay of the associated arc with respect to the time of entry to the source state of the arc provided the arc is opened.

That is the earliest time, after which the transition to the destination state can occur. The set of opening events will be designed as UnbEVENT = {unb(a) : a ArcN}, where unb(a) is an event of opening of the arc named a.

prNat={1,2,...} is a priority of the arc; the greater number the greater priority of the arc.

te=name(formal_parameters_list) is an optional trigger event. Its reception by the statechart in the source state makes the transition along the arc a eligible to fire, provided its guard condi- tion gc is satisfied and the arc is opened. The absence of te (depicted with '-') means that the arc may fire immediately after opening. name ExtEVENT IntEVENT, where ExtEVENT is a finite set of external events and IntEVENT is a finite set of internal evnts.

gc is a guard condition. It is a Boolean expression that is evaluated when transition is triggered by event te, or in absence of te in the label, in any moment after the arc is opened.

The transition from the source state to the destination state of the arc can fire when:

o te is not empty: delay time is passed, te exists at least after the delay time, guard gc evaluates to true.

o te is empty: delay time is passed, guard gc evaluates to true after the arc is opened.

The transition fires as soon as the above is fulfilled.

al=<a1,...,an> is a list of actions. Actions are atomic and executed immediately in the same order they are specified. An action may change valuation of attributes or generate an immediate event. Sets of attributes modified by arcs in orthogonal states has to be disjoined.

Generated events are of ge=name(actual_parameters_list) form, where nameIntEVENT.

(8)

de is a list of delayed internal events of the form <<ge1, pdf1>, ..., <gen, pdfn>>, where gei=name(actual_parameters_list) is a delayed event, nameIntEVENT, and pdfi is a probabili- ty distribution function, which determines the time of generation of the event gei in the future with respect to the time of passing along the given arc.

The opening delay of the arc =<b1,a,b2> is introduced to model some activities within a state b1

before its exiting through the arc a. The immediate and deferred events are introduced to model results of actions, which are initiated during passing between boxes through the arc a.

Example 1:

In the state search at the statechart of Figure 6, Searcher provides an operation find() looking for information. During the prerformance investigations, only the time of the operation is modelled. The label s3 of the performance statechart of the Searcher (Figure 10) is s3: <range(0,2),1,-,[resp],< >,

< < i_r(akt_task_s1,1),erl(2,1) >>>. Random variable of the realisation time of the operation find() is expressed as a uniform probability distribution function at the range [0,2). Priority (pr) of the arc is equal to 1. The absence of trigger event (te=-) means that the transition along this arc will take place immediately after the arc will be opened and the guard fulfilled. The guard (gc) expression is equal to boolean attribute resp. As shown in section 4, this attribute represents the result of operation find(),

"true" value means, the result is positive, "false" – negative. The action list (al) is empty, what means that no immediate actions are taken during the transition. Delayed event list (de) contains one pair:

< i_r(akt_task_s1,1),erl(2,1) >, where i_r express' the transmission of the inform-result message by Searcher to Bidder ( Figure 6). The attribute akt_task_s1 represents the number of actually performed task, while the second attribute express' the address of the Bidder being addressee of the message. The transmission time is modelled by the random variable with two stage Erlang's distribution with parameter =1 for each stage.

Configuration of the PS is the pair: Conf = <ComConf, EvConf>, where ComConf is computational configuration and EvConf is event configuration. Computational configuration is the pair: ComConf =

<SConf, AConf>, where Sconf is structural configuration defined as for the statechart, and Aconf is the valuation of attributes.

Event configuration of PS is defined as the quadruple: EvConf =<BA,UA,IE,DE>, where:

BA is a list <a1,t1>,...,<ai,ti>,...,<an,tn> of closed arcs, where a1,…,ai,…, an ArcN are names of arcs relevant to a structural configuration SConf, and t1,…,ti,…,tn Time are arc opening times.

The time ti = tentry + re(un), where tentry is the time of entry to the source state of the arc named ai, and re(un) is realization of a random variable defined by the probability distribution function un for this arc. The time ti  t defines the moment in the future when the arc named ai will be opened, for i = 1,…, n.

UA ArcN is the set of names of opened arcs. UArelevant(P), where relevant(P) is the set of arcs relevant to the configuration P.

IE IntEVENT is the set of internal events.

DE is the list of delayed events in form <ge1,t1>,...,<gei,ti>,...,<gen,tn>, where gei is the generated event, while t1,...,ti,...,tn are the moments in the future when the events will be generated. The time ti = tpass + re(pdfi), where tpass is the time of passing along the arc, and re(pdfi) is realization of a random variable defined by some probability distribution function pdfi. The function is such that

<gei, pdfi> belongs to a list of delayed events de for some arc, which was passed.

The PS changes its configuration in time. Transitions are initiated by an occurrence of an event eEVENT. Events can be external eExtEVENT, internal eIntEVENT or opening an arc eUnbEVENT. Timed transitions cause passing of time, while immediate transitions occur without passing of time. When PS is in configuration <ComConf,EvConf> at the moment t, and the event eEVENT occur at the moment t', PS goes into new configuration <ComConf',EvConf'> at the moment t', what is descripted as follows: <ComConf,EvConf> e <ComConf',EvConf'>.

Example 2:

Let us assume that at the moment t=1000, the component modelling a searcher goes into the state report (Figure 10). Two pairs are added to the list of closed arcs (BA). If we assume that the value re(range(0,2))=1.5 was generated, the pairs are as follows: <s3, 1001.5> and <s4, 1002>. At the moment t=1001.5, the pair containing arc name s3 is deleted from the list BA and the arc name s3 is added to the set of open arc's names (UA). Then valuation of attribute resp, which plays role of guard condition of arc named s3, is checked. If the guard is fulfilled, the transition along the arc occurs. The

(9)

set of immediate internal events (IE) stays unchanged. The pair containing the event i_r is added to the list of delayed events (DE). If the value re(erl(2,1)=0.3 was generated and the value akt_task_s1=300, the pair is as follows: <i_r(300, 1), 1001.8>. At the moment t=1001.8 the pair is deleted from the list DE and the event i_r(300,1) is added to the set IE.

4. Performance model of analysed Multiagent systems

Now we will present the performance model of the system with three hierarchy levels. This model is expressed by performance statecharts which are mapped from statecharts, described in section 2.3 and 2.4. Some details that do not have impact on analysed performance characteristics are omitted. For example, the inform-loser and inform-winner messages from the MTA to BTAs are neglected. In description in Section 2, it has been implicitly supposed that messages are received by a receiver in the same order as they have been sent by a sender. Protocol TCP/IP is an example of the protocol that satisfies this requirement. In our computational experiments, a network is not explicitly modelled.

However, some network performance parameters have to be taken into account.

Agent Mngr

Agent Searcher_12 Agent

Bidder_1 E2

Agent

Bidder_2 Agent Searcher_23

E2 E2

E2

E2

U

E2

Agent Searcher_11 E2

E2

E2

U

E2 U

Figure 7. The examined multiagent system

Two Multiagent systems are examined. In the first one, there are three agents at the execution level while in the second, there are five ones at this level. The first system is illustrated by Figure 7. The performance statecharts of the two examined multiagent system contains AND type state with substates, representing the MTA, the BTA, three STAs (the first MAS) or five STAs (the second MAS).

4.1. Description of performance statecharts of examined MASs

Now, the description of performance statecharts of examined MASs is performed (Figures: 8, 9, 10).

All labels includes the probability distribution time delays of opening arcs equal to zero and priorities of arcs equal to 1 besides the labels s3 and s4 of the performance model of the STA (Figure 10). The probability distribution time delays of opening arc s3 is modeled by the uniform distribution range[0,16) and s4 is equal to 16 (the maximal time of uniform range{0,16)).

At subsequent figures performance statecharts for different type agents are given. Most events at these figures have parameters. First of them – “t_n” is the task number associated with the event. If there is the second parameter, it expresses BTA address “b_n” or STA address “s_n”. In order to distinguish the events, the following symbols are used: “m” for Mngr, “b1”, “b2” for BTAs and “s1,”s2”, “s3”

for STAs.

m1:<0,1, task() , [], <task_nr++ >, < < i_o_a(task_nr,1),erl(2,1) >,

< i_o_a(task_nr,2),erl(2,1) > > >

m2: <0,1,-, [], < answers=0, win=0 >,

< < c_f_p_i(task_nr,1),erl(2,1) >, < c_f_p_i (task_nr,2),erl(2,1)>,

< t_o_m (task_nr) , tm >> >

m3: <0,1, f_r (int t_n;), [t_n==task_nr], < answers++ >,< > >

m4: <0,1, p_r (int t_n;) , [t_n==task_nr], < answers++, win=1>,< >>

m5: <0,1,-, [answers==2], < >, < > >

m6: <0,1, t_o_m (int t_n;) , [t_n==task_nr],< >, < > >

Figure 8. Mngr performance model of the MTA begin

receive_results idle m1

m6

m5 m2

m4 m3

(10)

When the Mas starts, the MTA, the BTAs and the STAs immediately have transited to the idle states (Figures 4, 8, 5, 9 and 6, 10). When the MTA receives on succeeding task, it informs the set of BTAs (any way two agents) about the need of task realization by sending the inform-of announce message.

This fact modeled by arc with the label m1 (label m1:<0,1,task(),[],<task_nr++>, << i_o_a(task_nr,1), erl(2,1)>,< i_o_a(task_nr,2), erl(2,1)>>>) describes the transition to the begin state by the following components: the trigger event indicates the task message sent by the MAS, guard condition is empty, the list of action includes the counting the variable task_nr indicating the number of user task and the list of delayed internal events includes the inform-of-announce message (i_o_a) sent by the MTA to BTA.

When the BTA receives the inform-of-announce message (i_o_a) from the MTA as a trigger event, the transition b1 from the idle state to the wait-for proposals state is performed (label b1:<0,1, i_o_a(int t_n, b_n;), [b_n==1], <akt_task_b1=t_n>,<>>). The guard condition of b_n indicates the number of the BTA and the list of action includes the variable akt_task_b1 which is the task number t_n of the first BTA (b1) associated with the event.

When the MTA transit to the state receive_results after it sends the cfp1 message, the label m2 (m2:

<0,1, [], <answers=0, winner=0>, << c_f_p_i(task_nr,1), erl(2,1)>, <c_f_p_i(task_nr,2), erl(2,1)>,

<t_o_m(task_nr), tm >>>) is described by the following things: assigning the variables answers and winner, the list of delayed internal events includes: the cfp1 message (c_f_p_i) sent by the MTA to BTA and the terminaton time tm. The termination time tm is the trigger event t_o_m, that makes the transision m6 (label m6: <0,1, t_o_m (int t_n;) , [t_n==task_nr],<>, <>>) and the MTA transits to the idle state without responses from the BTAs.

b1:<0,1,i_o_a(int t_n,b_n;) , [b_n==1], < akt_task_b1=t_n >, < > >

b2: <0,1,c_f_p_i_r (int t_n,b_n;) , [b_n==1 && t_n==akt_task_b1], <results=0; best_result=0>,

< < r_t_s(t_n,1),erl(2,1) >, < r_t_s(t_n,2),erl(2,1) >, < t_o_b1(t_n),tb >> >

b3: <0,1,i_r (int t_n,b_n;) ,[b_n==1 && t_n==akt_task_b1],< results++; best_result=1>,< > >

b4: <0,1, f_s(int t_n,b_n;) ,[b_n==1 && t_n==akt_task_b1],< results++ >, < > >

b5: <0,1, t_o_b1(int t_n;) , [t_n==akt_task_b1],< >, < > >

b6: <0,1,-, [results==2], < >, < > >

b7: <0,1,-, [best_result==1],< >, < <p_r (akt_task),erl(2,1) > > >

b8: <0,1,-,[best_result==0],< >, < <f_r (akt_task),erl(2,1) > >

Figure 9. Bidder_1 performance model of the BTA

The c_f_p_i event is the c_f_p_i_r trigger event of the transition with label b2 (b2: <0,1,c_f_p_i_r (int t_n,b_n;), [b_n==1 && t_n==akt_task_b1], <results=0; best_result=0>, << r_t_s(t_n,1), erl(2,1)>,

<r_t_s(t_n,2), erl(2,1)>, < t_o_b1(t_n), tb>>>). The BTA transits to the wait_for_res state and wait for reaction on the list of the delayed internal events: r_t_s, which it has sent as the request_search messages to the STAs and the timer t_o_b1. The event t_o_b1 denotes that the maximal time tb when agent Bidder_1 is waiting for responses from the STA has elapsed. The termination time tb generates the trigger event t_o_b1 of label b5 (b5:<0,1,t_o_b1(int t_n;), [t_n==akt_task_b1],<>, <>>).

The r_t_s event is the trigger event of transition s1 (s1: <0, 1, r_t_s(int t_n,s_n;), [s_n==1],

<akt_task_s1=t_n>, <>>) of the STA model (Figure 10). When the STA has made transition s1 it transits to the search state. Then the STA immediately transits to the report state when transition s2 occurs (s2:<0,1,-,[],<resp=(range(0,1)_f_rate)>,<>>). The activity resp=(range(0,1)_f_rate indicates the searching a data base and finding a required information with probability _f_rate - it models activity find() of the STA statecharts (Figure 6). This action generates the random variable resp whose

idle

report_b wait_for_res wait_for_proposals b1

b8 b7 b2

b5 b6 b3

b4

(11)

value is equal to 1 with probability _f_rate and equal to 0 with probability 1-_f_rate. This random variable occurs in guards of labels of arcs s3, s4 in forms: [resp], [!resp]. Making the transition s3 (label s3:<range(0,16),1, [resp],<>,<<i_r(akt_task_s1,1), erl(2,1)>>>) or s4 (label s4: <16,1, [!resp],

<>,<<f_s(akt_task_s1,1), erl(2,1)>>>) the STA transits to the idle state. The transition s3 occurs, when the arc is opened after the time modelled by uniform distribution range[0,16) and it generates the delayed internal event i_r (sent the inform_result message to the BTA). Alternatively, the transition s4 makes, when the arc is opened after the maximal time of uniform distribution range[0,16) and it generates the delayed internal event f_s (sent the failure_search message to the BTA). After making transition s3 or s4 the STA transits to the idle state.

The i_r event generates the trigger event of the b3 transition (label b3: <0, 1, i_r(int t_n,b_n;), [b_n==1

&&t_n==akt_task_b1],< results++; best_result=1>,<>>). The f_s event generates the trigger event of the b4 transition (label b4: <0,1, f_s(int t_n,b_n;),[b_n==1 && t_n==akt_task_b1], <results++>, <>>).

The quard conditions of transitions b3 and b4 verifies the number od the BTA and the number of task.

The activities count the results and indicate the best_result. When termination tb has elapsed the transition b5 occurs or when the BTA receives all responses from STAs transition b6 occurs (label b6:

<0,1,-, [results==2], <>, <>>) - and then the BTA transits to the report_b state.

When the b7 transision occurs (label b7: <0,1, -, [best_result==1],<>, <<p_r(akt_task), erl(2,1)>>>), the delayed internal event p_r is generated by sending the propose-result message to the MTA which generates the trigger event of the transition m4 (label m4: <0,1, p_r (int t_n;), [t_n==task_nr],

<answers++, win=1>,<>>). The activities of the transition m4 counts the good responses from the BTAs (answers++) and assgin 1 to the win variable.

When the b8 transition occurs (label b8: <0,1,-,[best_result==0],<>, <<f_r (akt_task), erl(2,1)>>), the delayed internal event f_r is generated which generates the trigger event of the transition m3 (label m3:

<0,1, f_r (int t_n;), [t_n==task_nr], <answers++>,<>>). The activities of the transition m3 counts the failure responses from the BTAs (answers++). After making transition b7 or b8 the BTA transits to the idle state.

The MTA makes transiotion m5 (m5: <0,1,-,[answers==2],<>,<>>), when it has received all responses from the BTAs or m6 (m6: <0,1, t_o_m (int t_n;), [t_n==task_nr],<>,<>>), when the termination time tm has elapsed (the trigger event t_o_m). Then the MTA transits to the idle state.

s1: <0,1, r_t_s(int t_n,s_n;), [s_n==1], < akt_task_s1=t_n>,< >>

s2: <0,1, -, [], < resp=(range(0,1) _f_rate) >,< >>

s3: <range(0,16),1,-,[resp],< >, < < i_r(akt_task_s1,1),erl(2,1) >>>

s4: <16,1,-, [!resp],< >, < < f_s(akt_task_s1,1),erl(2,1) >>>

Figure 10. Searcher_1 performance model of the STA

The Figure 11 describes the relationship between the elements of the STA statecharts and the STA performance statecharts.

s3: <range(0,2), 1, -, [resp], < >, < < i_r(akt_task_s1,1), erl(2,1) >>>

l = < un, pr, te, [gc], al, de >

funkcja rozkładu

prawdopodobieństwa czasu odblokowania

łuku

dozór zdarzenia

przełączające

priorytet łuku lista odłożonych

zdarzeń wewnętrznych lista akcji

Figure 11. Mapping the statecharts of STA into the performance statecharts search

report idle s1

s2 s4

s3

probability distribution function of opening delay of the associated arc

the priority of an arc

the trigger events

the guard condition

the list of actions

the list of delayed internal events

(12)

4.2. Performance parameters and metrics of examined MASs

At Figures 8-10 performance statecharts for the all agents of two examined MASs are given. The performance statecharts contains: the termination times, the random variables modelling the time parameters and behavioural of the agents and netware.

The termination time is modelled by the time of timer which has elapsed before the agent has received the response from another agent.

The basic parameters of the performance statecharts model the messages transmission time. They are the transmission times between the MTA and the BTAs and between the BTA and STAs through wide area network (WAN) are expressed by two stage Erlang distribution with parameter =1 for each stage. Hence, the mean transmission time of messages is equal to 2 time units. For example, the messages transmission time of cfp1 messages, sent when the transition m2 (Fig.10) has be made. This distribution is denoted by the symbol erl(2,1) in arc labels.

Another performance parameters characterized activities times of agents are:

1. the searching time of the STA described by the uniform distribution over the interval [0,16), i.e., the mean searching time is equal to 8 time units, while the maximal time is equal to 16. This distribution is denoted by the symbol range[0,16) in arc labels.

2. the probability f_rate that the STA finds required information described by the uniform distribution over the interval [0,1), i.e., the mean probability is equal to 0.5 units, while the maximal probability is equal to 1.

The described MAS is characterized by the following statistical metrics: probability pr and the mean time t_mn of receiving the good response by the MTA.

Each task requested by the MTA have caused the number of information searching by STAs, which end with good response from BTAs or failures or no responses. Any good response from STAs have caused the good responses and properly, failures or no responses from STAs have caused the failure sending from BTAs to the MTA. The MTA finishes task by selecting the good response from any good received responses or by indicated the bad response from bad received results (failure or no responses). One response from a STA provided: it will be received by a BTA before termination time tb and propose-result message from th BTA will be received by the MTA before tm is sufficient to receive a good response by the MTA.

Probability pr of receiving a good response by the MTA is the ratio of the number of tasks which have ended with receiving a good response by the MTA divided by the number of tasks, that have been initiated by the MASs system.

The time of receiving a good response by the MTA is calculated from the time instant when the MTA has sent the first inform-of-announce message till time instant when the MTA has selected the winner.

As average value, the mean time t_mn of receiving a good response by the MTA is calculated from the time of receiving a good response by the MTA.

5. Tuning of time parameters of multilevel agent system

The goal of tuning experiments is to find such BTA and MTA termination times that the optimal values of performance metrics are reached for. In the following experiments, dependence of such performance metrics as: probability or mean time t_mn of receiving a good response by MTA as a function of: BTA or MTA termination times (tb or tm), and _f_rate will be analysed and ratio pr/t_mn. Additionally, comparision of different MASs will be done.

Then dependence of performance metrics on: BTA and MTA termination times for systems with MTA, BTAs, and STAs will be considered. Finally, comparison of different systems will be done.

In the presented simulation experiment results, results of tuning of the MASs are given. Different values of the termination times tm, tb are parameters in the tuning process. MASs are compared with respect to the following characteristics: probability pr of receiving a good response by the MTA and mean time t_mn of receiving a good response by the MTA.

(13)

5.1. Dependance of performance metrics pr, t_mn on BTA and MTA termination times

Figures 12 and 13 characterise the system with one manager type agent (MTA), two bidder type agents (BTAs) and three searcher type agents (STAs) (Figure 3 and Figure 7). Figure 12 has been obtained for the termination time of the MTA (denoted by tm) equal to 300 (very large). The termination time of the BTA is denoted by tb.

From Figure12a, it can be concluded that increasing of tb over 20 time units increases slightly the probability of receiving the good response by the MTA and the mean time of receiving the good response by the MTA. The reason is as follows. The mean time of transmission of messages between the BTA and the STA is equal to 2 time units (see Section 4). The maximal data base searching time is equal to 16 time units (see Section 4).

0 0,2 0,4 0,6 0,8 1

5 10 15 20 25 30

tb pr

_f_rate=0.6 _f_rate=0.9 _f_rate=0.1 _f_rate=0,3

a)

10 15 20 25 30

5 10 15 20 25 30

tb t_mn

_f_rate=0.6 _f_rate=0.9 _f_rate=0.1 _f_rate=0.3

b) Figure 12. a) Probability (pr), b) the mean time (t_mn)

of receiving the good response by the MTA as a function of the termination time of the BTA for different probabilities _ f_rate of finding required information by the STA

Therefore, the mean time between the time instant when the BTA is sending a message to the STA and the time instant when the BTA is receiving a response from the STA for the maximal searching time is equal to 20 time units. For small probabilities _f_rate of finding required information by the STA equal to 0.1 or 0.3, the probability pr of receiving the good response by the MTA is not satisfactory.

For the probabilities _f_rate equal to 0.6 or 0.9, the probability pr for tb20 time units is about 0.9 or greater. For probability _f_rate0.6 and tb20, three STAs guarantee much greater probability than one STA. From Figure 12b, it is clear that if probability _f_rate is smaller then the mean time (t_mn) of receiving the good response by the MTA is greater. The reason is as follows. If _f_rate is smaller then the probability that the STA analyses all data base is greater. Therefore, the mean time of searching required information is greater and, finally, the mean time of receiving the good response by the MTA is greater.

Figure 13 has been obtained for tb equal to 17 time units tb is choosen to be equal to 17 time units, because it gives pr close to maximal value of pr but t_mn for tb=17 is smaller than t_mn for tb>=20 time units. From this figure it can be seen that increasing of the termination time tm over 24 time units does not increase considerably probability pr and the mean time t_mn of receiving the good response by the MTA. The reason is as follows. The mean time of transmission of messages between the MTA and the BTA is equal to 2 time units. The message cfp-inform (Figure 3) have to be received by the BTA after receiving the message inform-of-announce(task). Hence, mean value of message transmission overhead is greater than 4 time units. The time tb is equal to 17 time units. Before the time tm will elapse, the MTA have to wait for messages from two BTAs.

Therefore, the mean value of random variable being the time between the time instant when the MTA is sending a message to the BTA and the time instant when the MTA is receiving a response from the

(14)

BTA provided maximal searching time (16 time units) is greater than 21 time units the MTA termination time.

Mean value of random variable being the maximum of two considered random variables with mean values greater than 21 time units is significantly greater than 21 time units; it can be concluded that it is greater than 24 time units. For _f_rate=0.6, tb=15 time units is not sufficient to get the probability pr closed to 0.

a) b)

Figure 13. a) Probability (pr), b) the mean time (t_mn)

of receiving a good response by the MTA as a function of the termination time of the MTA for different probabilities _ f_rate of finding required information by the STA

Figure 14a has been obtained for tm=300 (large value). Let us analyse case: _f_rate=0.9. It can be seen that probability pr is close to 1 for tb15 time units. When _f_rate=0.9 then usually one STA is sufficient to give required information. The mean data base searching time provided required information is in the data base is equal to 8 time units because probability distribution of the searching time is uniform over the interval [0,16) (see Section 4). The mean transmission time of messages between the BTA and STA is equal to 2 time units. Therefore, the mean time between sending a message from the BTA and receiving a good response by the BTA is equal to 12 time units. Hence, for tb15, the BTA has usually required information.

For _f_rate=0.6 and tb20 time units, the probability pr is close to 1. The reason is as follows. For three STAs, the probability that at least one STA does not find the required information is equal to:

1-0.63=1-0.22=0.78.

Therefore, in most cases, searching time for at least one STS is equal to 16 time units. Hence, in most cases, for at least one BTA, time of waiting for responses from STAs is about 16+2+2=20 time units , and tb=15 time units is not sufficient to give pr close to 1.

a) b)

Figure 14. Probability pr of receiving the good response by the MTA as a function of probability _f_- rate of finding required information by the STA for different termination times

a) tb, b) tm 0

0,2 0,4 0,6 0,8 1

18 23 28

tm pr

_f_rate=0.6 _f_rate=0.9 _f_rate=0.1 _f_rate=0.3

17 18 19 20 21 22 23

18 20 22 24 26 28

tm t_mn

_f_rate=0.6 _f_rate=0.9 _f_rate=0.1 _f_rate=0.3

0 0,2 0,4 0,6 0,8 1

0,1 0,3 0,6 0,9

_f_rate pr

tb=5 tb=10 tb=15

tb=20 tb=25 tb=30

0 0,2 0,4 0,6 0,8 1

0,1 0,3 0,6 0,9

pr

_f_rate

tm=18 tm=20 tm=22

tm=24 tm=26 tm=28

(15)

Figure 14b has been obtained for tb=17. Let us analyse case: _f_rate=0.9. It is clear that probability pr for tm20 time units is considerably greater than probability pr for tm=18 time units.

For _f_rate=0.9, for three STAs, the probability that at lest one STA does not find the required information is equal to:

1-0.9 3=1-0.73=0.27,

i.e., in 0.27 cases, searching time for at least one STA is equal to 16 time units. Because searching time for successful searching has uniform distribution over the interval [0,16), so in more than in 1/3 cases, the waiting time is equal to the termination time tb=17. Mean time of message transmission between MTA and BTAs is greater than 4. Therefore, in more than in 1/3 cases tm=18<tb+4=17+4=21. However, in these cases, tm=22 is usually sufficient.

5.2. Comparison of system with regard to the metrics pr, t_mn

Next experiments have been executed for two systems. The first one is system illustrated by Figure 3 and Figure 7 with tb=17 time units. The second one is the following:

 the first BTA co-operates with two STAs,

 the second BTA co-operates with three STAs.

Therefore, there are five agents of the searcher type in the second system. Additionally, for the second system, two cases have been examined: 1. tb=17, 2. tb=15 time units. Comparison of the above three systems for _f_rate=0.6 is given in Figure 15.

a) b)

Figure 15. Comparison of three systems: 3_STAs system with three STAs and tb=17 , 5_STAs system with five STAs and tb=17, 5a_STAs system with five STAs and tb=15

for probability _f_rate=0.6: a) probability pr b) the mean time t_mn.

Let us compare first system (three STAs) with the second one (five STAs) when tb=17 for both systems. From Figure 15a) we see that for tm<21.5, probability pr for the first system is greater while for 21.5<tm, this probability for the second system is greater. From Figure 12a), we see that for: three STAs, tb=17, tm=300, _f_rate=0.6, probability pr is equal to 0.82. From additional experiments, we have obtained that for: five STAs, and the same other parameters, pr is equal to 0.95. Therefore, the probability pr is greater for five STAs because it is more probable to get a good response from five STAs than from three STAs. When the termination time tm =300 then almost all messages sent between the MTA and the BTA reach the target. We see in Figure 15 that if tm =28 then probabilities pr for both systems are very close to probabilities pr for both systems for tm =300. It mean that for tm=28, almost all sent messages between the MTA and the BTA reach the target. When the termination time tm is decreasing (to tm=18) then probability pr is decreasing considerably. For tm>21.5, results of work of five STAs are often sent to the MTA. Therefore, probability pr for five STAs is greater than for three STAs. However, the time of receiving by the BTAs the responses from five STAs is greater than the time of receiving by the BTAs the responses from three STAs and more messages from BTAs for system with five STAs cannot be received by the MTA before termination time tm. Therefore, for the time tm<21.5 the system with three agents gives greater probability pr.

When comparing second system (five STAs) for tb=17 with the same system for tb=15 we see (Figure 0

0,2 0,4 0,6 0,8 1

18 23 28

tm pr

3_STAs 5_STAs 5a_STAs

17 18 19 20 21 22 23

18 20 22 24 26 28

tm t_mn

3_STAs 5_STAs 5a_STAs

(16)

15a) that this system with tb=15 gives greater probability pr for tm<24.

When comparing the above systems with respect to the mean response time (Figure 15b), we see that the second system with tb=15 is the best while the second system with tb=17 is the worst.

The reasons for these relations are as follows. For the same tb, if the number of STAs is greater then the mean time of receiving of the good response is greater. For the same number of STAs, if the tb is greater then the above mean time is greater.

Now let us compare the system with three STAs and tb=17 time units with the system with five STAs and tb=15 time units.

For the MAS with three STAs, the probability that at least one STA does not find the required information is equal to 0.78 (for _f_rate=0.6). Because the mean transmission times between the BTAs and the STAs are equal to 2 time units, so the STAs should find the required information in tb- 22=17-4=13 time units (it is an approximation). Probability distribution of the time of successful searching is uniform over the interval [0,16). Probability that the searching time, for successful searching is greater than 13 time units, is equal to 3/16=0.29. Therefore, the probability, that a BTA is waiting until the termination time has been elapsed, is close to 1.

For the MAS with five STAs, the probability that at least one STA does not find the required information is equal to:

1-0.6 5=1-0.08=0.92.

For this system, the probability, that a BTA is waiting until termination time has been elapsed, is greater than this probability for the MAS with three STAs and tb=17, and is close to 1, too.

Hence, for both systems, waiting time for responses from the STAs is very often equal to the termination time tb. Because the termination time tb for the MAS with five STAs is smaller, so the t_mn is smaller for this system.

a) b)

Figure 16. Dependence between the mean time t_mn of receiving the good response by the MTA and probability pr of receiving the good response by the MTA for systems:

3_STAs system with three STAs, tb=17 and tm=18-28, 5_STAs system with five STAs, t b=17 and tm=18-28, 5a_STAs system with five STAs, tb=15 and tm=18-28

for probabilities: a) _f_rate=0.6, b) _f_rate=0.9 From Figure16, for the system with given parameters it can be done:

 for given probability of receiving the good response by the MTA, one can find the mean time of receiving the good response by the MTA,

 for given the mean time of receiving the good response by the MTA one can obtain probability of receiving the good response by the MTA.

5.3 Comparison of MASs with regard to metric pr/t_mn

Until now we have considered two metrics: probability pr of receiving of a good response and mean time t_mn of receiving of this response. There is usually a contradiction. Let us analyse Fig. 12, 15,

17 18 19 20 21 22 23

0,4 0,6 0,8 1

pr t_mn

3_STAs 5_STAs 5a_STAs

17 18 19 20 21 22 23

0,4 0,6 0,8 1

pr t_mn

3_STAs 5_STAs 5a_STas

(17)

respectively. We see that for constant _f_rate, if the tb, tm, respectively, is decreasing then the t_mn is decreasing (good feature), but pr is decreasing too (bad feature). We would like to have such a case that : the pr is as great as possible (very close to 1) and the t_mn is as small as possible. Therefore, it is difficult to choose such values tb, tm that would be satisfying when analysing these two metrics separately. Hence, we formulate an aggregated quality metric:

mn. _ t max pr Q

Now we compare MASs, with different numbers of STAs, with regard to the above metric. We analyse systems with two BTAs. Each BTA cooperates with a number of the STAs. These systems are identified by the pairs i-j, where i, j, respectively, is the number of the STAs that cooperate with the first, second, respectively, BTA. At the begining, for each MAS, we try to find optimal values of the termination times tb, tm, i.e., values that maximise the ratio pr/t_mn. It is not simple to find such values because differences between many values of the ratio pr/t_mn are very small (see Fig. 17). The presented experiments are executed for _f_rate=0.6.

0,03 0,05 0,07 0,09

2_2 4_4 6_6 8_8 10_10 12_12 14_14 16_16 18_18 20_20 22_22 24_24 26_26 28_28 30_30 32_32 34_34

arrang.

p/t max(5)

Fig. 17. Ratio pr/t_mn as a function of the termination times: tm, tb of the MAS 3-3

Fig. 18

Fig. 18. Dependence of the quality metric Q as a function of the numbers i,j of the STAs associated with the BTAs

In order to compare the MASs with the system containing one STA, the system with one MTA and one STA, and with such transmission times between the MTA and the STA that are described by Erlang distribution with four stages with =1 is examined. From Fig. 18, it can be concluded that if the total number of STAs (i+j) is greater then the value of the quality metric Q is of greater value.

At Fig. 19 and Fig. 20, respectively, there are dependencies of the probability pr and the mean time t_mn , respectively, as a function of the numbers i,j of the STAs for values tb, tm, that maximise the ratio pr/t_mn.

0,5 0,6 0,7 0,8 0,9 1

2_2 4_4 6_6 8_8 10_10 12_12 14_14 16_16 18_18 20_20 22_22 24_24 26_26 28_28 30_30 32_32 34_34

arrang.

p max(5)

Fig. 19 Dependence of the probability pr of receiving of a good response as a function of the numbers i,j of the STAs for such values tb, tm, that maximise the ratio pr/t_mn

Cytaty

Powiązane dokumenty

It is proved that a doubly stochastic operator P is weakly asymptotically cyclic if it almost overlaps supports1. If moreover P is Frobenius–Perron or Harris then it is

Furthermore, except in the case of imaginary quadratic fields (where there are too few units), almost all explicit com- putations of K 2 (O F ) are given in terms of

In 1920’s, Hardy and Littlewood introduced an ana- lytic method for solving Waring’s problem: That is, they showed that every sufficiently large natural number can be expressed as a

For example, the 16 used cores means: i) for 10 000 instances - 4 cluster nodes - 1 MPI process per node and 4 OpenMP threads inside each node, or ii) for 1.. Performance of the

(a) Write the following statements in symbolic logic form (i) “If the sun is shining then I will walk to school.”.. (ii) “If I do not walk to school then the sun is

(i) Copy the tree diagram and add the four missing probability values on the branches that refer to playing with a stick.. During a trip to the park, one of the dogs is chosen

(b) Find the probability that a randomly selected student from this class is studying both Biology and

(d) Copy and complete the following table, which gives a probability distribution for the