Multi-agent visualisation based on multivariate data - CiteSeerX

5 downloads 0 Views 246KB Size Report
... with Space Explorer. Keywords: Multi Agent Systems, Visualisation, Multivariate ... data consider the personal agents characterised by interest vectors. We can define the ..... placement procedure for printed cicuit boards. IEEE. Transactions ...
Multi-agent visualisation based on multivariate data Michael Schroeder and Penny Noy Dept. of Computing, City University, London, UK (msch,p.a.noy)@soi.city.ac.uk

ABSTRACT Interesting features of complex agent systems can be captured as multivariate data. There are a number of different approaches to visualizing such data. In this paper, we focus on methods which reduce the dimensions of the data through matrix transformations and then visualise the entities in the lower-dimensional space. We review an approach which describes agent similarities through distances, which are then visualised by multi-dimensional scaling techniques. We point out some shortcomings of this approach and examine an alternative, which applies principal component analysis and subsequent visualisation directly to the data. Our approach is implemented in the Space Explorer tool, which also allows interactive exploration. We identify four categories of data, which capture interaction, profiles, time series, and combinations of these three. Then we consider how to employ them for various agent types such as communicating, mobile, personal, interface, information and collaborating agents. Finally, we examine real-world telecoms data of 90,000 calls with Space Explorer. Keywords: Multi Agent Systems, Visualisation, Multivariate Data

1.

INTRODUCTION

Visualisation of agent systems can be broken down into two different aspects: visualisation of single agents and multi-agent systems. Although related, both areas focus on different aspects. Single agent visualisation is used for interface agents (see e.g. [1, 18, 8, 11, 16, 21]). The motivation is the end-user, who has to interact with the agent system as effectively as possible. In contrast, multiagent visualisation is mainly motivated by the great complexity of multi-agent systems and the need of developers and administrators to understand the internal workings of the system. To this end, Ndumu et al. [13] incorporated many visualisation features into ZEUS [14], which enable developers to effectively monitor and debug the system. Schroeder [17] developed a general approach to visualise various different kinds of multi-agent systems based on distances describing the similarity of the agents involved. In this paper, we extend this work. We point out that in some cases it is

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. AGENTS’01, May 28-June 1, 2001, Montr´eal, Quebec, Canada. Copyright 2001 ACM 1-58113-326-X/01/0005 ...$5.00.

desirable to avoid an explicit formulation of a distance measure and we show how agent systems based on multivariate data - in contrast to distance data - can be visualised. To this end, we utilize an algorithm implemented in the Space Explorer tool and show for a number of tasks and agent systems how to model the data. We produce a number of visualisations of a data set of call data of 90,000 calls provided by British Telecom.

2. THE VISUALISATION PROCESS The visualisation process comprises four phases. (1) data is captured, (2) prepared, (3) processed, and (4) visualised. The starting point is the capture of the data, where data about the states of the individual agents, the whole system and events in the system is logged. Although this stage seems trivial it is the most important one, as all subsequent steps depend on the captured data. Often the data is not captured in view of its final analysis and visualisation, which may result in a poor outcome as the essential data was not captured. Next, the logged data is prepared. This involves dealing with missing values and normalising and weighting data. Again, this is a crucial step, as processing and visualisation depend on it and errors could be artificially introduced at this stage. The raw data, which is prepared and to be processed, is typically of two types: (1) Multivariate data. The data is multivariate and consists of a series of values. As an example, consider a personal agent, which is characterised by an interest vector with components representing topics. (2) Similarity data. The objects under consideration lend themselves to a direct comparison using some similarity measure. An example for this type of data are mobile agents, whose similarity is defined by their distance in number of hops separating them. Interestingly, we can convert one type of data into the other [10]. As an example for a conversion of multivariate data to similarity data consider the personal agents characterised by interest vectors. We can define the similarity of two agents as the Euclidean distance between their interest vectors. Converting similarity data into multivariate data is even simpler: a matrix of similarity data can be interpreted as multivariate data and all techniques applicable to multivariate data can be directly applied to a similarity matrix. Given the data, the next phase processes the data. In what is essentially a clustering exercise, warnings apply as clusters can be found as a result of the clustering method and the choice of input variables [20]. A prominent technique is hierarchical clustering [7, 4, 10, 3, 20], which clusters similar objects together iteratively to produce a tree structure. Alternatively, in the processing phase, multi-dimensional scaling [7, 4, 10, 12, 20] is applied, which represents the objects directly in a 1, 2, 3, or higher-dimensional space, such that distances be-

