Современные информационные технологии /
Вычислительная техника и программирование
Kryuchin O.V., Vyazovova
E.V., Tarasov E.P.
Tambov State University named after G.R.
Derzhavin
Distributed
computing system for buildings models based on the artificial neural networks
technology in the economic sphere
Nowadays we need to use the
building of the models based on the artificial neural networks technology
(ANN-models) in different science brunches. First of all such science brunch is
the economic because there it is necessary to build compound objects models but
the building cannot be defined by this sphere rules. Many expert systems are
based on such models and each system uses its neural network core. The reason
of it is the absent of universal neural network simulator which can be used by
different systems as the intellect core [1]. That is why it is very actual to
develop such simulator. Often building ANN-models needs large time expenses
because the modern computer mighty is not sufficient thus for increasing the
building we should uses computer clusters and include parallel algorithms in
the simulator. So this paper aim is to develop the distributed computing system
for building ANN-models using computer clusters.
As we know the terms "distributed system" originally
referred to computer networks where individual computers were physically
distributed within some geographical area [2]. The term is nowadays used in a
much wider sense, even referring to autonomous processes that
run on the same physical computer and interact with each other by message
passing [3]. While there is no single definition of a distributed system [4],
the following defining properties are commonly used:
·
there are several autonomous
computational entities, each of which has its own local memory [2-5];
·
the entities communicate with
each other by message passing [3-4, 6].
A distributed system has a
common goal, such as solving a large computational problem is the building and
executing of ANN-models. Our system consists of two components. The first component
is the neural network simulator [7] and it implementing instances are located
on computer clusters calculating nodes. The second component is the simulators
server and the implementing it instance is located on the computer cluster
master-node.
When we run neural network
simulators we pass parameters of the connection to Server (the master node ip-address
and the number of the port which is listened by Server). After the connection
simulators begin to wait a command defining necessity operations for example
the ANN-model building or the executing
it. Next neural network simulators operation is the received command execution
and at this time receiving new commands is impossible. If it is necessary to
execute new commands then Server creates a turn and pushes back commands there.
When simulators will be free Server will pop front a command and send it.
Pic. 1. The diagram of computing system components.
We have selected MPI (Message
Passing Interface) as the protocol of interprocessor passing data in neural
network simulators. Nowadays it is the one of the most popular protocols for this
task and there are many freeware and commercial libraries implements it for the
C++ language and etc. [8]. Usually this protocol used in systems with the distributed
memory. It means that it is not good for supercomputers but it is the ideal for
computer clusters. Our computing system is developed for clusters thus we can
use MPI.
There are different systems of
the computer clusters management. For example Tambov State University named
after G.R. Derzhavin (Tambov, Russia) uses PBS (Portable Batch System) for it
but Tambov State Technical University (Tambov, Russia) uses nothing. As far as Server
executes simulators it needs to can work with different management systems. One
of the simplest methods of running programs on nodes with the MPI standard
usage is MPICH. This method is used by the Tambov State Technical University
computer cluster and it is included in Server methods. Other standard of the
running is PBS which is used by the computer cluster of Tambov State University
named after G.R. Derzhavin.
In the installation process the
installer asks node names and connection parameters and then copies neural
network simulator insures to nodes. Picture 2 shows the diagram of the system deployment
in the computer cluster of Tambov State University named after G.R. Derzhavin.
Usually computer cluster nodes have a common files system (it may be realized
using NFS technology or using other methods) but sometimes it may be not so. In
such situation the automatic location is not possible and it should user to
inform the installer about it and to deploy the computing system by hands.
Pic. 2. The diagram of the distributed computing
system deployment on the computer cluster of Tambov State University named
after G.R. Derzhavin.
For the interaction with users
it is necessary to have a component which is the interface and is adapted for
the concrete task. This component connects to Server and sends a task to it.
Server after receiving this task runs a serial or a parallel neural network
simulator version. Thus we have few calculating system algorithm steps:
1. starting Server;
2. connecting a client (interface) program to Server;
3. passing the task by a client to Server;
4. staring neural network simulators by Server;
5. connecting run neural network simulators to Server;
6. passing a task by Server to neural network simulators;
7. executing a task by neural network simulators;
8. passing a simulators execution result to Server;
9. stopping neural network simulators;
10. passing execution results to the client from Server.
So we have developed the
distributed computing system which can be used for building ANN-models using
computer clusters. This computing system may be used as the expert system
intellect core.
References
1. Крючин О.В.
Вычислительная система для построения моделей искусственных нейронных сетей //
Наука в современном мире: Материалы IX Международной
научно-практической конференции – М.: Спутник, 2012 – С.238-240. (Kryuchin O.V.
Calculating system for building artificial neural networks models // Science in
modern world: Processes of IX International scientific-practical conference –
Moscow.:Sputnik, 2012 – P.238-240.)
2. Lynch Nancy A. Distributed Algorithms // Morgan
Kaufmann, 1996.
3. Andrews, Gregory R., Foundations of Multithreaded,
Parallel, and Distributed Programming // Addison–Wesley, 2000.
4. Ghosh Sukumar Distributed Systems – An Algorithmic
Approach, Chapman & Hall/CRC, 2007.
5. Dolev Shlomi Self-Stabilization // MIT Press, 2000.
6. Peleg David, Distributed Computing // A
Locality-Sensitive Approach, SIAM, 2000 // http://www.ec-securehost.com/SIAM/DT05.html.
7. Крючин О.В.,
Арзамасцев А.А, Королев А.Н., Горбачев С.И., Семенов Н.О. Универсальный
симулятор, базирующийся на технологии искусственных нейронных сетей, способный
работать на параллельных машинах. // Вестн. Тамб. ун-та. Сер. Естеств. и техн.
науки. – Тамбов, 2008, – Т. 13. Вып. 5 – С. 372-375. (Kryuchin
O.V., Arzamastsev A.A., Korolev A.N., Gorbachev S.I., Semenov N.O. Universal
simulator based on the technology of artificial neural networks which can be
work on parallel computers // Tambov University Reports. Series: Natural and
Technical Science - Tambov, 2008, – Vol. 13, Iss. 5 – P
372-375.)
8. Букатов А.А., Дацюк
В.Н., Жугуло А.И. Программирование многопроцессорных вычислительных систем //
Ростов-На-Дону. 2003. (Bukatov A.A., Datcuk V.N., Jugolo A.I. Programming multiprocessors
computing systems // Rostov-On-Don. 2003.)