Современные информационные технологии / Вычислительная техника и программирование

 

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.)