tween objects reflect their relationship. In [17], Schroeder shows how multi-dimensional scaling can be applied to the visualisation of multi-agent systems, which are characterised by a similarity matrix. In this paper, we develop this work to deal with multivariate data. We elaborate on the two data types and extend the work in [17] by pointing out cases in which the method developed in [17], which is applicable to similarity data only, is not appropriate. These shortcomings identified, we use an alternative approach working directly on multivariate data using principal component analysis. We consider this approach for a number of agent applications. Both methods are part of Space Explorer.

3.

SIMILARITY DATA

3.1 A catalogue of distance measures Starting from the raw data set, the first and most important step of the visualisation process is to define a similarity or distance measure. This will determine which objects are considered related and thus influence the whole subsequent analysis. To define distance measures, let us consider three kinds of data: vectors, sets, and strings, for which various distance measures can be defined. For vectors, correlation and directive cosine are a distance measure neglecting absolute values and capturing the relation of the vectors. Thus they are good measures when the overall behaviour is of importance rather then the absolute values. In contrast, Euclidean distance de () between xi and x j captures our intuitive notion of space. 2 12 It is defined as de (xi ; x j ) = (∑m k=1 (xki xk j ) ) . Euclidean distance 1

can be generalised by replacing square 2 and square root 2 by other 1 values λ and λ , which is known as Minkowski distance. The special case λ = 1 is known as City-block or Manhattan distance. Alternative measures for vectors are Tanimoto and Mahalanobis [20, 9, 12, 7]. For sets, the cardinality of symmetric set difference is often a suitable distance measure. It captures the differences between sets, omitting the common elements. Often it is desirable to normalise this measure to make small and large sets comparable. This can be achieved by dividing by the cardinality of the union of the two sets. For strings, Hamming distance counts mismatches character by character. This measure can be more refined as edit distance, which is defined as minimal number of replace, add, delete operations to transform one string into another. As this penalises long strings, a normalised edit distance [5] is often useful.

3.2 Distances There are three properties such distance measures should have to capture our intuition of space and to define a distance metric in the mathematical sense. D EFINITION 1. Distance Metric. A matrix D = (di j ) 2 R n;n is a distance metric if it is non-negative, i.e. di j  0 if i 6= j and dii = 0, and if it is symmetric, i.e. di j = d ji , and if it satisfies the triangle inequality, i.e. di j  dik + dk j , which states that the direct distance is the shortest. T HEOREM 1. Euclidean, city block, minkowski, cardinality of symmetric set difference, Hamming distance, edit distance, and normalised edit distance are distance metrics.

3.3 Visualisation of similarity data Multi-dimensional scaling [17, 7, 4, 10, 12, 20] visualises similarity data by finding points in a possibly higher-dimensional space such that the inter-point distances reflect the desired similarity

A

A B

B C

C

1

2

3

4

5

6

7

Figure 1: The choice of distance measure influences data analysis. Left and Middle: On the left are three vectors A; B; C and in the middle three time series A; B; C. In both cases, B is close (far) to C (A) for Euclidean distance, but B is close (far) to A (C) for directive cosine. Right: Using Euclidean distance to compare the time series, the less interesting behaviour up to time point 6 contributes hugely, although it is repetitive. Correlation and dimension reduction with principal component analysis avoid this problem. as closely as possible. More formally, multi-dimensional scaling solves the following problem: Problem 1: Given a distance matrix D = (di j ) 2 R n;n , we have to find a matrix X = (x1 ; : : : ; xn ) 2 R m;n such that de (xi ; x j ) = di j , i.e.

q

2 the Euclidean distance de (xi ; x j ) = ∑m k=1 (xki xk j ) between xi and x j is di j . The literature on multi-dimensional scaling [7, 4, 10, 12, 20] provides solutions for this problem and in the context of agent systems [17] describes two algorithms based on singular-value decomposition [20] and spring embedding [15].

