close

Вход

Забыли?

вход по аккаунту

?

Методы и алгоритмы решения задач целочисленного квадратичного программирования на основе линеаризации целевой функции.

код для вставкиСкачать
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
УДК 519.852
МЕТОДЫ И АЛГОРИТМЫ РЕШЕНИЯ ЗАДАЧ
ЦЕЛОЧИСЛЕННОГО КВАДРАТИЧНОГО ПРОГРАММИРОВАНИЯ
НА ОСНОВЕ ЛИНЕАРИЗАЦИИ ЦЕЛЕВОЙ ФУНКЦИИ
В.Д. Киселев
Рассмотрены эффективные методы решения общей задач и ЦКП и задачи
ЦКП с булевыми переменными, основанные н линеаризации целевой функции с использованием теории двойственности.
Ключевые слова: целочисленное квадратичное программирование, теория
двойственности, целевая функция.
Задачи целочисленного квадратичного программирования (ЦКП)
возникают при проектировании сложных систем, организации вычислений в системах с распределенной обработкой данных, составлении расписаний и др. Основные направления исследований по методам решения задач ЦКП, связаны с изучением следующих возможностей:
- разработка новых алгоритмов решения задач средней и большой
размерности;
- создание специализированных алгоритмов решения, учитывающих структурную специфику задач для достижения эффективности вычислений и объемов памяти;
- разработка приближенных алгоритмов для решения в условиях
ограниченных ресурсов компьютеров и возможностей точных методов;
- создание алгоритмов, ориентированных на параллельную организацию вычислений при существенной эффективности решения задач ЦКП
большой размерности.
Обзор методов и методик решения задач ЦКП позволяет выделить
ряд направлений: применение методов отсечений к задачам ЦКП; использование комбинаторных методов; решение задач ЦКП алгоритмами, основанными на принципе динамического программирования; приближенные
методы решения задач ЦКП. Однако большинство методов разработано
для задач ЦКП с булевыми переменными, что связано с особенностями
этой задачи, позволяющими существенно упростить алгоритм ее решения.
Процедуры решения задач ЦКП подразделяются на алгоритмы прямого
решения задачи ЦКП и алгоритмы, преобразовывающие задачу ЦКП в эквивалентную линейную частично-целочисленную задачу и затем решающие последнюю задачу.
Анализ методов и алгоритмов решения задач ЦКП выявил ряд недостатков:
- ориентированность большинства алгоритмов на решение частных
задач (выпуклая или вогнутая целевая функция, покрывающие ограничения, булевы переменные, линейные ограничения);
402
Управление, вычислительная техника и информационные технологии
- сложность формирования секущих плоскостей в методах отсечения;
- сложность определения коэффициентов линейной функции или
существенное увеличение размерности решаемой задачи в методах, основанных на линеаризации целевой функции;
- малая размерность ( ≤ 30 переменных для точных алгоритмов) и
большое время решения задач.
Ниже рассмотрены новые эффективные алгоритмы решения общей
задачи ЦКП и задачи ЦКП с булевыми переменными, основанные на линеаризации целевой функции с использованием теории двойственности.
Выбор этого подхода объясняется тем, что даже линейные задачи большого размера можно решить сравнительно легко. В этом случае решение задачи ЦКП базируется на двух этапах. На первом этапе решением n линейных задач определяются коэффициенты линейной функции. На втором
этапе при использовании методов определяется:
- при методе ветвей и границ - порядок ветвления переменных и
оценки границ решения задачи ЦКП на базе двойственной по отношению к
линеаризованной задаче;
- при методе встречного решения функциональных уравнений динамического программирования - множество допустимых решений линеаризованной задачи, на котором осуществляется анализ значений квадратичной функции.
1. Рассмотрим задачу дискретного квадратичного программирования. Необходимо максимизировать [1]
n
n n
j=1
j=1k =1
f (x) = ∑ c jx j + ∑ ∑ d kjx k x j
(1)
при ограничениях:
n
∑ a i j x j ≤ b i , i = 1,2,..., m,
(2)
x j = 0,1,2,...,
(3)
j=1
[ ]
j = 1,2,..., n,
[ ]
где D = d kj - неотрицательная матрица порядка n, A = a i j - матрица
[ ]
размерности n × m; C = c j и B = [bi ] - неотрицательные векторы размерности n и m соответственно.
Обозначим через u j ((j = 1, ..., n) максимальное значение целевой
функции следующей задачи при ограничениях (2), (3):
n
u j = max ∑ d kjx k ,
k =1
Составим линейную функцию g(x) такую, что
403
(4)
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
n
g(x) = ∑ (c j + u j )∀x j
{
j=1
(5)
}
Для любых X = x j , j = 1,2,..., n , удовлетворяющих ограничениям
≥
f(x), что подтверждается преобразованием
n
n  n
n
n

f(x) = ∑ c j x j + ∑  ∑ d kj x k ∀x j ≤ ∑ c j x j + ∑ u j x j .
j=1
j=1 k =1
j=1
j=1

Для определения коэффициентов в линейной форме воспользуемся
одним из вариантов решения непрерывной задачи линейного программирования (4), (2), в которой условие целочисленности переменных ослабляется и заменяется условием
x j ≥ 0, j = 1,2,..., n.
(6)
(2),
(3),
g(x)
Применение достаточно простого симплекс-метода для многократного (n раз) решения задач (4), (2), (6) приводит к большим вычислительным трудностям, поэтому можно использовать приближенное решение соответствующих двойственных задач, для определения которого воспользуемся итерационным алгоритмом, основанным на идеях градиентного метода.
Двойственной по отношению к (4), (2), (6) является следующая задача:
m
'
u q = min ∑ b i y i ,
i =1
(7)
m
∑ a i k y i ≥ d k q , k = 1,2,..., n,
(8)
i =1
y i ≥ 0, i = 1,2,..., m.
(9)
Алгоритм решения задачи (7)-(9) включает следующие шаги:
bi
10. Определить величину pi(r) =
, где k = 1, 2,... - номер ите∑ ai k
k∈I(r)
рации; I (r) - множество индексов условий (8), для которых неравенства не
(
)
выполняются при r = 1 I (1) = { k = 1,2,..., n } .
20. Выбрать двойственную переменную y(r)
l , для которой выполня(r)
ется условие d (r)
l = min pi .
i
m + n r −1
30. Вычислить значение переменной y(r)
e = min
k
404
d k q − ∑ ∑ a i k y(t)
e
i =1 t =1
ae k
.
Управление, вычислительная техника и информационные технологии
40. Исключить из множества I (r) индекс уравнения, для которого
выполняется условие r = n. Если условие не выполняется, то положить
r = r + 1 и перейти к п. 10, в противном случае - к п. 50.
r
(r)
50. Вычислить y i = ∑ y i , i = 1,2,..., m и
t =1
m
u'q =
∑b y
i i
.
i =1
Приведенный алгоритм сравнительно прост и обеспечивает высокую точность решения, что показали результаты эксперимента.
Таким образом, после решения n задач (7)-(9) определяются величины u j линейной формы (5). На этом первый этап заканчивается.
На втором этапе при решении задачи ЦКП методом ветвей и границ
величина оценки решения определяется как Hsl (x l ) = Csl (x l ) + Zsl (x l ), где
Csl (x l ) = ∑ c jx j + ∑ ∑ d kl x k x l - значение целевой функции lj∈ sl
j k ∈ sl
{
}
частичного решения задачи (1)-(3); S l = (k j ), j = 1,2,..., l; 0 ≤ l ≤ n множество индексов переменных задачи (1)-(3), вошедших в l-частичное
решение. Для сокращения объема вычислений при определении величины
ZSl (x l ) воспользуемся теорией двойственности.
Результаты экспериментальной оценки показали, что наиболее целесообразно использовать способ однократного решения двойственной по
отношению к (5), (2), (3) задачи. Для решения двойственной задачи используем рассмотренный выше алгоритм. В этом случае величина ZSl (x l )
при ветвлении всех переменных основной задачи определяется выражениm
ем Z Sl (x l ) = ∑ b il y i , где Y = (y1, y 2 ,..., y m ) - решение двойственной по
i =1
отношению к (5), (2), (3) задачи, bil = bi − ∑ a ijx j , i = 1,2,..., m.
j∈Sl
Выбор переменной для включения индекса в множество индексов
переменных S l ведется при условии HSl (x l ) = max HSl (x k ). Для отсечения
k
бесперспективных вариантов используется условие HSl ≤ C0 , где Сo - значение достигнутого рекорда.
Проведена оценка эффективности предложенного алгоритма решения задачи ЦКП, при этом данные для эксперимента генерировались так:
коэффициенты c j и p kj (j = 1, ..., m, k = 1, ..., n) - как независимые целые
числа, равномерно распределенные в интервале [0, 100], коэффициенты a ij
(i = 1, ..., m, j = 1, ..., n) - как независимые целые числа, равномерно распределенные в интервале [1, 50]; правые части ограничений - как независимые
405
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
n
n

целые числа в интервале  ∑ a ij , 2 ∑ a ij  (i = 1, ..., m). Результаты экспери j=1
j=1 
мента получены по решению 10 задач разной размерности 10(20, 30,
40) × 1(2,3) и показали следующее. Время решения задач каждой размерности невелико и слабо зависит от числа ограничений. Решение задач средней размерности осуществляется за приемлемое время. Отсутствие ярко
выраженной зависимости времени решения задач ЦКП от размерности позволяет констатировать, что время во многом определяется характером и
структурой исходных данных.
2. Рассмотрим задачу квадратичного программирования с булевыми
переменными. Необходимо максимизировать
n
n n
f (x) = ∑ c j x j + ∑ ∑ p kj x k x j ,
j =1
(10)
j =1k =1
при ограничениях:
n
∑ a i j x j ≤ b i , i = 1,2,..., m,
(11)
j=1
[ ]
x j = {0,1},
j = 1,2,..., n,
[ ]
(12)
где P = p kj -неотрицательная матрица порядка n, A = a i j -матрица размерности n × m; C = c j и B = [b i ] - неотрицательные векторы размерности
[ ]
n и m соответственно.
Так как x j = x 2j для x j = {0,1}, то линейные члены в (10) могут неявно рассматриваться в квадратичной части, поэтому для удобства дальнейших рассуждений линейную часть в (10) опустим. Для j = 1, ..., n обозначим через u j максимальное значение целевой функции следующей задачи:
n
u j = max ∑ p kjx k ,
k =1
j = 1,2,..., n ,
(13)
при ограничениях (11)-(12).
Составим линейную функцию g(x) такую, что
n
g(x) = ∑ u j (x j ) .
{
j=1
}
(14)
Для любых X = x j , j = 1,2,..., n , удовлетворяющих (11)-(12), имеем
g(x)
≥
f(x),
что
подтверждается
преобразованием
n n

f (x) = ∑  ∑ p kj x k  .Для определения коэффициентов u j в линейной
j=1 k =1

406
Управление, вычислительная техника и информационные технологии
форме (14) воспользуемся решением непрерывной задачи линейного программирования (13), (11), в которой условие целочисленности переменных
ослабляется и заменяется условием
0 ≤ x j ≤ 1, j = 1,2,..., n .
(15)
Применение достаточно простого симплекс-метода для многократного (n раз) решения задач (11), (10), (15) ведет к большим вычислительным трудностям, поэтому предлагается использовать приближенное решение соответствующих двойственных задач (14), для определения которого воспользуемся итерационным алгоритмом, описанным ниже. Двойственной по отношению к (13), (11), (15) при фиксированном значении индекса j = r (r = 1, ..., n) является следующая задача:
m
m+n
'
u q = min ∑ b i y i + ∑ y i ,
i =1
i = m +1
(16)
m
∑ a i k yi + y mk > pk q , k = 1,2,..., n,
(17)
i =1
yi > 0, i = 1,2,..., m + n.
(18)
Таким образом, после решения n задач (16)-(18) определяются величины u j линейной формы (14). На этом первый этап заканчивается.
На втором этапе при решении задачи ЦКП с булевыми переменными методом ветвей и границ, величина оценки решения и порядок ветвления переменных определяется решением двойственной по отношению к
(14), (11), (15) задачи, имеющей вид:
m+n 
m
Z = min  ∑ b i y i + ∑ y i  ,
(19)
i = m +1 
 i =1
при ограничениях:
m
∑ a ijy j + y m + j > u j ,
i =1
j = 1,2,..., n,
(20)
yi > 0, i = 1,2,..., m.
(21)
Введем следующие обозначения: D = {i1, i 2 ,..., i k ,..., i n } - массив,
определяющий порядок ветвления переменных, индекс i k определяет номер условия (20), выполняющегося на k- й итерации алгоритма решения
задачи (19)-(21); Q = {q ei , e = 0,1,..., n, i = 1,2,..., m + n} - матрица, k-я строка которой представляет решение двойственной задачи (19)-(21) при
j = i1, i 2 ,..., i k ; S = S1 ⊂ S 0 - множество индексов переменных, включен-
(
{
}
{
})
ных в s -частичное решение здесь S1 = j x j = 1 , So = j x j = 0 .
Для приближенного решения задачи (19)-(21) и определения порядка ветвления переменных задачи (10)-(12) воспользуемся следующим ите407
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
рационным алгоритмом, основанным на идеях градиентного метода:
10. Определить величину
bi
di =
, i = 1,2,..., m + n, b m + j = 1,2,..., n. ,
∑ a ij
j∈I k
где k =1, 2, ... - номер итерации, I k - множество индексов условий (17),
(
)
для которых неравенство не выполняется I1 = {1,2,..., n} .
20. Выбрать двойственную переменную y kr , для которой выполняется условие d kr = min d ik
0
i
3 . Вычислить значение переменной y и индекс переменной для
ветвления на (n – k + 1)-м ярусе дерева ветвлений
m + n k −1
y kr = min
u j − ∑ ∑ a ijyit
i =1 i =1
a rj
j
,
где y i0 = 0, i =1, ..., m+k. Индекс i q , определяющий минимум y kr , является индексом переменной x i k , для ветвления на (n – k + 1)-м ярусе, запишем как P(k) = i q .
40. Определить значения элементов k-й строки матрицы Q:
q ki = q k −1,i + y rk , i = 1,2,..., n + m, где q oi = 0, i = 1,2,..., m + n.
50. Исключить из множества I k индекс уравнения, для которого выполняется условие (20). Проверить условие k = n, и если оно не выполняется, то положить k = k+1 и перейти к п. 10, в противном случае - к п. 60.
k
j
k
m+n
i =1
i = m +1
60. Рассчитать y i = ∑ y i , i = 1,2,..., m + n. Z = ∑ b i y i + ∑ y i .
j=1
Итак, исходя из приведенного алгоритма, при решении задачи (10)(12) ветвление следует начинать с переменной x i n , затем переходить к
x i n −1 и т. д. Тогда верхнюю границу при ветвлении переменной x i k (k = n,
m+n
Ω
n -1, ..., 2) можно вычислить как HS (x i k ) = ∑ ∑ p kj + ∑ bi q ki + ∑ q ki ,
k, j∈S1
i =1
i = m +1
где biΩ = bi − ∑ a ij , i = 1,2,..., m.
j∈S1
m
Для отсечения бесперспективных вариантов используется условие
HS (x i k ) < Co , где C o - значение достигнутого рекорда. В качестве первого допустимого решения задачи принималось нулевое значение, т. е. C o =
408
Управление, вычислительная техника и информационные технологии
0.
Данные для эксперимента по решению задач ЦКП с булевыми переменными генерировались следующим образом: коэффициенты c j и p kj
(j =1, ..., n, k = 1, ..., n) - как независимые целые числа, равномерно распределенные в интервале (0, 100), а коэффициенты a ij (i = 1, ..., m, j = 1, ..., n) как независимые целые числа равномерно распределенные в интервале (1,
50). Правые части ограничений генерировались как независимые целые
 n

числа в интервале 1, ∑ a ij  (i = 1, ..., m).
 j=1 


Результаты эксперимента, полученные по решению 10 задач каждой
размерности с одним ограничением показали, что время решения для задач
при n > 40 предложенным алгоритмом уменьшается в 1,1-3,2 раза по сравнению с существующим. Среднее время решения задачи незначительно зависит от количества ограничений.
3. Рассмотрим способ встречного решения функциональных уравнений динамического программирования для задачи ЦКП.
Для решения задачи (1)-(3) разработан алгоритм на основе метода
построения последовательности решений, который применим при выполнении ряда условий:
1) можно найти функцию (миноранту) q(x), такую, что q(x) < f(x)
для всех X, удовлетворяющих (2),(3);
2) можно построить алгоритм упорядочения последовательности
решений в порядке неубывания q(x). Для i = 1, ..., M обозначим через u j
минимальное значение целевой функции для следующей задачи:
N
u j = min ∑ b l x il ,
(22)
l=1
при ограничениях типа (2), (3).Составим такую линейную функцию q(x)
M N
q(x) = ∑ ∑ u i b j x ij ,
{
i =1 j=1
(23)
}
что для любых X = x ij , i = 1,2,..., M, j = 1,2,..., N , удовлетворяющих (2),(3)
имеем q(x) < f(x). В качестве коэффициентов u j функции (23) возьмем
u j = min{bl , l = 1,2,..., N} .
Для построения последовательности решений (23), (2), (3) и упорядочения их по неубыванию q(x) используем метод динамического программирования. Для повышения его эффективности воспользуемся способом встречного решения функциональных уравнений. Возможные назначения задач можно задать сетевым графом с нулевой начальной и N-й конечной вершиной. На основании принципа оптимальности метода динами409
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
ческого программирования составим два функциональных уравнения:
(
)
{ (
)
}
)
}
t
1
t
f 0, j D1o, j ,..., D0,
j = min f 0, j D0,i ,..., D0,i + u i b jx ij ,
t
+
0 ≤ D0,
j ≤ D t , t = 1,2,..., T, ij ∈ G j ,
(
)
{ (
(24)
t,0
1,0
t,0
F0, j D1,0
j, n ,..., D j, n = min Fi, j D n,i ,..., D n,i + u i b jx ij ,
(25)
0 ≤ D t,0
j,n ≤ D t , t = 1,2,..., T, ij ∈ G j ,
где G +j , G −j - множество дуг, входящих и выходящих из j-й вершины соответственно.
Функциональные уравнения (24) и (25) отличаются от обычных
функциональных уравнений тем, что количество ограничений в них не является постоянной величиной, они могут быть решены при различных значениях t = 1, .., T.
Вычислительный процесс начинается с решения функционального
уравнения (24) при t = 1, при этом определяются оптимальные последовательности f 0,n (D1,n ) и соответствующие зависимости X1,n ( f 0,n ) , n = 1, ...,
N. По значениям зависимостей X1,n ( f 0,n ) последовательно находятся
(
)
функции D1,n f0,n , i = 2, .., T. Используя значения последовательностей
f 0,n (D1,n ) и D1,n ( f 0,n ), i = 2, .., T, определяем минимальное значение
f 0,n (D1,n ) = R11 , при котором выполняется (2) при i = 1 и минимальное
значение f0,n (D1,n ) = R12 , при котором выполняется (2) при i = 1, ..., T.
Если R11 = R12, то значения переменных xi, n = 1, ..., N, соответствующих
значению R11, являются решением задачи (23),(2), (3), в противном случае
(R11 > R12), переходим ко второй итерации, которая заключается в решении
функционального уравнения (25) при t = 2.
Функциональные уравнения при t = 2, .., T решим аналогично. На kй итерации применим дополнительные условия:
{ [
]
[(
) (
)] }
r
1
r −1
min f 0,n D10,n ,..., D0,
< R,
n + Fn, N D1 − D0, n ,..., Dr −1 − D0, n
n = 1,2,..., N, r = 3,5,7,..., R = min{R12 , R 22 ,..., R r −1,2 }
при прямом порядке решения (24) и
r ,0
1,0
r −1,0
min Fn, N D1,0
<R
n, N ,..., D n, N + f 0, n D1 − D n, N ,..., D r −1 − D n, N
{ [
]
[(
) (
)] }
n = N, N − 1,...,1, r = 2,4,6,...,...
при обратном порядке решения (25). Завершив решение задачи (2), (3), (13)
методом встречного решения функциональных уравнений динамического
программирования, последовательность решений, упорядочим по неубыванию функции (23).
Дальнейшая процедура решения задачи (1)-(3) состоит из следую410
Управление, вычислительная техника и информационные технологии
щих шагов:
10. Определяется верхняя f u = f (X 0 ) и нижняя fl = g(X0 ) границы
целевой функции (1). Если fl = f, то X0 - оптимальное решение задачи (1)(3), иначе X0 -лучшее текущее решение (1)-(3), где X0 - оптимальное решение (13), (2), (3); переход к п. 20.
20. Из полученной последовательности решений X выбирается очередное Xi, i = 1, ..., r. Если g(Xi) > fu, то конец и лучшее текущее решение
является оптимальным, в противном случае переход к п 30.
30. Уточняется значение верхней границы. Если f(Xi ) < fu ,то fu =
f(Xi) и Xi - лучшее текущее решение (1)-(3). Возврат к п. 20.
Метод встречного решения функциональных уравнений динамического программирования для задач ЦКП оценивался по среднему времени
решения задачи и числу задач P, для которых начальное значение верхней
границы совпадает с оптимальным решением квадратичной задачи. Данные задачи формировались как независимые целые случайные числа, равномерно распределенные в интервалах: ρj, j = 1, ..., N - [1, 10]; h jk , j = 1, ...,
 N 
N, k = 1, ..., K - [1, 50]; Pдоп. i и H ik , i = 1, ..., M, k = 1, ..., K- 1, ∑ r j  и
 j=1 


 N

1, ∑ h  .
 j=1 jk 


Эксперимент показал, что среднее время решения задачи ЦКП
сравнимо с временем решения линейной задачи аналогичной размерности,
при этом для указанного способа определения коэффициентов ui линейной
формы в большинстве случаев начальная верхняя граница совпадает с оптимальным решением квадратичной задачи. Для сокращения вычислительной сложности предложенного метода встречного решения функциональных уравнений целесообразно использовать способы предварительного сокращения размерности и упорядочения ограничений по жесткости.
Таким образом, результаты экспериментального исследования разработанных алгоритмов подтверждают их работоспособность и более высокую эффективность по сравнению с существующими алгоритмами. Целесообразность использования того или иного разработанного алгоритма
определяется условиями конкретной задачи.
Список литературы
1. Денисов Ю.И., Киселев В.Д., Мягков В.Ю., Щербина А.М. Модели и методы решения задач проектирования и испытаний АСУ. М.: Изд-во
ВПК, 1997. 249 с.
411
Известия ТулГУ. Технические науки. 2014. Вып. 11. Ч. 1
Киселев Владимир Дмитриевич, д-р техн. наук, проф., kiselevvd@yandex.ru, Россия, Тула, Тульский государственный университет
METHODS AND ALGORITHMS OF THE SOLUTION OF PROBLEMS OF INTEGER
SQUARE PROGRAMMIRO-VANIYA ON THE BASIS OF LINEARIZATION OF CRITERION
FUNCTION
V.D. Kiselev
The effective methods of the decision of the general of tasks and TsKP and problem
of TsKP with Boolean variables based by N of linearization of criterion function with use of
the theory of a duality are considered.
Key words: integer square programming, theory of a duality, criterion function.
Kiselev Vladimir Dmitrievich, doctor of technical science, professor, kiselevvd@yandex.ru, Russia, Tula, Tula State University
УДК 681.3
ОПРЕДЕЛЕНИЕ КООРДИНАТ ТОЧКИ В СИСТЕМЕ
НАБЛЮДЕНИЯ НА БАЗЕ TV-МОДУЛЕЙ
А.А. Горшков, А.Ю. Андросов, В.В. Семигорелов, А.А. Аршакян
Сформированы пространственные системы координат, в которых размещаются TV-модули распределенной системы наблюдения. Получены системы выражений
для пересчета одних пространственных координат в другие, позволяющие определить
статические и динамические параметры распределенной информационно-измерительной системы на базе TV-модулей.
Ключевые слова: TV-модуль, распределенные системы, система координат.
Распределенные информационно-измерительные системы, в которых конечным звеном, потребляющим видеоинформацию, является человек-оператор, выполняющий функции наблюдения сцены и принятия решения о возникновении на ней нештатных ситуаций, в настоящее время
широко применяются в различных областях народного хозяйства, в частности в промышленных системах контроля технологических процессов [1,
2, 3].
Разработка, внедрение и промышленная эксплуатация распределенных информационно-измерительных систем на базе TV-модулей связана с
определенными материальными затратами. Указанные затраты напрямую
зависят от объема информации, передаваемой на пункт наблюдения: увеличение потребного количества информации приводит к увеличению чис412
1/--страниц
Пожаловаться на содержимое документа