DESCRIPTION OF ONE ALGORITHM FOR SOLVING PROBLEMS OF QUEUING THEORY BY THE METHOD OF STATISTICAL TRIALS
Unknown
Submitted 1963-01-01 | RussiaRxiv: ru-196301.74774 | Translated from Russian

Abstract

Full Text

CYBERNETICS AND CONTROL THEORY

I. FIDRIKH

DESCRIPTION OF ONE ALGORITHM FOR SOLVING PROBLEMS OF QUEUING THEORY BY THE METHOD OF STATISTICAL TRIALS

(Presented by Academician A. I. Berg on 26 VI 1963)

In queuing theory one studies systems consisting of a set of input flows, a serving system, and a set of output flows* (see, for example, \((^1)\)). Each system \(S\) is characterized by some set of random variables** \(\mathcal H_S\). Problems of queuing theory in the general case may be formulated as follows. For some system \(S_0\), subsets \(\mathcal K_{S_0}\), \(\mathcal X_{S_0}\), and \(\mathcal Y_{S_0}\) of the set \(\mathcal H_{S_0}\) are distinguished. For each \(i = 1, 2, \ldots, |\mathcal Y_{S_0}|\)*** it is necessary to determine the function \(y_i = f_i(\mathcal X_{S_0}, \mathcal K_{S_0})\), where \(y_i \in \mathcal Y_{S_0}\) and \(\mathcal K_{S_0}\) is regarded as invariable.

In the general case, the function \(f_i\) can be defined only in such a way that, for given \(\mathcal X^j_{S_0}\) and \(\mathcal K_{S_0}\), \(y_i^j = f_i(\mathcal X^j_{S_0}, \mathcal K_{S_0})\) is determined \((j = 1, 2, \ldots, N)\).

If the use of analytical apparatus is impossible for determining \(y_i^j\), then one resorts to the method of statistical trials, the essence of which is as follows. For given \(\mathcal X^j_{S_0}\) and \(\mathcal K_{S_0}\), a stochastic model of the system \(M(\mathcal X^j_{S_0}, \mathcal K_{S_0})\) is constructed. On this model a series of statistical trials is carried out, as a result of which \(\{y_i^j\}\) is obtained—the set of values of the quantity \(y_i^j\). By statistical processing of \(\{y_i^j\}\), the quantity \(y_i^j\) can be determined. If \(|\mathcal Y_{S_0}| > 1\), then with the aid of the model \(M(\mathcal X^j_{S_0}, \mathcal K_{S_0})\) one can obtain \(\{y_i^j\}\) for all \(i = 1, 2, \ldots, |\mathcal Y_{S_0}|\) simultaneously.

The algorithm set forth below is a general stochastic model \(M(\mathcal X, \mathcal K)\), from which the model of a concrete system for solving a particular problem is obtained simply by substituting the corresponding characteristics \(\mathcal X_0\), \(\mathcal K_0\) for the parameters of the algorithm.

We may represent the functioning of a system in such a way that the elements of the system perform a certain sequence of operations on certain objects, which we shall understand by the word “units.” We can carry out the investigation of a system on two basic principles.

A. In the course of the investigation we follow the units.
B. In the course of the investigation we follow the elements of the system.

The modeling algorithms existing so far are also constructed on principle A or B. The models described in \((^{2,3})\), as well as the method of constructing fairly general modeling algorithms set forth in \((^4)\), are based on principle A. The model described in \((^5)\) is based on principle B, as is the modeling algorithm set forth below.

The algorithm is based on certain concepts and propositions relating to graph theory****.

* In what follows, the word “system” will be used only in this extended sense.
** In what follows, by the word “quantity” we shall understand random quantities, of which deterministic quantities are a special case. A quantity is considered given if its distribution function is given.
*** Here and below, \(|A|\) denotes the number of elements of the set \(A\).
**** Directed graphs are considered, in connection with which the concepts and notation used in \((^6)\) are employed.