3.4 The choice of distance is paramount for analysis The choice of an appropriate distance is the most crucial step in the visualisation process, and can drastically affect the outcome. Fig. 1 (left and middle) illustrates this with a simple example, where two different distance measures result in contradictory interpretations. The choice of distance is paramount for results, but understanding the effect of a distance measure requires a thorough theoretical understanding. Therefore definition and selection of distance measures can lead to poor results if not chosen carefully. In particular, the widely used Euclidean distance is often not a good choice as it does not take redundancies and interdependencies into account (see Fig. 1 (right)).

3.5 No solution! Not every distance matrix can be represented in Euclidean space. Consider the figure left, where nodes A, B, and C have all the same distance and node D is in the middle of the triangle B formed. As it stands, the drawing is Euclidean (otherwise we could not draw the figure!). But now consider a distance matrix, where A, B, C are all equi-distant, but the distance of A, B, and C to D is slightly less than in the drawing on the right. Such a distance matrix satisfies all of the requirements of a metric (Definition 1), yet it is impossible to draw these distances in any Euclidean space. A

D

C

4. MULTIVARIATE DATA Given the shortcomings of visualising similarity data, how can we visualise multivariate data? A multivariate table with m columns can be seen as a mapping of objects into an m-dimensional space. If m  3, the data can be visualised directly as a scatterplot in

Variable 2

Variable 2 Variable 1

Variable 1

Variable 1

D EFINITION 2. Positive Semidefinite A matrix A is positive semidefinite if for all vectors v 6= 0 the condition (Av)v  0 holds. C OROLLARY 1. [6, 20] If A 6= 0 is positive semidefinite, then U = V and S 2 R m;n is a matrix with the non-negative eigenvalues values of A displayed along its diagonal and zeros elsewhere.

Figure 2: Principal component analysis.

a 3D space without any need for any processing at all. We can even stretch the number m of dimensions by using properties of the visualised object. Starting from the three spatial dimensions, adding time leads to 4D. We can also map variables to colour, shape, orientation, surface texture, motion coding, and blink coding. However the number of resolvable steps available for each of these is small. Additionally, these features are interdependent (texture colour, blink - motion), which means that eight dimensions are the maximum that can be mapped directly, depending on the specific requirements of the data [19]. So, the problem remains how to reduce the dimension of the higher-dimensional multivariate table to the most representative dimensions. Formally, we can formulate the problem as follows: Problem 2: Given m-dimensional multivariate data for n objects represented by a matrix X = (x1 ; : : : ; xn ) 2 R m;n . We have to find a matrix X 0 = (x01 ; : : : ; x0n ) 2 R r;n of a reduced dimension r < m, such that de (xi ; x j ) de (x0i ; x0j ) is minimal (where de (xi ; x j ) is Euclidean distance as before). There is an immediate solution! We can transform the multivariate data to similarity data using one of the distance measure for vectors, as introduced above. Thus we have reduced problem 2 to problem 1, which we can solve using multi-dimensional scaling. However, this way we inherit the shortcomings of multi-dimensional scaling pointed out above. How can we avoid them?

Now we can formulate an algorithm for problem 2: Algorithm Input: multivariate data X 2 R m;n . Then X T X is symmetric and positive semi-definite. Therefore applying singular value decomposition we get

XT X

T HEOREM 2. Singular Value Decomposition, e.g. [6, 20] Suppose A 2 R m;n . Then there exist orthogonal matrices U 2 R m;m and V 2 R n;n such that A = USV T where S 2 R m;n is a matrix with the singular values of A displayed along its diagonal and zeros elsewhere. We can strengthen the theorem if A’s eigenvalues are nonnegative or equivalently if A is positive semidefinite:

T

SU

