Faculty
Computer Science
and Technology

Speciality
System programming
Department
Computer engineering
Master
Pronkin
Viacheslav
Theme of master's work
Development of simulators
for parallel simulation of dynamic objects
using agent-oriented approach

Supervisor
prof., d.t.s. Svjatnyj V.
     
 

Abstract

Development of simulators
for parallel simulation of dynamic objects
using agent-oriented approach

Introduction

Modeling allows to explore difficult processes in any systems, natural or created by the person, thus not spending the big means, human resources, time for gauging, researches, reorganization and restoration of real object in full. The model is developed on available data. Further during modeling it is possible to add new data, object characteristics. Thus it is possible to reach statuses in which the model will describe real object with sufficient accuracy. Modeling process is especially important when it is difficult or it is impossible to construct real object owing to nonlinearity, stochasticity variables, dearness of introduction.

Network dynamic objects carry to such objects. Their status changes constantly nonlinearly in time, the physical sizes are too large, any erroneous operations can lead to considerable expenses, failures, even to human victims. Therefore modeling of network dynamic objects (NDO) is very important problem.

Agent-oriented programming approach allows not only to parallel modeling process by means of what calculations are considerably accelerated, but also to make its more interactive, independent, distributed if it is necessary. The agent-oriented technologies can be considered as the next step of development of programming. Agents - the independent programs which are carried out on behalf of the person which co-operate with other agents for reception of the uniform decision of a task in view. A problem can set both the user, and the agent who is capable to plan the further actions on the basis of knowledge bases, calculations, the analysis of the received information - depending on degree of its intellectuality.


Goals and problems

Goal is developing of parallel simulators for parallel simulation of dynamic objects using agent-oriented approach.

The main tasks of research and development are:

  • analysis in the field of parallel modeling NDO and the agent-oriented approaches
  • development of structure and functions of parallel simulator NDO DP
  • development of parallel simulation algorithm functioning.
  • choice and justification of the implementation of features in agent approach.
  • analysis of the implementation of the principles of mapping agent to the target parallel architecture.
  • experimental researches.

Urgency of theme

Presently the technique has extended completely on all spheres of human activity. But it is not a limit, hence, it is necessary to develop even more perfect, convenient, safe technologies. Network dynamic objects are not too far from the ordinary person - this can be normal pipeline water/gas supply. This may be the electrical network. In large factories and plants in the furnace to rooms with ventilation, mining faces channel system can also be seen as a dynamic network object. The processes proceeding in such objects, are very difficult and in many cases are described by the big systems of the equations in private derivatives. At erroneous work of system considerable expenses of means, energy, and also serious consequences are possible: short circuits, fires, explosions, human a victim. Hence, designing, calculations and modeling of reliable, fast systems NDO is the major problem. The agent-oriented approach allows to pass to higher level of programming of simulators of network objects with the distributed parameters, to accelerate and make more reliable working out of modeling environments.


Scientific novelty

It is possible to consider as scientific novelty an innovation of working out of parallel simulators NDO with use agent-oriented approach. Work and researches expand knowledge of use of this approach to programming simulators of NDO.


Planned practical results

The work proposed structure and implementation of simulation agent-based programming approach. The analysis in the field of parallel simulation NDO and agent-oriented approaches. Developed a parallel simulator using NDO agent-oriented approach.


Principles of agent approach to the development of parallel simulators and other hardware/software-systems

Parallelization and distribution of algorithms by traditional methods of information systems has many serious shortcomings and limitations:

— Necessity of overcoming of borders of operational systems, is called by that in the distributed systems various operational systems are applied, reports and interfaces;

— Heterogeneity of objective models is shown that classes and the objects constructed in various tool environments, have certain differences;

— Complexities of management of the distributed clients, especially in the conditions of a variable configuration of a network;

— The methodological restrictions connected with use of various models and methods of construction of components of distributed systems.

The distributed objective architecture (CORBA, Java RMI, DCOM, WEB-services) aspire to overcome restrictions, but leave unresolved following problems:

— Necessity of recompilation of program codes at modification of objects and interfaces;

— Impossibility of dynamic adaptation of behavior of program objects depending on statuses and behavior of environment;

— The impossibility of work in the obvious form with models of knowledge, value in which constantly increases;

— Accumulation of huge volumes of the information which it is impossible to process semantically and present in the forms convenient for perception and processing.

For the decision of similar problems new approaches of system engineering are necessary. In this connection there is a paradigm of the agent-oriented systems using intellectual agents as high-level abstraction for formalization and structurization of a subject domain and as a powerful software for working out and realization of complex information systems.