Let a set of numbers \(\bar A=\{a_1,a_2,\ldots,a_{|X|}\}\) be given such that for all \(i\ne j\) and \(1\leq i,j\leq |X|\) the inequality \(a_i\ne a_j\) holds. By a renumbering of the graph \(G=(X,U)\) by the numbers \(a_1,a_2,\ldots,a_{|X|}\) we shall mean a one-to-one correspondence between the sets \(X\) and \(A\). If the vertex \(x\in X\) corresponds to the number \(a_i\), then we shall say that the vertex \(x\) has number \(a_i\), and shall denote this fact by \(x_{a_i}\).

A graph \(G=(X,U)\) for which some renumbering of it is given will be called a renumbered graph. For a renumbered graph \(G=(X,U)\), the set of those arcs \(u=(x_{a_i},x_{a_j})\in U\) for which \(a_i>a_j\) will be denoted by \(\overline U\).

By an admissible renumbering of a graph \(G=(X,U)\) we shall mean its renumbering by the numbers \(1,2,\ldots,|X|\) satisfying the conditions: 1) the inputs of the graph have the numbers \(1,2,\ldots,|X_1|\), where \(X_1\) is the set of inputs of the graph; 2) the outputs of the graph have the numbers \(|X|-|X_3|+1,\ |X|-|X_3|+2,\ldots,|X|\), where \(X_3\) is the set of outputs of the graph; 3) \(|\overline U|=0\).

By an almost admissible renumbering of a graph \(G=(X,U)\) we shall mean its renumbering by the numbers \(1,2,\ldots,|X|\) satisfying conditions 1), 2), and 3′) \(|\overline U|\leq r\), where \(r\) is the number of circuits of the graph.

I. Every finite graph having no isolated points can be renumbered in an almost admissible way.

From this proposition it follows:

II. Every finite graph without circuits and having no isolated points can be renumbered in an admissible way.

We shall now introduce some concepts used in the exposition of the algorithm.

According to the role played by an element of the system in the functioning of the system, the elements of the system are divided into two groups.

  1. By active elements we shall mean those elements of the system whose operations can lead to changes in the quality or position of units. This group includes the input flows, the servicing and transporting (hereinafter considered by us as servicing) elements, and the output flows of the system.

  2. By passive elements we shall mean those elements of the system whose operations do not lead to any changes in the units, but serve only for storing units both at a time when no active element is performing operations on them and during the performance of an operation on them by some active element.

The functioning of each active element consists of a sequence of its operations performed by it on units. The operation of each active element consists of several phases. Combining some of them, we obtain the following phases: for an input flow: 1) introduction of units; 2) placement of the units introduced by it into passive elements; for a servicing element: 1) removal of units from passive elements; 2) servicing of the units removed by it; 3) placement of the units serviced by it into passive elements; for an output flow: 1) removal of units from passive elements; 2) withdrawal from the system of the units removed by it.

Since every unit, during its movement through the system, is at each moment of time in some passive element of the system, at each moment of time the state of the system can be characterized by the state of its passive elements. A change in the state of the system can occur at such a moment of time when some active element performs a phase of its operation concerning the passive elements of the system. Therefore, in constructing the simulating algorithm, we proceed as follows.

The model of the system is examined only at those instants of time when the state of the model changes. At the instant of time when the model of some

of the system must change the state of the system, the model of precisely this active element is inspected. To decide the question of the model of which active element should be inspected first in the case when the times for inspecting the models of several active elements coincide, we order the active elements of the system as follows.

By the graph of the system we shall mean the graph \(G=(X,\Gamma)\), for which: \(X\) is the set of active elements of the system, and \(\Gamma x\) is the set of those active elements of the system that can perform operations on units immediately after the active element \(x\in X\).

Renumber the graph of the system \(G=(X,U)\) in an arbitrary way by the numbers \(1,2,\ldots,n_1+n_2+n_3\) so that: 1) the input streams have the numbers \(1,2,\ldots,n_1\); 2) the output streams have the numbers \(n_1+n_2+1,\ n_1+n_2+2,\ldots,n_1+n_2+n_3\), where \(n_1\) is the number of input streams, \(n_2\) is the number of service elements, and \(n_3\) is the number of output streams of the system. These two requirements are equivalent to the first two requirements of an admissible and almost admissible renumbering, which can always be carried out if the graph is finite and has no isolated points. Consequently, the algorithm is applicable to solving problems connected with systems whose graph is a finite graph without isolated points.