= (u1 ; : : : ;

0

0 :::

λn

1 A (u1

;:::;

un )

with λ1 > λ2 >  > λn . Then the desired solution is X 0 2 R r;n = ∑rk=1 λr uk uTk . The above algorithm solves problem 2, is efficient and always terminates. Unlike solutions to problem 1, no explicit distance measures are used and a solution can always be computed.

5. APPLICATIONS The questions examined in this section are: what multivariate data is available for particular agent systems and how can a multivariate data visualisation system, such as Space Explorer, be used in the agent domain. With data capturing and preprocessing as outlined above, we elaborate on how to represent the system’s data as multivariate data suitable for processing and visualisation with the developed algorithm. Four generic data types are distinguishable:



4.1 Principal component analysis (PCA) Solving problem 2 is the purpose of Principal Component Analysis (PCA), which transforms the m variables into m factors, each factor being a linear combination of variables (see Fig. 2). The m factors are ordered by importance: the first factor explains as much as possible of the differences among objects, the second factor as much as possible of what cannot be explained by the first factor, and so on. A simple two-dimensional example is shown in Fig. 2. The original data is distributed within the space in an ellipsoid cloud. PCA can be seen as a rotation of the coordinate system, that aligns the x axis along the major axis, and the y axis along the minor axis of the ellipse. This rotation optimises a one-dimensional representation of the same data, by simply selecting the x axis as the unique dimension. The example can be generalised to m initial variables, where the 2 or 3 most important factors are displayed in a 2D or 3D space. To reduce the original data to its principal components we employ singular-value decomposition.

=U

0λ 1 un )T 

  

Interactions. The interactions between two agents A and B can be characterised symmetrically, where A interacting with B and B interacting with A are considered at the same time or asymmetrically ( where both are considered separately). Profiles. Rather than focusing on the interaction with other agents, an agent is considered individually collecting data characterising the agent’s profile Time series. The above two aspects do not cover time and an order of events. Combination. Combinations of the above three types.

5.1 Communicating Agents To proceed let us consider the above generic types for the most widely used scenario: communicating agents.

5.1.1 Data The essence of the behaviour considered is the number of messages sent and received, the profile of messages sent and received, a mix of the two. The interesting questions as to whether a message is acknowledged, acted upon, classified according to content, etc. are not addressed, although, by extension, appropriate variables can be included. A straight-forward representation defines a square, symmetric matrix M = (mi j ), such that mi j  0 denotes the number of messages exchanged between agent i and j, for i 6= j, and mii is the overall number of messages exchanged by agent i, i.e. mii = ∑nj=1; j6=i mi j . The data in Figure 3(a) is of this type. This matrix can be considered as both multivariate and distance data at the

a)Ag 1 2 3

1 68 12 56

2 12 54 42

3 56 42 98

c)Ag/Time 1 2 3

1 1 1 0

2 0 0 0

b)Ag 1 2 3

1 68 6 40

3 1 0 1

... ... ... ...

4 0 1 1

2 6 54 22

3 16 20 98

Figure 3: Communicating agent data. For (a) and (b), the diagonal mii contains the sum of all messages of i. In (a), entry mi j contains the messages exchanged between agents i and j. In (b) messages sent and received are entered separately. (a) and (b) are examples of interaction and profile data. Data is shown as a time series in (c), recording at what time agents send/receive a message.

a

2

b

8

c

6

Figure 5: (1) and (2): Principal component analysis of messaging between three agents: equal number of messages sent by all (1); equal messages between two with none sent by the third (2). Pictures (3-5): Effect of different specifications of diagonal in display of a group of 4 agents. (3) zeros, (4) sum of messages sent, (5) sum of messages sent and received.

agents respectively; (c) is two distinct groups as in (a) but the data is a profile of messaging behaviour of each agent to the group.

2 6

Figure 4: The asynchronous messaging visualisation problem. (a) The directional information we wish to retain. (b) Combined messages as distance. (c) Directional information shown as width of band.

same time. However, it may be desirable to preserve the directional information as in Figure 3(b), which breaks up the number of exchanged messages into messages sent and received. While the representation of this more detailed break-down is no problem, its visualisation is, as it has to commit to a single distance between agents i and j, reflecting the number of messages sent and received separately (see Figure 4). A third treatment of such data represents it as a time series as in Figure 3(c).

Figure 6: Various data sets visualised for ten agents, see description in text. Figure 7 gives visualisations of the ten agents with randomly generated message behaviour: (a) with data retaining directional information and the diagonal being the total of exchanged messages; (b) with data based on matrix without directional information as in Figure 3(a). Thus, results suggest that the data is not as sensitive to the choice of the specification of the diagonal element as one might expect.

