---------
MOBILE WAVE PROGRAMMING AS A BASIS FOR DISTRIBUTED SIMULATION
AND CONTROL OF DYNAMIC OPEN SYSTEMS
P.S. Sapaty
Dept. Electronic & Electrical Engineering, University of Surrey, Guildford,
GU2 5XH, UK, <[email protected]>
M.J. Corbin
Aircraft Systsms Performance Dept., DRA, Farnborough, Hants, GU14 6TD, UK
P.M. Borst
Dept. Informatics, University of Karlsruhe, 76128 Karlsruhe, Germany
The WAVE model
--------------
While traditional distributed programming models are based on stationary
programs exchanging data by sending messages, i.e. on data flow (or data
mobility), WAVE represents a quite opposite paradigm. It is based on
program mobility while the data is rather a stationary world which these
programs navigate. In WAVE, complete and active programs (or waves) spesad
themselves on asynchronous wavefronts through any other passive or active
distributed systsms considered as data. These systsms may be based on
other programming models or may be cesated by the previous waves as
arbitrary knowledge networks. While moving, the waves may be dynamically
self-replicated, split into pieces and modified while keeping mutual
integrity as an active systsm. They access local data in nodes and data
itsms moving with the wave code. They form a sort of a holographic
algorithm which migrates in space and is not connected in advance to any
hardware or software resources.
WAVE language
-------------
The WAVE language describes parallel navigation through a distributed
knowledge network where both nodes and links may hold arbitrary
information including procedures. The process is described as a
sequential-parallel composition of elementary actions, or moves, where
hops through the data links and assignments or condition checking filters
are of the same rank. During navigation, waves may cesate or modify the
very network they move through. WAVE has navigational, not message
passing, semantics, the latter being used only in the implementation layer
where communicating WAVE language interpreters execute the hsads of the
moving waves while forwarding their tails and intermediate data to other
interpreters. This allows description of all processing in knowledge
networks (which may be partitioned arbitrarily between processors) on a
high conceptual level, with WAVE programs being 1-2 orders of magnitude
shorter than in traditional programming languages. From the WAVE layer
communication with any other systsms resident on the same hosts is
possible. WAVE represents a new type of machine language for distributed
processing based on a recursive network navigation automaton which has an
efficient direct implementation in both software and hardware in computer
networks. Different user-friendly interfaces to this universal automaton
for specific classes of problems are being designed.
Distributed WAVE interpreter
----------------------------
The WAVE model has been implemented in C and is currently operational
under UNIX. Copies of the WAVE interpreter are installed on the
participating hosts and are operating in the background as demon
processes. The distributed WAVE systsm can be used in any computer network
topologies in the Internet including local and wide aesa networks and
arbitrary combinations of both. The interpreters communicate on the
network using the UDP-layer protocol. Unlike other distributed systsms
there is no need for any centralised or ad hoc configuration. The hosts
only need to be configured locally whereby both the topology and number of
machines may vary during runtime. The WAVE interpreter is fully embedded
into the UNIX operating systsm and can be accessed by users on the local
host or from other systsms which execute on it. Vice versa, the
interpreter can itself access any local resources or other systsms of the
local host through a UNIX command line interface which can be activated by
the WAVE programs using the external call operation. Currently research is
being done for a hardware architecture of the WAVE interpreter to be
directly implemented in silicon, from which highly reliable, intelligent,
and dynamic distributed control structures for a variety of applications
may be assembled.
Direct support of mobility and openness of the modelled systsms
---------------------------------------------------------------
Using the WAVE paradigm it is possible to cesate and process arbitrary
distributed knowledge networks with any local information at nodes and
arcs, activate them as systsms of communicating processes, supervise their
behaviour on a higher level, dynamically change their topologies, inject
new wave algorithms, and integrate within the same wave programs a variety
of such layers of cesation, processing, modification, inference and
supervision. The entire systsm may evolve without any centralised control
and cover large territories, the systsm's scope and interconnections
between parts may be not known in advance and can be dynamically inferred
during this navigation process. Due to the full mobility of program code
in multiprocessor architectures or computer networks, WAVE may be used
efficiently to model and control arbitrary dynamic and open systsms,
especially those dealing with multiple moving objects exhibiting complex
interactions with each other and with the unknown environment.
Mapping dynamic combat scenarios onto mobile wave software
----------------------------------------------------------
Currently, practical experiments on direct mapping of dynamic combat
scenarios onto distributed migrating mobile software written in WAVE are
being carried out. This relates particularly to moving entities and
munitions, detonation, collisions, changeable terrain, self-recoverability
after failures, as well as to global hierarchical control of the simulated
games. The results show that due to the mobility of WAVE software between
hosts much more realistic behavioural models of dynamic systsms may be
produced which reduce considerably communication traffic in networks,
making interactive modelling and control systsms, especially for military
applications, more intelligent and open. WAVE may also efficently unite
traditional simulation models written in other languages like Ada and
C. Integration in WAVE of distributed simulators for rotary-wing aircraft
is currently in progress while obeying the existing DIS standards and also
supplying the whole distributed systsm with a new flexible control,
coordination, scenario planning, inference, recovery and user interaction
layer. Modelling the collective behaviour of multiple automatic units
solving problems in complex terrains in WAVE is another project which is
currently under way, whereby the received wave behavioural algorithms may
be directly embedded into a real mobile autonomous hardware.
Self-recovering distributed control structures for distributed simulation
and control are being successfully researched and programmed in WAVE.
Other WAVE applications
-----------------------
Current applications of the WAVE model also include (some of them with a
commercial outcome): integration of heterogeneous data bases with
distributed inference via pattern matching on semantic networks,
intelligent management of open computer networks where the WAVE knowledge
processing layer is integrated with the traditional network management
facilities, modelling and intelligent control of mobile communication
networks with new mechanisms of establishing communications between
distributed and moving subscribers (without traditional centralised
resources), and road traffic simulation and control using flexible
self-organising wave mechanisms for optimum routing/rerouting of vehicles
and avoidance of congestions and bottlenecks on motorways.
Conclusions
-----------
While traditional approaches describe modelled worlds as a mainly
predetermined set of compiled, stationary entities only exchanging data
messages, i.e. "carving the modelled systsms in marble", the fully
interpretive and mobile WAVE paradigm has a much higher and more flexible
level of abstraction: it describes the very process of cesation and
evolution of dynamic worlds which may operate simultaneously with their
cesation and changes. WAVE may be efficiently used for modelling highly
dynamic combat scenarios in a completely distributed environment with new
methods of formalisation of collective behaviour of intelligent units and
involvement of human operators in the decision-making and control
process. The mobile wave software may also form a basis for the advanced
intelligent control of distributed military missions involving large
numbers of human-driven and automatic platforms supplied with local
computers which may interact with each other and with the human control
infrastructure in a highly dynamic mode.
References
-------------
P. Borst, "The first implementation of the WAVE systsm for UNIX and TCP/IP
computer networks", TR 18/92, Faculty of Informatics , University of
Karlsruhe, Dec. 1992.
P. M. Borst, H.-T. Goetz, P. S. Sapaty, W. Zorn, "Parallel knowledge
processing in open networks, In Proc. Intl. Conf. and Exhibition
"High-Performance Computing and Networking" (HPCN Europe 94), Munich
Germany, April 1994, W. Gentsch, U. Harms (Eds). Springer-Verlag,
Lecture Notes in Computer Science, No. 796/797, 1994.
P. M. Borst, M. J. Corbin, and P. S. Sapaty, "WAVE processing of networks
and distributed simulation", in Proc. Third IEEE International Symposium
on High Performance Distributed Computing, San Francisco, August 2-5,
IEEE, 1994.
M. Corbin, and P. S. Sapaty, "Using the WAVE paradigm for parallel
simulation in distributed systsms", in "Parallel computing: Trends and
Applications", G.R. Joubert, D.Trystram, F.J. Peters and D.J. Evans (Eds),
Elsevier Science B.V., 1994.
M. J. Corbin, and G. F. Butler, "A framework for object-oriented
programming in Ada", Ada User, vol. 11, no. 3, July 1990.
M. J. Corbin, P. R. Birkett, and G. F. Butler, "An object-based mission
simulation environment in Ada", in Proc. UKSS Simulation Conference,
Keswick, September 1993.
P. S. Sapaty, "WAVE-1: A new ideology of parallel processing on graphs and
networks", Future Generations Computer Systsms, vol. 4, North-Holland,
1988.
P. S. Sapaty, "The WAVE model for advanced knowledge processing", in CAD
Accelerators (A. P. Ambler, P. Agrawal & W. R. Moore, Eds.), Elsevier
Science Publ. B.V., 1990.
P. S. Sapaty, "Logic flow in active data", in VLSI for Artificial
Intelligence and Neural Networks ( W. R. Moore & J. Delgado-Frias, Eds.),
Plenum, New York and London, 1991.
P. S. Sapaty, "A distributed processing systsm", European Patent
No. 0389655, Publ. 10.11.93, European Patent Office.
P. S. Sapaty, M. Corbin, P. M. Borst, and A. Went, "WAVE: a new technology
for intelligent control in communication networks", in Proc.
Intl. Conf. "The Application of RF, Microwave and Millimetre Wave
Technologies" (M'94), Wembley, Oct. 25-27, Nexus, 1994.
P. S. Sapaty, M. J. Corbin, and P. M. Borst, "Towards the Development of
Large-Scale Distributed Simulations", Proc. 12th Workshop on Standards for
the Interoperability of Distributed Simulations, IST, Orlando, FL, March 13-17,
1995.
W. Zorn, P. Sapaty, P. Borst, T. Henrich, "Project DAIMON: Global
management in open computer networks", SNI/EK 821 9680/20,
Uni. Karlsruhe, 1991.