Intellectual agents - a new class program and hardware-software entities, which operate from a humans name to find and process the information, to carry on negotiations in systems of electronic trade and services, to automate performance of routine operations and to support decisions of difficult problems, to co-operate with other program agents at occurrence of challenges, removing thereby from the person superfluous information loading.

As the basic properties of agents are considered [1]:

— Autonomy - ability to carry out action it is independent;

— Homogeneity/heterogeneity - ability to unite homogeneous or diverse functions;

— ability to learn and intelligence - machine training, correction of behavior for improvement of own efficiency;

— active behavior - constant information interchange in the agent and with environment;

— communicativeness - data exchange with other agents;

— perception of environment - presence of special means of perception of the environment of functioning of the agent;

— mobility - moving of the agent in other program and physical environments.

The agent-oriented approach (AOA) has some fundamental differences from already traditional object-oriented approach (OOA) [1]. The agent represents more complex, active and independent unit (fig. 1).

Animation. Agent's structure

Figure 1 - The principle of work of the agent
Animation: size - 8,5 KB, 330x379, a palette - 16 colors,
quantity of frames - 20, quantity of cycles of repetition - 7,
delay between frames - 500 ms, a repetition delay - 2000 ms)

In OOA computing process is understood as the system constructed of modules, co-operating with each other and having own ways of processing of entering messages. And the turn, AOA specifies these frameworks, fixing activity of modules-agents and change of their statuses through the analysis of belief, obligations, intentions etc.

Presence at the agent of the mechanism of education of the purpose provides essentially new level of an autonomy [10]. The agent not necessarily carries out the order of any other agent or the user, and simply depends on conditions of environment, including the purposes and intentions of other agents. Unlike object, the agent can incur certain obligations or, on the contrary, to refuse performance of certain job, motivating it absence of competence, employment by other problem etc. At the same time the agent can carry out such actions as generation, removal, change of other agents, activization of their functions, scenarios of activity, storing of a current status of other agents.

All it, that the agent visually shows, being "active object" which forms own behavior, is at higher level of complexity in relation to traditional objects in OOA.

Modeling of complex dynamic systems in most cases is necessary as an obligatory component of agents of management and the control over network dynamic objects. The modeling block allows the agent to incorporate a mental picture of an external world - object which is investigated, supervised. Thus the agent or set of agents can count and expect consequences of the actions with object, correcting errors and the intentions [3]. The block of modeling for the distributed network systems also can consist of the agents, having data about the site of object. Agents unite for the joint decision of a problem of-calculation of streams, pressure of air in various parts of a ventilating network.


Software programming support agent technologies

To develop of the agent-oriented systems there are special libraries and components for the most widespread programming languages, helping with creation and adjustment of the developed system of agents.

The most known projects: AgentBuilder, Bee-gent, Cable, Decaf, FIPA-OS, Grasshopper, Gypsy, JADE, JASON, JAFMAS, MAML, ProcessLink, Swarm, Zeus.

Requirements to software can be divided into two classes: a generic and instrumental technology. It is necessary to carry to the first class: complete support of all phases of life cycle of the agent-oriented system; presence of the uniform integrated environment of working out of all components of system; support of various categories of users; maintenance of means of visual designing; automatic creation of executed program codes of intellectual agents; support of collective job over the project of system and the automated documenting of all phases of process of working out. The second class concern such making as maintenance of construction of the distributed knowledge bases and mechanisms of a logic conclusion, support of process of formation of logic models of the distributed system (formation ontologies described areas and distribution of knowledge of intellectual components agent systems); maintenance of ways of construction of models of behavior of agents; realization of mechanisms of parallel functioning, communications and coordination of agents; support of expansibility of models of agents in the course of real functioning etc.

Wide enough application was received by a platform multi-agent programming JADE (Java Agent Development Framework), completely realized on language Java. JADE simplifies working out multi-agent systems thanks to the tools supporting phases of adjustment and expansion of system. Agent the platform can be established on computers with various operational systems, and be configured through the remote GUI-interface even in execution time of agents. The communication architecture offers flexible and effective process of an exchange by messages where JADE creates turn and operates a stream of ACL-messages which are private for each agent. Agents are capable to address to turn by means of a combination of several operating modes: blocking, voting, breaks in job and comparisons to the standard.

JADEX environment which represents expansion multi-agent platforms is developed for platform JADE. This environment assumes hybrid reactive-deliberative architecture in which the agent is considered as «a black casket» which accepts and sends messages. Being based on results of processing of messages, internal and external events, deliberative the mechanism makes the decision on transition to a new plan of action or continuation of the old. The operating plan can send messages to other agents, change base of belief, form the new purposes and call internal events. The system uses library of plans which are processed as Java-classes.