5.1.2 Agent messaging visualisations As a general rule, it is useful to give a visualisation tool constructed data, exhibiting specific characteristics, to build expertise in interpreting results. We do this here for principal component analysis and SpaceExplorer, both for this purpose and also to examine the effect of deriving different multivariate data for agent messaging ( as outlined in the previous section). Thus, first consider specific types of messaging behaviour with few agents. Figure 5 (1-2) shows data for three agents. In Figure 5(1) the agents send equal numbers of messages to each other. Figure 5(2) depicts the same behaviour for two agents, but with the third sending no messages. The data is expressed in the form Figure 3(b), with the diagonal being the number of messages sent only. An issue in representing the communication data is how to treat the diagonal, i.e. the relation of an agent to itself. Figure 5 (3-5) illustrates setting the diagonal to zero, the sum of messages sent, and the sum of messages sent and received, respectively. Figure 6 deals with a set of ten agents: (a) illustrates five agents all sending 2 messages and five agents sending 6 messages (the same visualisation is obtained with the diagonal being the sum of sent messages, the sum of sent and received messages, zero, and for the matrix without the directional information as in Figure 3(a)); (b) is five agents sending two, one agent sending 6 and the rest also sending six but sending no message to one, two, three and four

Figure 7: Ten agents with randomly generated messaging behaviour, see description in text

5.2 Other agent types 5.2.1 Personal agents Personal agents act as personal assistants to their owners. This requires that they observe their owner’s behaviour and model it. With these models, it is interesting to visualise similarity of personal agents. To this end, [17] defines a distance measure for personal agents A and B as the sum of A’s and B’s overall interests minus their shared interest. This approach lends itself to visualisation by multi-dimensional scaling as described above. While it is difficult to judge the intuition behind the above measure, a more general approach represents the user model as a vector of interests. Entries in the vectors are binary, 0 meaning ’not interested’, 1 ’interested’. This definition captures the agent’s profile and is multivariate in nature. The data representation can be further refined.

Instead of a binary representation values can range continuously between -1,0,+1, with 0 meaning ’unknown’.

5.2.2 Mobile Agents Mobile agents may be characterised according to their interactions, profiles, and as time series. Regarding the former, all data representations of communicating agents are applicable. Additionally, a mobile agent profile represents the places they visited. For more detail, the average duration of the stay, or the number of visits made, can be recorded. Lastly, time series data can capture the agent’s itinerary.

5.2.3 Information agents Information agents often handle representations of documents, (which may interest their users), in the vector-space model, i.e. each document is represented as a vector of terms indicating frequencies of term occurrence. Singular value decomposition - in a process known as Latent Semantic Indexing - is used to identify related documents [2]. But instead of defining a ranked list of most relevant documents, information agents can present the results in a 2 or 3D space as result landscapes. But even without a query, information agents may present a set of documents - related or not - as such an information landscape, by applying principal component analysis to the vector-space model. In a similar way, shopbots could represent goods as a vector of attributes such as price, spec, guarantee, etc. Instead of presenting results as a linear list, usually focusing on the price and omitting the spec, users would get a better picture by exploring the product space along the significant axes. And similarly, pricebots could represent their customers as profile data and visualise customer landscapes.

5.2.4 Interface agent Interface agents aim to facilitate efficient and personal humancomputer interaction. They observe the user’s actions and thus can build a user profile, which in turn is multivariate data. It can be analysed with principal component analysis to identify users of similar behaviour.

5.2.5 Collaborating agents As an example, consider collaborating agents as in the Robocup soccer competition. These agents comprise all features of data types. They communicate and individual profiles could capture their actions. In contrast to many other applications, time plays an important role so that data should be kept as time series. In particular, this may comprise skill set employed, ’blackboard’ behaviour by use of ’accept’, ’confirm’ etc, successful/unsuccessful interactions by type.

6.

EXAMPLE: TELECOMS CALL DATA

As a generalization of this problem, a set of call data has been used. This is a set of British Telecom data of 90,000 calls made by 100 customers from one particular area. The data set was cleansed, by BT, of all private information. Thus the originating and destination exchange references were available, but not the complete originating and destination phone numbers. These visualisations use the destination local exchange reference in a data table of the form shown in Table 1, such that entry xi j is the number of calls made by customer i to location j. Why have we not chosen specific agent system data for these visualisations? There is a degree of difficulty in obtaining data sets with the characteristics that are required. This is partly a problem of access; web agents are difficult to obtain data for, since it is desired by their manufacturers that their operation remains hidden