In the case when the times for inspecting the models of several active elements coincide, we agree to inspect first of all the model of that active element of the system which has the smallest number among them. From this condition it follows that the functioning of the model \(M(\mathscr X_0,\mathscr K_0)\), obtained from the modeling algorithm being set forth, copies the functioning of the system with an accuracy depending on \(|\overline U|\). If \(|\overline U|=0\), i.e., if the graph of the system has been renumbered in an admissible way, then exact copying is obtained. If the graph of the system is a graph without circuits, then, by virtue of II, exact copying can always be achieved. If the graph of the system contains circuits, then under any renumbering of it one will have \(|\overline U|>0\), and in such a case it is desirable that \(|\overline U|\) be as small as possible. This aim is achieved by an almost admissible renumbering of the graph of the system, which exists, by virtue of I, for every finite graph without isolated points.

Fig. 1

Fig. 1

From the general properties of operations of active elements it follows that it is enough for us to construct three algorithms \(M_1\), \(M_2\), and \(M_3\), which copy the functioning of an input stream, a service element, and an output stream, respectively, and whose parameters are certain subsets of the parameters \(\mathscr X\) and \(\mathscr K\). Denote by \(\mathscr X_0^k\) and \(\mathscr K_0^k\) the subsets of the sets \(\mathscr X_0\) and \(\mathscr K_0\), respectively, belonging to the \(k\)-th active element of the system and to the passive elements of the system associated with it. At the time of inspecting the model of the \(k\)-th active element of the system, the algorithm \(M_l\) is applied to the parameters \(\mathscr X_0^k\) and \(\mathscr K_0^k\), if

\[ \sum_{m=1}^{l-1} n_m < k \le \sum_{m=1}^{l} n_m . \]

The algorithm makes the corresponding changes in the states of the models of the corresponding passive ele-

moments*, determines the successive elements of the set $\{y\}$ and the nearest time at which the model of the $k$-th active element of the system is to be examined.

The block diagram of the functioning of the model $M(\mathscr X_0,\mathscr Y_0)$ obtained from the algorithm described is shown in Fig. 1, where the following notation is used: a notation of the form $M_t(A,B)$ denotes the application of the algorithm $M_t$ to the parameters $A$ and $B$; $t=(t_1,t_2,\ldots,t_{n_1+n_2+n_3})$ is the vector of the times of the nearest examinations of the models of the active elements of the system; and $T$ is the time at which the study of the model $M(\mathscr X_0,\mathscr Y_0)$ ends.

The algorithm described above is used by the author for solving certain problems connected with metallurgical production.

The author takes this opportunity to express his deep gratitude to his scientific adviser, Corresponding Member of the USSR Academy of Sciences L. A. Lyusternik, for a number of valuable comments concerning the author’s work.

Moscow State University
named after M. V. Lomonosov

Received
11 VI 1963

References

  1. A. Ya. Khinchin, Works on the Mathematical Theory of Queueing, Moscow, 1963.
  2. N. P. Buslenko, Problems of Information Transmission, vol. 9, Publishing House of the USSR Academy of Sciences, 1961.
  3. G. P. Klimov, G. A. Aliev, Journal of Computational Mathematics and Mathematical Physics, 1, No. 5 (1961).
  4. G. P. Klimov, Journal of Computational Mathematics and Mathematical Physics, 1, No. 5 (1961).
  5. I. S. Lyubchenko, I. E. Maizlin, Doklady AN SSSR, 148, No. 3 (1963).
  6. C. Berge, The Theory of Graphs and Its Applications, IL, 1962.

* Naturally, for passive elements there is no need to construct a modeling algorithm; for them it is only necessary to allocate positions.

Submission history

DESCRIPTION OF ONE ALGORITHM FOR SOLVING PROBLEMS OF QUEUING THEORY BY THE METHOD OF STATISTICAL TRIALS