
- •Основы информационных технологий
- •Оглавление
- •Предисловие
- •Современные информационные технологии
- •1.1 История, современное состояние и перспективы развития вычислительной техники
- •1.2 Элементная база, архитектура, сетевая компоновка, производительность
- •1.3 Понятие информации. Классификация и виды информационных технологий
- •Основные свойства информационных технологий.
- •1 .4 Операционные системы
- •2 Основные программные средства информационных технологий
- •2.1. Программное обеспечение. Текстовые редакторы, их возможности и назначение
- •2.2. Графические редакторы
- •2.3. Электронные таблицы
- •2.4. Сервисные инструментальные программные средства
- •2.5. Системы математических вычислений MatLab
- •2.6 Система подготовки презентаций
- •3 Сетевые технологии и интернет
- •3.1 Классификация компьютерных сетей
- •3.2 Семиуровневая модель структуры протоколов связи
- •2.3. Взаимодействие компьютеров в сети
- •3.3 Организационная структура Internet
- •3.4 Инструментальные средства создания web-сайтов. Основы web-дизайна
- •3.5 Языки разметки гипертекста html и xml
- •3.6 Скриптовые языки программирования
- •4 Системы управления базами данных
- •4.1. Классификация систем управления базами данных
- •4.2 Модели данных
- •4.3 Моделирование баз данных
- •4.4 Архитектура и функциональные возможности субд. Языковые и программные средства субд
- •4.5 Общая характеристика субд ms Access
- •4.6 Основные объекты ms Access
- •4.7 Основы языка sql
- •Контрольные вопросы
- •5 Защита информации при использовании информационных технологий
- •5.1 Основы информационной безопасности
- •5.2. Методы и средства защиты информации
- •5.3 Защита от несанкционированного доступа к данным
- •5.4 Классы безопасности компьютерных систем
- •5.5 Основные аспекты построения системы информационной безопасности
- •6 Математическое моделирование и численные методы
- •6.1 Математические модели и численные методы решения задач в различных предметных областях
- •6.2 Численное дифференцирование и интегрирование
- •6.2.1 Особенность задачи численного дифференцирования
- •6.2.2 Интерполяционная формула Лагранжа для равноотстоящих узлов
- •6.2.3 Численное дифференцирование на основе интерполяционной формулы Лагранжа
- •6.2.4 Численное дифференцирование на основе интерполяционной формулы Ньютона
- •6.2.5 Постановка задачи численного интегрирования
- •6.2.6 Квадратурные формулы Ньютона-Котеса
- •6.2.7 Формула трапеций
- •6.2.8 Формула Симпсона
- •6.2.9 Оценка точности квадратурных формул
- •6.3 Методы решения обыкновенных дифференциальных уравнений
- •6.3.1 Задача Коши и краевая задача
- •6.3.1.1 Классификация уравнений
- •6.3.1.2 Задача Коши
- •6.3.2 Одношаговые методы решения задачи Коши
- •6.3.2.1 Метод Эйлера
- •6.3.2.2 Модифицированный метод Эйлера
- •6.3.2.3 Метод Рунге-Кутта четвертого порядка
- •6.3.2.4 Погрешность решения и выбор шага
- •6.3.3 Многошаговые методы решения задачи Коши
- •6.3.3.1 Многошаговые методы
- •6.3.3.2 Метод Адамса
- •6.3.3.3 Методы прогноза и коррекции (предиктор-корректор)
- •6.3.3.4 Общая характеристика многошаговых методов
- •6.3.4 Краевая задача и метод стрельбы
- •6.3.4.1 Краевая задача
- •6.3.4.2 Метод стрельбы
- •6.3.4.3 Метод стрельбы для линейного дифференциального уравнения
- •6.4 Решение дифференциальных уравнений в чстных производных
- •6.4.1 Краткие теоретические сведения
- •6.4.2 Классификация уравнений по математической форме
- •6.4.3 Основы метода конечных разностей
- •6.4.3.1 Построение сетки
- •6.4.3.2 Аппроксимация уравнения эллиптического типа
- •6.4.3.3 Аппроксимация уравнения гиперболического типа
- •6.4.3.4 Аппроксимация уравнения параболического типа
- •6.4.3.5 Погрешность решения
- •6.4.4 Основы метода конечных элементов
- •6.4.4.1. Формирование сетки
- •6.4.4.2 Конечно-элементная аппроксимация
- •6.4.4.3 Построение решения
- •6.6 Элементы математической статистики
- •6.6.1 Генеральная совокупность. Выборка. Статистические ряды
- •6.6.2 Графическое изображение вариационных рядов. Эмпирическое распределение
- •6.6.3 Средние величины и показатели вариации
- •6.6.4 Средняя арифметическая и ее свойства
- •6.6.5 Дисперсия и ее свойства. Среднее квадратическое отклонение
- •6.6.6 Коэффициент вариации
- •6.6.7 Структурные средние
- •6.6.8 Законы распределения случайных величин
- •6.6.9 Статистические гипотезы
- •7 Методы оптимизации и системы поддержки принятия решений
- •7.1 Характеристика методов решения задач оптимизации
- •7.1.1 Численные методы безусловной оптимизации нулевого порядка
- •7.1.1.1 Основные определения
- •7.1.1.2 Классификация методов
- •7.1.1.3 Общая характеристика методов нулевого порядка
- •7.1.1.4 Метод прямого поиска (метод Хука-Дживса)
- •7.1.1.5 Метод деформируемого многогранника (метод Нелдера—Мида)
- •7.1.1.6 Метод вращающихся координат (метод Розенброка)
- •7.1.1.7 Метод параллельных касательных (метод Пауэлла)
- •7.1.2 Численные методы безусловной оптимизации первого порядка
- •7.1.2.1 Минимизация функций многих переменных. Основные положения
- •7.1.2.2 Метод наискорейшего спуска
- •7.1.2.3 Метод сопряженных градиентов
- •7.1.3 Численные методы безусловной оптимизации второго порядка
- •7.1.3.1 Особенности методов второго порядка
- •7.1.3.2 Метод Ньютона
- •7.2 Линейное программирование
- •7.2.1 Транспортная задача линейного программирования
- •7.2.1.1 Постановка задачи
- •7.2.1.2 Венгерский метод
- •7.2.1.3 Метод потенциалов
- •7.3 Прямые методы условной оптимизации
- •7.3.1 Основные определения
- •7.3.2 Метод проекции градиента
- •7.3.3 Комплексный метод Бокса
- •7.4 Методы штрафных функций
- •7.4.1 Основные определения
- •7.4.2 Методы внутренних штрафных функций
- •7.4.3 Методы внешних штрафных функций
- •7.4.4 Комбинированные алгоритмы штрафных функций
- •7.5 Информационные технологии поддержки принятия решений
- •7.6 Информационные технологии экспертных систем Характеристика и назначение
- •Список литературы
7.1.2 Численные методы безусловной оптимизации первого порядка
7.1.2.1 Минимизация функций многих переменных. Основные положения
Градиентом дифференцируемой функции f(x) в точке х[0] называется n-мерный вектор f(x[0]), компоненты которого являются частными производными функции f(х), вычисленными в точке х[0], т. е.
f'(x[0]) = (дf(х[0])/дх1, …, дf(х[0])/дхn)T.(7.11)
Этот вектор перпендикулярен к плоскости, проведенной через точку х[0] , и касательной к поверхности уровня функции f(x), проходящей через точку х[0] .В каждой точке такой поверхности функция f(x) принимает одинаковое значение. Приравнивая функцию различным постоянным величинам С0, С1, ... , получим серию поверхностей, характеризующих ее топологию (рис. 7.8).
Рис. 7.8 ‑ Градиент
Вектор-градиент направлен в сторону наискорейшего возрастания функции в данной точке. Вектор, противоположный градиенту
((х[0])),
называется антиградиентом
и направлен в сторону наискорейшего
убывания функции. В точке минимума
градиент функции равен нулю. На свойствах
градиента основаны методы первого
порядка, называемые также градиентным
и методами минимизации. Использование
этих методов в общем случае позволяет
определить точку локального минимума
функции.
Очевидно, что если
нет дополнительной информации, то из
начальной точки х[0]
разумно перейти в точку х
[1], лежащую
в направлении антиградиента - наискорейшего
убывания функции. Выбирая в качестве
направления спуска р[k]
антиградиент
(х[k])
в точке х[k],
получаем итерационный процесс вида
х[k+1] = x[k]‑akf'(x[k]), аk > 0; k=0, 1, 2, ...
В координатной форме этот процесс записывается следующим образом:
xi[k+1]=хi[k]
‑ akf(x[k])/
xi
i = 1, ..., n; k= 0, 1, 2,...
В качестве критерия останова итерационного процесса используют либо выполнение условия малости приращения аргумента || x[k+l] - x[k] || <= , либо выполнение условия малости градиента
||
(x[k+l])
|| <= ,
Здесь и - заданные малые величины.
Возможен и комбинированный критерий, состоящий в одновременном выполнении указанных условий. Градиентные методы отличаются друг от друга способами выбора величины шага аk.
При методе с постоянным шагом для всех итераций выбирается некоторая постоянная величина шага. Достаточно малый шаг аk обеспечит убывание функции, т. е. выполнение неравенства
f(х[k+1]) = f(x[k] – akf’(x[k])) < f(x[k]).
Однако это может привести к необходимости проводить неприемлемо большое количество итераций для достижения точки минимума. С другой стороны, слишком большой шаг может вызвать неожиданный рост функции либо привести к колебаниям около точки минимума (зацикливанию). Из-за сложности получения необходимой информации для выбора величины шага методы с постоянным шагом применяются на практике редко.
Более экономичны в смысле количества итераций и надежности градиентные методы с переменным шагом, когда в зависимости от результатов вычислений величина шага некоторым образом меняется. Рассмотрим применяемые на практике варианты таких методов.
7.1.2.2 Метод наискорейшего спуска
При использовании
метода наискорейшего спуска на каждой
итерации величина шага аk
выбирается
из условия минимума функции f(x)
в направлении спуска, т. е. f(x[k]
–akf’(x[k]))
=
f(x[k]
– af'(x[k])).
Это условие означает, что движение вдоль антиградиента происходит до тех пор, пока значение функции f(x) убывает. С математической точки зрения на каждой итерации необходимо решать задачу одномерной минимизации по а функции (a) = f(x[k] - af'(x[k])) .
Алгоритм метода наискорейшего спуска состоит в следующем.
1. Задаются координаты начальной точки х[0].
2. В точке х[k], k = 0, 1, 2, ... вычисляется значение градиента f’(x[k]).
3. Определяется величина шага ak, путем одномерной минимизации по а функции (a) = f(x[k] - af'(x[k])).
4. Определяются координаты точки х[k+1]:
хi[k+1] = xi[k] – аkf’i(х[k]), i = 1 ,..., п.
5. Проверяются условия останова стерационного процесса. Если они выполняются, то вычисления прекращаются. В противном случае осуществляется переход к п. 1.
В рассматриваемом методе направление движения из точки х[k] касается линии уровня в точке x[k+1] (рис. 7.9). Траектория спуска зигзагообразная, причем соседние звенья зигзага ортогональны друг другу. Действительно, шаг ak выбирается путем минимизации по а функции ?(a) = f(x[k] - af'(x[k])). Необходимое условие минимума функции d(a)/da = 0. Вычислив производную сложной функции, получим условие ортогональности векторов направлений спуска в соседних точках:
d(a)/da
= -f’(x[k+1](x[k])
= 0.
Рис. 7.9 ‑ Геометрическая интерпретация метода наискорейшего спуска
Градиентные методы сходятся к минимуму с высокой скоростью (со скоростью геометрической прогрессии) для гладких выпуклых функций. У таких функций наибольшее М и наименьшее m собственные значения матрицы вторых производных (матрицы Гессе)
(7.12)
мало отличаются друг от друга, т. е. матрица Н(х) хорошо обусловлена. Напомним, что собственными значениями i, i =1, …, n, матрицы являются корни характеристического уравнения
(7.13)
Однако на практике, как правило, минимизируемые функции имеют плохо обусловленные матрицы вторых производных (т/М << 1). Значения таких функций вдоль некоторых направлений изменяются гораздо быстрее (иногда на несколько порядков), чем в других направлениях. Их поверхности уровня в простейшем случае сильно вытягиваются (рис. 7.10), а в более сложных случаях изгибаются и представляют собой овраги. Функции, обладающие такими свойствами, называют овражными. Направление антиградиента этих функций (см. рис. 7.10) существенно отклоняется от направления в точку минимума, что приводит к замедлению скорости сходимости.
Рис. 7.10 ‑ Овражная функция
Скорость сходимости градиентных методов существенно зависит также от точности вычислений градиента. Потеря точности, а это обычно происходит в окрестности точек минимума или в овражной ситуации, может вообще нарушить сходимость процесса градиентного спуска. Вследствие перечисленных причин градиентные методы зачастую используются в комбинации с другими, более эффективными методами на начальной стадии решения задачи. В этом случае точка х[0] находится далеко от точки минимума, и шаги в направлении антиградиента позволяют достичь существенного убывания функции.