Customer 1 Customer 2 ...

destination 1 0 1 ...

destination 2 3 47

..... ..... .....

Table 1: Call data customer/destination matrix used for visualisation

and by the user that personal data is concealed. Also many of our agent systems provide small data sets and/or are laboratory simulations. The complexity of real-world data is desirable. Clearly the definition of agent also includes the human agent, at least in theory. The call data used here is similar to that produced by many of the agent types above, where only the variables taken from the same domain are considered (i.e. web pages accessed, locations visited, keywords encountered). Visualisations of this data are shown in Figure 8. This set of pictures illustrates the difference in results obtained by using some of the available algorithms. Essentially the top three should be looked at as a group; the next five (Minkowski)as an elaboration of the top middle (Euclidean) one; the last an inversion of the data of the first. (Note: this visualisation method chooses to contradict Benedikt’s rule of exclusive occupation of space, therefore the number of entities occupying the space of a single position is not revealed visually.) In the top group, it can be seen that the outliers are not the same. The structures of the first two are interesting, they resemble each other quite closely, but the position of individual elements differs. In (1) principal component analysis was applied and, without great loss of accuracy, the vectors are reduced to three dimensions. The two dominating axes, marked by the outliers 1 and 4, go hand in hand with two different destinations that customers 1 and 4 make many calls to. The comparison of Euclidean and correlation illustrates the way these two distance measures contrast each other - different structure and clustering is shown. The Minkowski set indicates the power of the variable exponent to reduce and increase the effect of the differences between vector components. The two outlying spheres in picture 8 are each a single customer making very few calls. The sparcity of the destination profile visualisation reflects that there are few destination profiles - the outlier is a single destination that receives a relatively high number of calls per customer and calls from a large number of customers; the cluster receive no calls from a high proportion of callers.

Combinations of agent roles Although different types of agents have been considered here to provide particular types of data, in reality there is overlap (as there is in definitions of agent types) and in an agent system implementation agents may easily take on communication, mobile and collaboration roles simultaneously. A large data table may be created, containing sets of variables belonging to different domains. Data may also be more naturally expressed in the form of a proximity matrix - as in the case of communicating agents. Thus a data table containing heterogeneous variable types, and a number of proximity matrices relating to the same agents, may be the starting data (derived from the initial profiles and log as described above). This means that exploration of the data will involve making selections, transformations or combinations in a process of ’visual querying’.

Figure 8: 90,000 calls made by 100 customers. First eight pictures: caller profiles by destination of calls. Last picture: destination profiles by callers. From top left to bottom right: (1) and (9) - direct visualisation by applying principal component analysis, in contrast to (2-8) indirect visualisation by calculation of a distance followed by matrix transformation using Singular Value Decomposition; Distances in particular: (2) Euclidean, (3) correlation, (4-8)Minkowski distance with (4) λ = 100 (5) λ = 10 (6) λ = 1 (City distance) (7) λ = 0:1 (8) λ = 0:01. The customers represented as squares and labelled with a number can be traced through the different visualisation outcomes (1) to (8).

7.

CONCLUSIONS

Engineering agent systems is a highly difficult task. And also after development, it is desirable to intuitively understand how the system operates. Visualisation can be a very effective way to make large amounts of complex data accessible for debugging and analysis of multi-agent systems. Although there is much work on user interface agents and agents for virtual reality applications, visualisation of multi-agent systems for analysis purposes is largely neglected. One of the few systems, that incorporate some analysis and visualisiaton features is ZEUS [14]. In this paper we have extended previous work by modelling characteristics of agent systems as multivariate data and then applying principal component analysis to reduce the data to the leading three components. We indicate how to apply this technique to agent systems and, in particular, visualise real-world call data of 90,000 calls. This work emphasizes the rich data sources available for agents of different types. Separation of data into interaction, profiling and time series types is useful, but complete system data is undoubtedly combination type and this presents the greatest challenge for visualisation. By our choice of data set, how are we to avoid misrepresenting the system by presenting only one facet of it? At the same time the difficulty in selecting a specific algorithm for reducing the dimensionality of the data is demonstrated. The diversity of visual representations is a strength, in that we can choose one to illustrate or answer particular questions, but our results suggest that the one most suitable for our purpose may only be discovered after studying the results of all the others. We found that exploration of the behaviour of the visualisation tool, by working initially with constructed data, enhanced visual interpretation of results and consider that it would be valuable to extend this work.