Certain interest calls toolkit INGENIAS Development Kit (IDK). IDK represents a set of tool means for the description, checks and realizations multi-agent systems. The given environment of working out is functionally closed and platform-independent at the expense of realization Java. Functional isolation is shown that environment allows to carry out a full cycle of designing of system - from the visual description before final modeling.

IDK supports two kinds of the visual description: language AUML and methodology INGENIAS. AUML represents expansion of language UML, specialized for the description agent systems. Methodology INGENIAS is based on definition of a set of the metamodels describing behavior of each agent, interaction between agents, the organization multi-agent systems, an environment, the purposes and the problems defined for each agent.

The methodology provides construction of following metamodels [9]:

— Organizational a metamodel which describes architecture multi-agent systems and its functions. Functions are defined at the moment of the task of the purposes of the organization and an order of their performance;

— The environment metamodel, describing the essence, influencing perception of agents;

— The metamodel of the purposes and the problems describing changes of statuses of the agent in time depending on performance of specific targets, ways of achievement of the purposes and the actions which are carried out in case the purpose cannot be reached;

— The metamodel of the agent describing behavior of each agent;

— The metamodel of interaction describing behavior of two and more co-operating agents. Depending on language of the description it can be presented in the form of the cooperation or AUML-diagram UML-diagram.

The description received in the form of metamodels multi-agent systems can be processed by corresponding modules. The behavior of agents is defined by their purposes and problems, and also interaction between them [3]. The purposes in turn can break into more simple purposes which can be reached by certain sequences of problems. In INGENIAS any interaction begins with the task. Set of problems and interactions defines global behavior of system. On the basis of all description of system there is a code generation. The received description can be used for creation of a program code multi-agent systems under a concrete platform.

Thus, all considered software products are capable to help the developer of systems of modeling of network dynamic objects with the distributed parameters top-level programming.


Conclusions

In job the basic characteristics of network dynamic objects with the distributed parameters, and also the agent-oriented approach to modeling of complex dynamic systems have been investigated and analyzed. The analysis of the software helping with working out multi-agent of systems is made. It is defined, that these systems can be used for programming of simulators NDO DP. Algorithms of functioning of the agent-oriented modeling environment are developed for modeling of network dynamic system with the distributed parameters and displays agents implementation on target architecture are investigated.

In Ukraine there are not many articles devoted to research of use of agent technologies. In this job it has been proved, that the new technology is very perspective as allows to pass to qualitatively new level of engineering and programming, to increase reliability, speed and interactivity of simulars of complex dynamic systems.


References

1. Хьюз Камерон, Хьюз Трейси. Агентно-ориентированное программирование. Параллельное и распределенное программирование с использованием С++ . 672 стр. 2004.

2. Святний В.А., Молдованова О.В., Перерва А.О. Проблемно-орієнтоване паралельне моделююче середовище для динамічних мережних об’єктів. // Наукові праці ДонДТУ, серія «Інформатiка, кибернетика та обчислювальна технiка», вип. 29. — Донецьк, 2001.

3. Швецов А. Н. Агентно-ориентированные системы: от формальных моделей к промышленным приложениям, 2008.

4. Наукові праці Донецького національного технічного університету. Серія «Проблеми моделювання та автоматизації проектування динамічних систем» (МАП-2008). Випуск 7(150):–Донецьк: ДонНТУ.—2008.—290 с.

5. Википедия. Агентно-ориентированный_подход [Электронный ресурс]. — Режим доступа: http://ru.wikipedia.org/wiki/Агентно-ориентированный_подход.

6. Гусєва Г.Б. MIMD-паралельний вирішувач рівнянь для мережного динамічного об’єкту з розподіленими параметрами / Г.Б.Гусєва, О.В.Молдованова. // Проблемы моделирования и автоматизации проектирования динамических систем: Сб. научн. тр. ДонНТУ, вып.6, Донецк, 2007.

7. Svjatnyj V.A.: Virtuelle parallele Simulationsmodelle und Devirtualisierungsvorgang der Entwicklung von parallelen Simulatoren fur dynamische Netzobjekte mit verteilten Parametern / V.A.Svjatnyj.

8. Википедия. Многоагентная_система [Электронный ресурс]. — Режим доступа: http://ru.wikipedia.org/wiki/Многоагентная_система.

9. Субботін С.О., Олійник А.О., Олійник О.О. Неітеративні, еволюційні та мультиагентні методи синтезу нечіткологічних і нейромережних моделей: Монографія / Під заг. ред. С.О. Субботіна. — Запоріжжя: ЗНТУ, 2009. — 375 с.

10. Gerhard Weiss, ed. by, Multiagent Systems, A Modern Approach to Distributed Artificial Intelligence, MIT Press, 1999.