 
        
        методичкаМОСС
.pdfМИНИСТЕРСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ ПО СВЯЗИ И ИНФОРМАТИЗАЦИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ
им. проф. М.А. БОНЧ-БРУЕВИЧА
Я.С. Дымарский МЕТОДЫ ОПТИМИЗАЦИИ
СЕТЕЙ СВЯЗИ Методические указания и контрольные задания
200900, 220200, 220400, 550400
Санкт-Петербург
2003
1
УДК 621.391.28
Дымарский Я.С. Методы Оптимизации сетей связи: Методические указания и контрольные задания. Для студентов специальностей 200900, 220200,
220400, 550400 / СПбГУТ. – СПб, 2003.
Рекомендовано к печати редакционно-издательским советом университета.
Приводятся теоретические основы, методы и алгоритмы решения оптимизационных задач, варианты контрольных заданий и указания (при необходимости) по их выполнению.
© Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича, 2003.
2
 
Общие положения
1. Оптимизационной задачей (ОЗ) называется кортеж
ОЗ=< f (x), X, Y>,
(1)
где f(x) – целевая функция, экстремумы которой необходимо найти, варьируя значения компонентов вектора (точки) x=(x1, x2, …, xn),
X– область определения f(x),
Y– область ограничений, накладываемых на вектор x.
Область D=X∩Y называется допустимой, вектор x D – допустимым вектором ОЗ. Если допустимое множество D совпадает с евклидовым пространством Rn, ОЗ называется задачей безусловной оптимизации.
2. Допустимый вектор x0 называется абсолютным (глобальным) минимумом, если
| f (x) ≥ f (x0), x D. | (2) | 
3. Допустимый вектор x0l называется локальным минимумом, если существует такое δ > 0, что при всех 0 ≤ | x|≤ δ справедливо
| f = f (x0l + x) - f (x0l ) 0. | (3) | 
Для максимумов знак неравенства в (2) и (3) меняется на обратный.
4. Локальный минимум называется внутренним или граничным, если точка x0l является соответственно внутренней или граничной точкой области D. Например, функция f(x)=x при –∞<x<+∞ не имеет экстремумов, а f1(x)=x при x≤1 имеет в точке x=1 граничный максимум, а при 0≤x≤1 имеет еще и граничный минимум в точке x=0.
Справочная информация
Правила вычисления производных
1)  ;
;
2)[Af(x)]'=Af '(x) – постоянный множитель можно выносить за знак производной;
3)f(x)=A; f '(x)=0  x;
x;
4)f(x)=u(x)±v(x); f'=u' ± v'. Правило справедливо для любого числа слагаемых;
3
 
5) y=f(x)=u(x)·v(x); y'=u'v+uv'. Если y=uvw, то y'=u'vw+uv'w+uvw'. Для случая n
сомножителей – аналогично;
6) – формула Лейбница.
 – формула Лейбница.
7) (предположение: v0);
(предположение: v0); 
8) производная от сложной функции
;
9) производная от обратной функции
x=g(y) – обратная функция для y= f(x);  .
.
Пример 1. y=arcsin x. Обратная функция x=sin y,
;
10) производная от неявной функции
.
Для случая n переменных: F(x1, x2, …, xn, y)=0;
.
4
 
Производные основных элементарных функций
Таблица 1
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| Функция | 
 | Производная | 
 | Функция | 
 | Производная | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| xn | 
 | nxn 1 | 
 | ch x | 
 | sh x | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| ex | 
 | ex | 
 | th x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| ax | 
 | axln a | 
 | cth x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| ln x | 
 | 
 | 
 | arcsin x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| logax | 
 | 
 | 
 | arccos x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| sin x | 
 | cos x | 
 | arctg x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| cos x | 
 | –sin x | 
 | arcctg x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| tg x | 
 | sec2 x | 
 | arsh x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| ctg x | 
 | –cosec2 x | 
 | arch x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| sec x | 
 | 
 | 
 | arth x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| cosec x | 
 | 
 | 
 | arcth x | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| sh x | 
 | ch x | 
 | xx | 
 | xx(1+lnx) | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Типичные функции нескольких переменных
Рассматриваются два класса функций нескольких переменных:
(4)
(5)
5
 
