- •Общие сведения из теории конструирования
- •1.1. Система требований, предъявляемых к конструкции
- •1.2. Системное представление процесса разработки конструкции
- •Лекция № 2
- •1.3. Математические модели качества конструкции
- •Лекция №3 Математические модели надежности
- •1.5. Приближенные методы расчета надежности
- •1.6. Математические модели точности
- •1.7. Обработка результатов контроля качества конструкции
- •Глава 2
- •2.1. Аналитический и вероятностный методы прогнозирования
- •2.3. Прогнозирование состояний объекта на основе теории непрерывных цепей Маркова
- •2.4. Прогнозирование качества из основе спектрального представления процессов, происходящих в конструкциях
- •2.5. Прогнозирование долговечности аппаратуры
- •Глава 3
- •3.1. Постановка задачи синтеза
- •3.2. Постановка задачи оптимизации
- •3.3. Линейное программирование в решении конструкторских задач
- •3.4. Некоторые методы решения задач линейного программирования
- •3.5. Целочисленное программирование в задачах конструирования
- •3.6. Нелинейное программирование в задачах конструирования
3.6. Нелинейное программирование в задачах конструирования
Конструкторские задачи, имеющие нелинейные целевые функции пли нелинейные ограничения, приводят к необходимости решения задач оптимизации методами нелинейного программирования.
Задача нелинейного программирования состоит в отыскании оптимального значения целевой функции
при ограничениях
где К —целевая функция (линейная или нелинейная); j = 1, . . ., n, fi(x1, ..., xm) — ограничительные уравнения (линейные или нелинейные); А—заданные условия задачи; X — элементы решения.
Задача является нелинейной, если целевая функция или любое из ограничений —нелинейны. В настоящее время не разработаны универсальные методы решения задач нелинейного программирования, поэтому, исходя из условий решаемой физической задачи, используют те или иные методы, например градиентные, случайного поиска, секущих плоскостей. Рассмотрим некоторые из них.
1. Градиентный метод. В основу метода положена идея последовательного улучшения некоторого начального решения, путем движения к оптимальному значению целевой функции, которое заранее неизвестно. Для успешного решения задач градиентным методом целесообразно все элементы решения, т. е. искомые хi, привести к единой шкале путем их нормирования, например
или
Рассмотрим процедуру решения задачи, если целевая функция имеет вид
К = K (х1, …, xm) → mах, или K = K (X) → mах.
Выберем начальное решение K(X0), т.е. исходную точку движения к экстремуму К (X0) = К (х10, . . ., хm0).
Выбор начального решения оказывает существенное влияние на ход решения задачи и на его успех. Необходимо использовать всю имеющуюся априорную информацию и физические условия задачи, чтобы как можно удачнее выбрать исходную точку для начала движения к экстремуму.
Найдем градиент функции К (X0), вычисленный для начальной точки решения
Движение к экстремуму производим с определенным шагом, т. е. с определенными приращениями переменных. Выбор шага является ответственным этапом в решении. Если выбрать шаг большим, то можно «перешагнуть» экстремум, а если выбрать шаг малым, то придется долго двигаться к экстремуму. Целесообразно организовать движение с переменным шагом, в начале движения применять большой, а затем, приближаясь К экстремуму, его уменьшать.
Определим приращение оптимизируемой функции при первом шаге
Значение оптимизируемой функции после первого шага составит К(1)(X1) = К(Х0) + ΔК(1).
Если К(1)(X1) > K(X0), до движение происходит в направлении экстремума.
Произведем второй шаг. При этом приращение оптимизируемой функции будет равняться величине
Если на все время движения значения производных не изменять, т. е. сохранять градиент начального шага, то такой метод поиска экстремума называют методом наискорейшего спуска.
Определим значение целевой функции после второго шага
К(2)(X2) = К(1)(Х1) + ΔК(2)
Если К(2)(Х2) > K(1)(X1), то движение происходит по направлению к экстремуму.
Продолжаем движение до выполнения условия К(m)(Хm) — К(m-1)(Хm-1) = 0, или К(m)(Хm) — К(m-1)(Хm-1) ≤ ξ, где ξ — некоторая окрестность экстремума, удовлетворяющая решение. В точке экстремума ξ = 0.
Рассмотренный алгоритм поиска оптимального значения целевой функции не учитывал ограничений. При решении задачи с учетом ограничений используют разновидность градиентного метода, называемую методом штрафных функций. Идея метода состоит в переходе к вспомогательной функции R(X), на которую не наложены ограничения R(X)=K(X)+H(X).
Дополнительное слагаемое H(X) отрицательно в задачах максимизации, его называют штрафной функцией. Штрафная функция равна нулю для тех (X), при которых ограничения не нарушаются. Если ограничения нарушаются, то Н(X) — отрицательна.
Штрафную функцию выбирают в виде суммы
Значение а выбирается достаточным для обеспечения необходимой чувствительности, когда наложенные ограничения не выполняются,
.
Таким образом, при любом нарушении ограничении результирующее приращение целевой функции будет отрицательным что указывает на выход решений за допустимую область При' этом «отслеживание» за соблюдением ограничений произвоизводится по всем переменным, т.е. по всем элементам решения от i = 1 до i = m.
Других отличий метод штрафных функций от рассматриваемого ранее градиентного метода не имеет
Следует заметить, что при достижении границы области допустимых решений целевая функция «отбрасывается» обратно в область, поэтому последующие шаги нужно уменьшать
Градиент функции вычисляется аналогично предыдущем" случаю, а приращения вычисляются по каждой переменной,т.е.
Кроме того, шаг выбирается для всех переменных один и же. Тогда алгоритм вычислений примет вид. При первом шаге
При втором шаге
И т. д.
После каждого шага проверяются условия. Если ограничения нарушены то появляется значение штрафной функции переменной, которая вышла из области допустимых решений.
Пример. В процессе изготовления изделия используются два вида оборудования с производительностями' x1 и х2 — соответственно. Производительность оборудования и показатели качества связаны зависимостями.
Для первого вида оборудования K1 = x1 —x12 для второго вида К2 = Зx2 — х22
Требуется найти те значения производительности оборудования, которые обеспечивают максимальное значение качества.
Полагая, что результирующий показатель качества является аддитивным, запишем целевую функцию
Известны ограничительные условия
Кроме того, известна допустимая погрешность в определении экстремума ξ = 0,3.
Р е ш е н и е.
Выберем за исходную точку движения x1 = 0, х2 = 0, шаг приращения функции h выбираем равным ;, т. е. h = 0,3.
Проверяем выполнимость ограничительных условий. Они выполняются, поэтому α1(0) = 0, и, α2(0) = 0.
Находим составляющие градиента
При x1 = 0, х2 = 0 имеем K(0) (x) = 0. Находим значения x1 и x2 после первого шага
.
Определяем значение целевой функции после первого шага
Следовательно, приращение составляет ΔK(1)(x) = 2,1. Замечаем, что ΔК(1)(х) > ξ поэтому, проверив выполнимость ограничений при x1(1) = 0,3 и x2(1)==0,9, продолжаем движение к экстремуму.
Ограничительные условия выполняются, поэтому а1(1)=0, а1(2)=0
Находим значения х1(2) и х2(2).
Определим значение целевой функции K(2)(x):
Находим ΔК(2)(х)=К(2)(х)-К(1)(х)=2,44—2,1=0,34.
Замечаем, что ΔК(2)(х)>ξ.
Проверяем выполнимость ограничительных уравнений. Они выполняются, т. е. а1(2)=0, а2(2)=0.
Делаем следующий шаг и определяем значения x1(3) и x2(1):
Определяем значение целевой функции после третьего шага cледовательно, ΔК(3)(х)=0,07, что меньше ξ = 0,3.
Остается проверить выполнимость условий при x1(3)=0,45 и x2(3)=1,4.
Первое ограничительное условие не выполняется.
Следовательно, α1(3)>0.
Для получения искомого решения целесообразно на третьем шаге уменьшить h. Допустим h=0,2, тогда
Находим К(3)(х) с учетом изменения шага. К(3)(х)=2,65.
Следовательно, К(3)(х)=0,21. Это меньше ξ=0,3 Снова проверяем ограничительные условия. Они выполняются. Таким образом, задача решена: х1=0,45, х2=36, К (х)=2,65.
2. Метод направленного перебора. Этот метод позволяет найти экстремум целевой функции для случая, когда она недифференцируема, или необходимо найти экстремум функции нескольких переменных.
Как и в предыдущем случае, известна целевая функция и ограничения
Выберем из физических или экономических соображений некоторую исходную точку К(х0), удовлетворяющую ограничительным уравнениям fj(xi), и шаг случайного' поиска h. Поскольку заранее неизвестно предпочтительное направление, в котором целесообразно организовать движение, выбираем одинаковые приращения переменных, каждый раз проверяя выполнение ограничительных уравнений и приращение функции, т. е.
Выбираем те xi, которые дали наибольшее приращение целевой функции, затем при втором шаге даем приращения наиболее предпочтительным переменным.
Может иметь место случай, когда некоторым переменным целесообразно давать отрицательные приращения. Такая ситуация складывается, когда исходная точка, вернее исходные координаты, выбраны неудачно. При каждом шаге определяется новое значение целевой функции. Оно должно быть больше предыдущего. Поиск продолжают до выполнения условия
После каждого шага проверяются условия
и т.д
3. Метод множителей Лагранжа. Метод является полезным при отыскании оптимальных решений, если целевая функция нелинейна, например, задана некоторым полиномом а ограничения заданы в форме равенств.
Требуется найти максимум целевой функции K=K(x1,...,...,хm)→mах. Ограничения заданы в виде
Предполагается, что K(x1,...,хm) и fj(x1,...,хm) дифференцируемы.
Составим функцию Лагранжа
где αj— неопределенные множители Лагранжа. Количество неизвестных прибавилось, но если мы их найдем и подставим в L то это даст оптимальное решение. Перешли от К к некоторой новой функции L.
Необходимым условием существования экстремума является
В этой системе столько неизвестных, сколько уравнений. Следовательно, можно найти x1,...,хm, α1,...,αm и, подставив их в функцию Лагранжа, получим оптимальное решение, т. е. Lmax.
Пример. Разрабатываемая аппаратура состоит из двух блоков Б1 и Б2. Заданная стоимость этих блоков равна соответственно A1 и А2. Известен период эксплуатации t и результирующая интенсивность отказов .
Требуется найти интенсивности отказов блоков, т. с. λ1 и λ2, при которой результирующая стоимость использования аппаратуры за время t минимальна, а интенсивность отказов равна заданной, т. е. λ, тогда
Выразим стоимость использования блоков через их надежность
Запишем целевую функцию в форме Лагранжа
(3.6)
Вычислим производные и приравняем их нулю:
Имеем систему трех уравнений с тремя неизвестными, решив ее, находим λ1, λ2, α, подставив их в (3.6), получим оптимальное решение.