Keywords: self-organizing multiagent system, industrial process control, ... instances of the class of self-organizing networks with embedded intentions .... Proceedings of the 3rd international workshop on Visualization for computer security, pp.
Web-based monitoring and visualization of selforganizing process control agents Grzegorz Polaków1, Mieczyslaw Metzger1 1
Faculty of Automatic Control, Electronics and Computer Science Silesian University of Technology, Akademicka 16, 44-100 Gliwice, Poland {grzegorz.polakow, mieczyslaw.metzger}@polsl.pl
Abstract. This work addresses the problem of visualizing interactions between agents self-organizing in a non-codified way. This kind of behavior emerges from a human factor, which is heavily involved in the presented case of multiagent system. Tasks and intentions of users present in the system are unknown and the proposed method of analyzing and debugging temporary structures emerging in the system is the eavesdropping of the communication between the actors. A separate software service is proposed, which makes the inferred structure data accessible by an external higher scale system. An example of visualization is provided in the form of SVG-based interactive dynamic block diagram. Keywords: self-organizing multiagent system, industrial process control, visualization, human factor, producer-distributor-consumer.
1 Introduction Visualization of self-organizing [1] agent systems is a difficult task, due to the distribution of the information on the system structure. Each agent is aware of its local surroundings only, while the system’s capabilities are an effect of its overall global configuration [2]. Therefore, a visualization task consists of gathering scattered information and consolidating it into consistent description at first, before presenting it to the user. There are many engines for visualization of a topology of agent system structure, fitted to varying capabilities of agent environments, e.g. VizScript [3], VAST [4], MASON visualization tools [5]. Most of the existing approaches assume that the self-organizing system being visualized is purely artificial, and the data needed for the visualization may be gathered by implementing additional services in the nodes (as in [6]). These artificial self-organizing systems are based on natural ones incorporating societies of living organisms (ants, bees, even humans) [7]. In case of these natural systems, there is no possibility of implementing visualization services in the nodes, only a passive observation of the system is possible, as tasks and intentions of the actors are generally unknown. Therefore, the visualization has to rely on passive observations of the actors behavior. In case of physical natural systems, observations may consist of
simple measurements of real-world physical variables (e.g. spatial location of the actors in environment). On the other hand, logical systems hardly have any physically measurable properties and the only source of information regarding the system structure is content of communication between the actors. This work addresses the issue of visualizing the structure of such a system, in which the self-organization logic comes from the human users. Modeling and visualization of human behavior has been actively researched for a long time ([8][9]). In this paper a practical method of self-organizing joint natural-artificial distributed system observation is presented, consisting of capturing and analyzing the communication between the nodes of the system. Similar passive observation method of IP traffic was introduced in [10]. While the traffic data still doesn’t show the intentions of the actors, it at least allows for graphical presentation of the data flow in the network in the form of graphical mesh of connections, allowing for clustering of previously uniformly distributed nodes (see [11]). Since the communication in various instances of the class of self-organizing networks with embedded intentions may be performed in varying ways, a unified service is proposed. While the industry still lacks an accepted standard of the Web Services location and description ([12]), the service proposed seems to be promising approach.
2 Motivation During last few years a system of multiple laboratories has been installed at the Silesian University of Technology enabling advanced experimentation on real-world industry-grade continuous processes. Possibilities of research and teaching enabled by this system are unique as the system was designed to be highly reconfigurable. While the hardware of the plants stays the same, logical structure of the system is changed to suit the users. Each of the users is able to connect self-developed pieces of software to the static hardware system, according to currently conducted experiments. Typical roles of user programs include: signal generators, control algorithms, user interfaces, etc. The system is integrated using the holonic approach [13]. Each of the plants is treated as a holon consisting of lightweight software agents (see [14]) assigned to the hardware sensors and actuators. Such a holon is visible from outside as a simple set of agent communication interfaces, keeping the hardware fully embedded. Users develop their programs as agents with similar interfaces, so the interaction between the hardware and the users’ software takes place in the shared agents’ communication pool. The hardware plants and interfaces offered by the lightweight agents may be considered as an environment for organizational-centered heavyweight agents developed by the users (see [15]). The communication between the agents is based on the custom high-bandwidth low-latency protocol [16], due to the specific requirements ([17]) of the continuous processes control systems. This data-centric real-time protocol is based on the ppPDC data distribution scheme (parallel processing producer-distributor-consumer), which arranges the agents as a blackboard system and allows them to communicate in a fully time determined manner by the switched Ethernet network.
The system of laboratories performs very well, however due to its distributed and dynamic nature it became hard to monitor. A temporary structure of software in the system is a dynamic effect of multiple elements: hardware structure, software agents, and the human factor, i.e. researchers’ and students’ tasks and intentions (Fig. 1). User 1 Tasks and intentions Hardware resource
Hardware resource
Signal generator
Control algorithm
HMI
Plant 1
Plant 2
Static hardware structure
Actuator
...
Sensor
Actuator
Sensor
Sensor
Actuator
Dynamic mesh of connections
Control algorithm
Variable structure
Hardware resource
User i Tasks and intentions
Plant 6
Fig. 1. A mesh of dynamic inter-agent connections as an effect of the hardware structure and users’ tasks.
When the system is considered from the outside point of view, without any knowledge of users’ tasks, it consists simply of a set of software agents executing their software threads in the distributed hardware, displaying self-organization behavior when grouping into clusters. Within the clusters they exchange numerical data in an ordered way. At any given moment the structure is logically organized, however, in a broader time frame (in order of hours), it is highly variable. To make the visualization tasks achievable, it was required to develop a system that exploits low level characteristics of the used inter-agent communication protocol. The protocol is based on the producer-distributer-consumer data distribution scheme, employing the distributor node to maintain the data exchange. Due to distributor’s role, it is capable of intercepting inter-agent communication, and performing the system’s visualization accordingly to the captured network traffic. The approach to the visualization of the agentified system takes into the account a presence of the specialized visualization interface. Such an interface is usually implemented in all control systems using some type of data access standard (Web
Service, OPC standard). A typical structure of a SCADA (Supervisory Control and Data Acquisition) system connection with the control system is shown in Fig. 2a. a)
b)
embeded knowledge of structure
dedicated visualization application
universal visualization application
Values of variables
Values of variables
Network
Raw Data Service
constant structure control system
Description of structure
Network
Raw Data Service
Knowledge Service
variable structure control system
Fig. 2. a) Architecture of visualization for constant structure systems b) Architecture with complementing knowledge service for systems with variable structure.
The control system’s data in the form of numerical values of measurements are available through the standardized interface, designated here as Raw Data service. The content of the transmission stream gives no knowledge on current state of the system until raw data are correctly placed in the system’s structure according to its meaning. In a traditional visualization application, this knowledge on data’s meaning is embedded in the executable code of an application, because the mesh of connections in the system is constant, and can be stored once and for all. In case of a system with variable structure, a method of a structure description has to be developed. The proposed architecture shown in Fig. 2b introduces an additional interface, called the Knowledge Service, whose main task is serving the knowledge on the current state of the structure. The union of abstract knowledge from the proposed service and the raw data from the classic interface gives the full state of the system in a given moment. Implementation of the proposed Knowledge Service enables the system to be treated as a part of higher-level large-scale system, which may incorporate multiple local self-organizing systems, visualizing and comparing them.
3 Implementation The proposed Knowledge Service was implemented in the existing real-world system. Characteristics of the framework made it impossible to predict the agenda of selforganization, so only the communication stream can be observed. Human factor based parts of the logical connection mesh are completely embedded, and only the artificial part of the network are possible to gather. However, all the actors acting on behalf of human users and on behalf of the control system’s hardware are exchanging information with the blackboard, so it is the single point of network in which all the
meaning messages are passing. The system was augmented with the agent communication traffic capture capability. The traffic is analyzed in the real-time, and the structure of the connection mesh is inferred on this basis. This temporal data is then served with the Knowledge Service, while the raw content of the blackboard is served with the Raw Data Service. The Services are implemented in this case as typical Web Services, i.e. they serve XML data through the HTTP protocol. Such a method was chosen because the system is designed to be able to be integrated with the global Semantic Network, which is then supposed to fulfill the role of higher-level large scale system. According to the assumed specifics of the higher-level system, a visualization engine was developed as a web-bot capable of using both the Services. The application is Web-based and it uses the AJAX technique to provide interactive experience to an end-user. From technical point of view the user interface of the bot is an SVG document while its logics are programmed as an embedded ECMAScript program. SVG was chosen instead of HTML because its capabilities of software driven vector graphics already proved to be perfect for ontological diagrams visualisation ([18]) and it has capability of implementing much appreciated rich-graphics human-machine interfaces.
Fig. 3. A diagram drawn by the monitoring application.
To put stress on the logical bonds between the agents, they are graphically clustered into groups by use of the gravitational model (see [11] and [19]). A screenshot of a working application with a sample system’s structure is presented in Fig. 3. As it is seen in the figure, those agents which exchange data at the moment are graphically grouped, which allows the system’s supervisor to estimate the current level of system organization.
4
Concluding remarks and future work
This work focuses at the task of visualizing the system in which the self-organization rules are a result of non-deterministic factors, i.e. unpredictable human behavior driven by unknown intentions. As an example of such a system the real-world laboratory for research and education of distributed control systems was presented. The method of the system state visualization was proposed, consisting of capturing the network traffic caused by user-programmed software agents and drawing the communication dependencies between the actors. The resulting diagram of clustering allows the supervisor to infer the character of the currently performed tasks. It is planned to expand the presented method to take the human owners of visualized software agents into account. Such a modification will add an additional logical layer of the visualization by bonding the nodes of the visualization diagram to a specific user. Acknowledgement. This work was supported by the Polish Ministry of Scientific Research and Higher Education using funds for 2008-2010 under grant no. N N514 296335.
References 1. Ashby, W. R.: Principles of the self-organizing dynamic system. Journal of General Psychology 37, 125--128 (1947) 2. Ndumu, D.T., Nwana, H.S., Lee, L.C., Haynes, H.R.: Visualization and debugging of distributed multiagent systems. Applied Artificial Intelligence 13 (1-2), 187--208 (1999) 3. Jin, J., Maheswaran, R.T., Sanchez, R., Szekely, P.: VizScript: Visualizing complex interactions in multi-agent systems. Technical report, AAAI Spring Symposium, pp. 64--65 (2007) 4. Oberheide, J., Karir, M., Blazakis, D.: VAST: Visualizing autonomous system topology. In: Proceedings of the 3rd international workshop on Visualization for computer security, pp. 71--80. ACM, New York (2006) 5. Luke, S., Cioffi-Revilla, C., Panait, L., Sullivan, K., Balan, G.: MASON: A multiagent simulation environment. Simulation 81 (7), 517--527 (2005) 6. Lim, A.: Distributed services for information dissemination in self-organizing sensor networks, J Franklin Inst 338(6), 707--727 (2001) 7. Van Dyke Parunak, H., Brueckner, S.: Entropy and self-organization in multi-agent systems. In: Proceedings of the fifth international conference on Autonomous agents, pp. 124--130. ACM, New York (2001)
8. Hlavacs, H., Kotsis, G.: Modeling user behavior: a layered approach. In: 7th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, pp. 218--225. IEEE Press, New York (1999) 9. Moya, J.L., McKenzie, F.D., Nguyen, Q.-A.H.: Visualization and rule validation in humanbehavior representation. Simulation and Gaming 39 (1), 101--117 (2008) 10.McPherson, J., Ma, K.-L., Krystosk, P., Bartoletti, T., Christensen, M.: PortVis: A tool for port-based detection of security events. In: Proceedings of the 2004 ACM Workshop on Visualization and Data Mining for Computer Security, pp. 73-81. ACM, New York (2004) 11.Staron, R.J., Tichý, P., Sindelár, R., Maturana, F.P.: Methods to Observe the Clustering of Agents Within a Multi-Agent System. In: Mařík, V., Vyatkin, V., Colombo, A.W. (eds.) HoloMAS 2007. LNCS, vol. 4659, pp. 127--136. Springer, Heidelberg (2007) 12.Forster, F., De Meer, H.: Discovery of web services with a P2P network. In: Bubak, M., van Albada, G.D., Sloot, P.M.A, Dongarra, J.J. (eds.) ICCS 2004. LNCS, vol. 3038, pp. 90--97. Springer, Heidelberg (2004) 13.Metzger, M., Polaków, G.: Holonic Multiagent-Based System for Distributed Control of Semi-industrial Pilot Plants. In: Marik, V., Vyatkin, V., Colombo, A.W. (Eds.): HoloMAS 2007. LNAI, vol. 4659, pp. 338--347. Springer, Heidelberg (2007) 14.Van Dyke Parunak, H., Nielsen, P., Brueckner, S., Alonso, R.: Hybrid multi-agent systems: Integrating swarming and BDI agents. In: Brueckner, S.A., Hassas, S., Jelasity, M., Yamins, D. (eds.) ESOA 2006. LNAI, vol. 4335, pp. 1--14. Springer, Heidelberg (2007) 15.Weyns, D., Van Dyke Parunak, H., Michel, F., Holvoet, T., Ferber, J.: Environments for multiagent systems state-of-the-art and research challenges. In: Weyns, D., Van Dyke Parunak, H., Michel, F. (eds.) E4MAS 2004. LNAI, vol. 3374, pp. 1--47. Springer, Heidelberg (2004) 16.Polaków, G., Metzger, M.: Agent-Based Approach for LabVIEW Developed Distributed Control Systems. In: Nguyen, N.T., Grzech, A., Howlett, R.J., Jain, L.C. (eds.) AMSTA 2007. LNAI, vol. 4496, pp. 21--30. Springer, Heidelberg (2007) 17.Sterbenz, J.P.G.: High-speed networking: a systematic approach to high-bandwidth lowlatency communications. In: 13th Symposium on High Performance Interconnects, pp. 8--9. IEEE Press, New York (2005) 18.Samper, J. J., Tomás, V. R., Carrillo, E., Do Nascimento, R. P. C.: Visualization of ontologies to specify semantic descriptions of services. IEEE Transactions on Knowledge and Data Engineering 20(1), 130--134 (2008) 19.Golovchinsky, G., Kamps, T., Reichenberger, K.: Subverting Structure: Data-driven Diagram Generation. In: Proceedings of the 6th IEEE Visualization Conference, IEEE Computer Society Press, pp. 217--223. Washington (1995)