Пример 2. Целевая функция задачи распределения пропускных способностей Л. Клейнрока [1]:
где T – среднесетевая задержка сообщения;
j – интенсивность потока сообщений в j-м канале;
 – средняя длина одного сообщения;
– средняя длина одного сообщения;
 – суммарный трафик в системе;
– суммарный трафик в системе;
C j– искомое значение пропускной способности j-го канала.
Необходимо найти производную целевой функции по C j. Имеем (по правилу(4)):
Пример 3. Целевая функция задачи распределения разнотипных каналов по направлениям связи [2]:
 ,
,
ij = - ln(1 - wij ),
где M – математическое ожидание числа надежно функционирующих направлений связи; n – количество направлений связи;
v j – коэффициент важности j-го направления связи;
wij – надежность одного канала i-го типа, функционирующего на j-м направлении связи;
m – количество типов каналов;
xij – искомое значение количества каналов i-го типа, выделенных на j-е направление связи.
6
 
Необходимо найти производную целевой функции по xij. Имеем (по правилу (5)):
Тема 1. Классическая оптимизация
1.1. Безусловная оптимизация
1.1.1. Функции одной переменной
Условия существования внутренних максимумов и минимумов следующие: если существует производная f '(a), то функция f(x) может иметь в точке a внутренний максимум или минимум лишь в том случае, когда
| f '(a)=0 | (1.1) | 
(необходимое условие экстремума).
Если существует вторая производная f ''(a), то функция f(x) имеет в точке а
| максимум при f '(a)=0 и f ''(a)<0, | (1.2) | 
минимум при f '(a)=0 и f ''(a)>0.
Более общее утверждение: если существует производная f(n)(a) и если f '(a)=f ''(a)=…=f (n– 1)(a)=0, то функция f (x) имеет в точке а
| максимум при n четном и f (n)(a) <0, | (1.3) | 
минимум при n четном и f (n)(a) >0.
Если n нечетно, то функция f (x) в точке а не имеет ни минимума, ни максимума, а имеет
точку перегиба.
Условия (1.2) и (1.3) являются достаточными условиями экстремума.
Если f '(a)=0, то во всех случаях говорят, что функция f (x) при x=a имеет стационарное значение, а точка x=a называется стационарной.
7
Пример 1.1. Каждая из функций x2, x4, x6, ... имеет при x=0 минимум, а каждая из функций x3, x5, x7, ...имеет x=0 точкой перегиба.
Более общим, чем (1.1)–(1.3), и зачастую более удобным является следующее правило: если производная f '(x) при переходе через стационарную точку а меняет
| знак “+” на ”–”, то налицо максимум, | (1.4) | 
знак “–” на ”+”, то налицо минимум.
Если f '(x) знака не меняет, то экстремума нет.
Пример 1.2. Функция Коши f(x)= (f(0)=0) имеет при x=0 производные всех порядков, причем все они равны нулю. Хотя при x=0 эта функция имеет минимум, установить этот факт с помощью правила (1.3) невозможно. С помощью же правила (1.4) это удается сделать:
 (f(0)=0) имеет при x=0 производные всех порядков, причем все они равны нулю. Хотя при x=0 эта функция имеет минимум, установить этот факт с помощью правила (1.3) невозможно. С помощью же правила (1.4) это удается сделать:
f '(x)= ,
,
слева от нуля f '(x)<0, а справа – f '(x)>0.
По правилу (1.4) в точке x=0 функция f (x) обращается в минимум.
Пример 1.3. Найти экстремумы функции f(x) = x3(x2 - 1) при –1≤x≤2.
Необходимое условие оптимальности:
f '(x)=5x4 - 3x2 = x2(5x2 - 3) = 0.
Корни этого уравнения: х=0,  . Присоединяя к ним граничные значения х= -1 и х=2, получаем пять стационарных точек:
. Присоединяя к ним граничные значения х= -1 и х=2, получаем пять стационарных точек:
x1 = - 1,x2 = - 0,775, x3 = 0, x4 = 0,775, x5 = 2.
Поскольку f '(x1) >0 и f '(x5) >0, в точке x1 – граничный минимум, в точке x5 – граничный максимум. Далее, в точке x2 вторая производная
 следовательно, это точка локального максимума, в точке x4 производная f ''(x4) = 4,66>0, значит, это точка локального минимума. Наконец,f ''(x3) =0, f
