Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



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

Теоретическое обоснование

Изучите теоретический материал по данной теме, используя литературу [1, 2] и материал изложенный ниже.

Методы внутренней точки

Рассмотрим общую задачу математического программирования, не содержащую ограничений в виде неравенств:

Z=F(x) (min) (10.1)

при ограничениях

qi(х) (10.2)

Пусть вблизи локального минимума этой задачи х* эта окружность, где есть такая точка х0, в которой qi(x0) 0 и выполняются условия строгой нежесткости: Ui(x*)> 0, если qi(х*)

Видоизменим достаточные условия локального минимума в точке х*.

Если в задаче математического программирования множество D выпукло, а функция F(x) дифференцируема в точке х*Î D является точкой оптимума, то градиентÑ F(x*) (если он отличен от нуля) составляет острый угол с вектором направленным из х* в точку " точку х1Î D, а скалярное произведение (Ñ F(x*), x1-x2) .

Предположим, что при малом τ > 0 b в точке [x(r), u(r)] вблизи в точке (x*, u*) выполняются условия:

(10.3)

Выразим из второго условия (10.3) и подставим в последнее равенство:

(10.4)

Дифференцированием можно установить, что левая часть полученного выражения есть градиент функции

(10.5)

который обращается в нуль 0, в точке x(r). Причем x(rx* при r®0. Функцию Z(x, r) в таком виде называют логарифмической штрафной функцией.

Можно получить другой вид функции Z (x, r), если положить Ui=x2i:

(10.6)

(10.7)

Таким образом, задавая, последовательность значений получаем последовательность сходящегося к х*. С помощью новых функций Z(x, r) сводим задачу на условный экстремум (задачу математического программирования) к поиску безусловного экстремума функции Z(x, r). То есть нахождение точки минимума целевой функции в задаче математического программирования заменяется нахождением точки минимума семейства функций зависящих от параметра r и обладающих следующими свойствами:

1) в окрестности оптимальной точки значения функции близки к значению заданной минимизирующей функции;

2) каждая функция из построенного семейства достаточно быстро возрастает при приближении к границе допустимой области из «внутренней» части допустимой области.

Итак, к минимизируемой функции исходной задачи мы добавили ряд слагаемых, называемых штрафными (барьерными) функциями, зависящими от параметра r и функции одного из ограничений. При фиксированном значении параметра r второе слагаемое стремиться к ∞ при стремлении к нулю его аргумента, если r=const, то . Каждая функция семейства подвергается минимизации и этот процесс не может вывести x* за пределы допустимой области. Подобные методы назвали «методами внутренней точки».

Замечание. При наличии ограничений-равенств в задаче математического программирования «метод внутренней точки» неприменим, так как не существует допустимой области (в виде областей).

Пример1.

Решение.

Построим логарифмическую функцию штрафа, используя формулу (10.5), и найдем частные производные:

 

В полученных выражениях оставим знак«+» , т.к.x 1

Зададим последовательные значения r: 1; 0.5; 0.25; 0.1; соответственно получим последовательность значений: x1(r)=0.5; 0.309; 0.183; 0.085; x2(r)=1.25; 0.595; 0.283; 0.107, сходящуюся к точке (0, 0) при r 0.

Действительно

Графическое решение этой задачи представлено на рисунке 10.1

Рисунок 10.1 – Графическое решение задачи

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

Пример 2

Решение

Строим функцию штрафа.

Z(x, r)=x1-r ln x1

Находим частную производную по x1 второго порядка

следовательно x1(r) = r – точка минимума при r> 0.

Методы внешней точки

Попытаемся приблизиться к оптимальной точке из недопустимой области. Для этого преобразуем достаточные условия локального минимума задачи математического программирования следующим образом:

1. Рассмотрим ограничения в ослабленной форме:

Преобразуем условия дополняющей нежесткости ui*; qi(x*)=0 так, чтобы оно имело смысл для отрицательных значений qi(x*) и сводилось к исходному условию при (это значит, что ui (x*) 0; ui(x*)принимает все значения, если qi (x*)=0), т.е.

u(r)=-min[0, qi(x)] (10.9)

Аналогично преобразуются другие достаточные условия:

(10.10)

Подставляем (10.9) в (10.10), убеждаемся, что функция, для которой выполняются названные условия, имеет вид

(10.11)

– это есть функция, минимизируемая методом внешней точки. В нее входят ограничения и в виде неравенств и в виде равенств. Можно доказать, что все необходимые условия минимума этой функции выполняются, например, есть положительно определенная матрица. Причем для ограничений-неравенств

(10.12)

Для ограничений-равенств

(10.13)

отсюда или

(10.14)

Рассмотрим пример использования метода внешней точки для решения задачи математического программирования.

Пример

Решение

Составим функцию штрафа, используя метод внешней точки – выражение (10.11):

Из необходимого условия

определим последовательность значений x1 и x2 сходящегося к решению.

Зададим последовательность значений

r: 1.0; 0.5; 1/3; 0.1, получим:

x1(r): 0.89; 0.77; 0.73; 0.67.

x2(r): 0.64; 0.62; 0.61; 0.58.

последовательность значений x1 сходиться к 2/3, а x2 – к /3.

Графическое решение задачи математического программирования методом внешней точки приведено на рисунке 10.2.

Рисунок 10.2 –Графическое решение задачи методом внешней точки


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-05-03; Просмотров: 1730; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.019 с.)
Главная | Случайная страница | Обратная связь