Acknowledgement. This work is supported by the EPSRC and British Telecom (CASE studentship - award number 99803052). In particular we would like to thank Robert Ghanea-Hercock and Paul Coker of The Future Technologies Group, Adastral Park, Ipswich, for their assistance in provision of the calldata data set.

8.

REFERENCES

[1] T. W. Bickmore, L. Cook, E. F. Chruchill, and J. W. Sullivan. Animated autonomous personal representatives. In Proceedings of Second Internationl Conference on Autonomous Agents, AA98, pages 8–15. ACM Press, 1998. [2] Scott Deerwester, Susan Dumais, Goerge Furnas, Thomas Landauer, and Richard Harshman. Indexing by latent semantic analysis. Journal of the American Society for Information Science, 41(6):391–407, 1990. [3] C. Durbin, S. Eddy, A Krough, and G. Mitchison. Biological Sequence Analysis. CUP, 1998. [4] B. S. Everitt. Graphical techniques for multivariate data. Heinemann Educational Books, 1978. [5] David Gilbert and Michael Schroeder. FURY: Fuzzy unification and resolution based on edit distance. In In Proceedings of BIBE2000, 2000. [6] Jack L. Goldberg. Matrix Theory with Applications. Mcgraw-Hill, 1991. [7] A. D. Gordon. Classification. Chapman and Hall, 1981. [8] Barbara Hayes-Roth and Robert van Gent. Story-making with improvistional puppets. In Proceedings of First Internationl Conference on Autonomous Agents, AA97, pages 1–7. ACM Press, 1997.

[9] Teuvo Kohonen. Self-organising maps. Springer–Verlag, 2nd edition edition, 1997. [10] J. Kruskal. The relationship between multidimensional scaling and clustering. In Classification and clustering. Academic Press, 1977. [11] James Lester and Brian Stone. Increasing believability in animated pedagocial agents. In Proceedings of First Internationl Conference on Autonomous Agents, AA97. ACM Press, 1997. [12] K. V. Mardia, J. T. Kent, and J. M. Bibby. Multivariate analysis. Academic Press, 1979. [13] D. Ndumu, H. Nwana, L. Lee, and J. Collins. Visualising and debugging distributed multi-agent systems. In Proceedings of the third Conference on Autonomous Agents, Seattle, USA, 1999. ACM Press. [14] Hyacinth Nwana, Divine Ndumu, and Lyndon Lee. ZEUS: An andvanced tool-kit for engineering distributed multi-agent systems. In Proceedings of the Third International Conference on the Practical Applications of Intelligent Agents and Multi-agent Technology, PAAM98, London, UK, 1998. [15] N. R. Quinn and M. A. Breuer. A force directed component placement procedure for printed cicuit boards. IEEE Transactions on Circuits and systems, CAS-26(6):377–388, 1979. [16] Jeff Rickel and Lewis Johnson. Integrating pedagogical capabilities in a virtual environment agent. In Proceedings of First Internationl Conference on Autonomous Agents, AA97. ACM Press, 1997. [17] Michael Schroeder. Using singular value decomposition to visualise relations within multi-agent systems. In Proceedings of the third Conference on Autonomous Agents, Seattle, USA, 1999. ACM Press. [18] K. R. Thorisson. Real-time decision making in multi-modal face-to-face communication. In Proceedings of Second Internationl Conference on Autonomous Agents, AA98, pages 16–23. ACM Press, 1998. [19] Colin Ware. Information Visualization: Perception for Design. Morgan Kaufmann, 2000. [20] Andrew Webb. Statistical pattern recognition. Arnold, 1999. [21] Sen Yoshida, K. Kamei, M. Yokoo, T. Ohguro, K. Funakoshi, and F. Hattori. Visualizing potential communities: a MA approach. In Proceedings of the Second International Conference on Multi-Agent Systems ICMAS98, Paris, France, 1998.

Suggest Documents