следовательно, это точка локального максимума, в точке x4 производная f ''(x4) = 4,66>0, значит, это точка локального минимума. Наконец,f ''(x3) =0, f
'''(x3) 0. Поскольку номер отличной от нуля производной – нечетное число, в точке x3 экстремума нет, здесь – перегиб.
1.1.2. Унимодальные функции одной переменной
Унимодальной называется функция, имеющая на заданном отрезке [a,b] один максимум или минимум. Использование свойства унимодальности позволяет построить эффективные методы локализации экстремума – методы золотого сечения и чисел
8
 
Фибоначчи. Обоснование и описание методов приведено в работах [2, 3]. Здесь рассматриваются только алгоритмы.
Алгоритм 1 (поиска экстремума унимодальной функции f (x) на отрезке [a, b] методом золотого сечения)
1.Ввести исходные данные (ИД): a, b, необходимая точность локализации экстремума ε, адрес процедуры вычисления f (x), признак
2.Вычислить 
3.Выполнить присвоения а1:=а, а2:=b, i:=1.
| 4. | Вычислить х1:=а1+k2(а2–а1). | (Процедура 1.1) | 
| 5. | Вычислить х2:=а1+k(а2–а1). | (Процедура 1.2) | 
| 6. | Вычислить y1:=f (x1) | (Процедура 2.1) | 
| 7. | Вычислить y2:=f (x2) | (Процедура 2.2) | 
8.Вычислить d=δ(y1–y2).
9.Проверить выполнение условия а2–а1≤ε. Если оно выполняется, то перейти к п. 14, если нет – к п. 10.
10.Выполнить присвоение i:=i+1.
11.Проверить выполнение условия d>0. Если условие выполняется, то перейти к п. 12, если нет – к п. 13.
12.Положить а2:=х2, у2:=у1, х2:=х1, выполнить процедуры 1.1 и 2.1, и перейти к п.8.
13.Положить а1:=х1, у1:=у2, х1:=х2, выполнить процедуры 1.2 и 2.2, и перейти к п.8.
14.Print (a1, a2, y1, y2, i).
15.End
Алгоритм 2 (поиска экстремума унимодальной функции f (x) на отрезке [a, b] методом чисел Фибоначчи)
1.Действия такие же, как в п. 1 алгоритма 1.
2.Выполнить присвоения а1:=а, а2:=b.
3.Вычислить и
 и  .
.
4.Вычислить
9
 
где  E(x) – целая часть х; {x} – дробная часть х.
E(x) – целая часть х; {x} – дробная часть х.
| 5. | Вычислить | и выполнить присвоения D:=Fn; B:=Fn–1 | 
| и A:=Fn–B. | 
 | |
| 6. | Вычислить х1=а1 +А(а2–а1)/D. | (Процедура 1.1) | 
| 7. | Вычислить х2=а1 +B(а2–а1)/D. | (Процедура 1.2) | 
| 8. | Вычислить y1:=f (x1). | (Процедура 2.1) | 
| 9. | Вычислить y2:=f (x2). | (Процедура 2.2) | 
10.Выполнить присвоение i:=1.
11.Вычислить d=δ(y1–y2) и выполнить присвоения D:=B, C:=B–A, B:=A, A:=C.
12. . Проверить выполнение условия d>0. Если условие выполняется, перейти к п.13, если нет – к п. 14.
13.Действия такие же, как в п. 12 алгоритма 1. Перейти к п. 15.
14.Действия такие же, как в п. 13 алгоритма 1. Перейти к п. 15.
15.Выполнить присвоение i:=i+1.
16.Проверить выполнение условия i=n. Если условие не выполняется, перейти к п.11, если выполняется – к п. 17.
17.Print (a1, a2, y1, y2, n).
18.End.
1.1.3. Функции нескольких переменных [4]
Необходимые условия оптимальности следующие: если функция f (x1, x2, …, xn) дифференцируема в точке а=(а1, а2, …, аn), то она может иметь в этой точке внутренний максимум или минимум лишь в том случае, когда ее первый дифференциал df обращается в этой точке в нуль, т.е. когда
| = 0. | (1.5) | 
Достаточные условия оптимальности: если функция f имеет в точке а непрерывные вторые частные производные и если в этой точке выполняются необходимые условия (1.5), то в случае, когда второй дифференциал
10
