- •Г.Г КАШЕВАРОВА, Т.Б. ПЕРМЯКОВА
- •Предисловие
- •Введение
- •Общие сведения о математическом моделировании.
- •Численные методы
- •Элементы теории погрешности
- •Понятия мастера и надстройки
- •Глава 1. Основные понятия матричного исчисления. Матрицы в расчетах строительных объектов
- •1.1. Матрицы и векторы. Определения
- •1.2. Матрицы специального вида
- •1.3. Действия над матрицами
- •1.4. Нормы матрицы и вектора
- •1.5. Матрицы в задачах строительной механики
- •1.5.1. Матрицы влияния внутренних сил
- •1.5.2. Матричная форма расчета статически определимых ферм
- •1.5.3, Матричная форма метода сил
- •1.5.4. Матричная форма метода перемещений
- •1.6. Матрицы в расчетах инженерных сетей
- •1.7. Функции Excel для операций над матрицами
- •Категория: математические. Функции:
- •2.1. Системы линейных алгебраических уравнений
- •2.2.1. Метод Гаусса
- •2.2.2. Метод Гаусса для СЛАУ с ленточными матрицами
- •2.2.3. Метод прогонки
- •2.2.4. Метод (схема) Холецкого
- •2.3. Итерационные методы решения систем линейных алгебраических уравнений
- •2.3.1. Метод Якоби (простых итераций)
- •2.3.2. Метод Гаусса - Зейделя.
- •2.3.3. Условия сходимости итерационного процесса
- •2.5. Обусловленность задач и вычислений, или как узнать, что получены правильные ответы
- •2.6. Вычисление определителя
- •2.7. Вычисление обратной матрицы
- •2.8. Нахождение собственных значений и собственных векторов матриц
- •2.8.1. Вводные замечания
- •2.8.2. Методы развертывания вековых определителей
- •2.8.3. Итерационные методы определения максимального по модулю собственного значения
- •2.9.1. Реализация метода Гаусса средствами приложения Excel
- •Последовательность действий:
- •2.9.4. Реализация метода Зейделя средствами приложения Excel
- •Последовательность действий:
- •3.1. Отделение корней
- •3.2. Этап уточнения корня
- •3.2.1. Метод половинного деления (бисекций)
- •3.2.2.Метод хорд
- •3.2.3. Метод Ньютона (метод касательных)
- •3.2.4. Модифицированный метод Ньютона
- •3.3. Системы нелинейных уравнений
- •3.4. Реализация численных методов решения нелинейных уравнений средствами приложения Excel
- •3.4.1. Решение нелинейных уравнений
- •Последовательность действий
- •4.2.3. Интерполяционный полином Эрмита
- •4.2.4. Сплайн-интерполяция
- •Глава 4. Аппроксимация
- •4.1. Задача и способы аппроксимации
- •4.2. Интерполирование функций
- •4.2.1. Постановка задачи интерполирования
- •4.2.2. Интерполяционная формула Лагранжа
- •4.3. Среднеквадратичное приближение функций
- •4.3.1. Метод наименьших квадратов
- •4.3.4. Квадратичное (параболическое) приближение
- •4.3.4. Эмпирические формулы с двумя параметрами. Метод выравнивания
- •4.4. Решение задач аппроксимации с помощью электронных таблиц Excel
- •4.4.1. Построение линейной эмпирической формулы методом наименьших квадратов
- •Последовательность действий
- •Последовательность действий
- •5.1. Квадратурные формулы прямоугольников
- •5.2. Квадратурная формула трапеций
- •5.3. Квадратурная формула Симпсона
- •5.4. Реализация методов численного интегрирования средствами приложения Excel
- •Глава 6. Численные методы решения дифференциальных уравнений с начальными и краевыми условиями
- •6.1.1. Задачи Коши и краевые задачи
- •6.2.1.Классификация уравнений и типы задач
- •6.3. Численные методы решения задач Коши
- •6.3.1. Метод Эйлера
- •(геометрический метод решения задачи Коши)
- •6.4. Численные методы решения краевых задач
- •Разностная схема краевой задачи для обыкновенного дифференциального уравнения 2-го порядка
- •Конечно-разностная аппроксимация функций двух переменных
- •Сходимость метода конечных разностей
- •6.5. Вариационный подход к решению краевых задач
- •6.5.1. Основные понятия вариационного исчисления
- •6.5.2. Связь решения краевой задачи с нахождением минимума функционала
- •6.5.3. Метод Ритца
- •6.6.1. Решение задачи Коши методом Эйлера
- •Построение второй итерации
- •Последовательность действий.
- •Порядок построения графиков приближенных решений краевой задачи
- •Глава 7. Метод конечных элементов
- •7.1. Основные положения МКЭ
- •Построение расчетной модели
- •Аппроксимация искомой функции
- •Составление разрешающих уравнений
- •Решение системы линейных алгебраических уравнений
- •7.2.1. Классификация конечных элементов
- •Одномерный конечный элемент
- •Двухмерные конечные элементы.
- •элемента
- •Одномерный симплекс-элемент
- •Двухмерный треугольный симплекс-элемент
- •7.2.3. Интерполирование векторных величин
- •7.2.4. Разбиение области на конечные элементы
- •7.2.5 Нумерация узлов и элементов
- •7. 3. Основные соотношения МКЭ
- •7.3.1. Получение разрешающих уравнений на примере плоской задачи теории упругости
- •7.3.2. Примеры разрешающих уравнений в задачах расчета строительных объектов
- •7.4. Другие типы конечных элементов
- •7.4.1. Элементы Эрмита
- •7.5. Теоретическая и практическая сходимость МКЭ
- •7.6.1. Специализированные программные комплексы
- •7.6.2. Универсальные программные комплексы
- •8.1.1. Математическая модель задачи оптимизации
- •8.1. Общие сведения
- •8.1.2. Необходимые и достаточные условия экстремума функции
- •8.1.3. Классификация задач математического программирования
- •8.2. Постановка задачи оптимального проектирования
- •8.2.1. Определение входных и выходных параметров
- •8.2.2. Выбор целевой функции
- •8.2.3. Назначение ограничений
- •8.2.4. Нормирование управляемых и выходных параметров
- •8.2.5. Примеры постановок задач оптимального проектирования
- •8.3. Задачи линейного программирования
- •8.3.1. Общая постановка задачи ЛП
- •8.3.2. Геометрический смысл системы линейных неравенств с двумя неизвестными
- •8.3.4. Симплекс-метод решения задач линейного программирования
- •Задача об оптимальном плане выпуска продукции
- •Задача об оптимальном раскрое материалов (о минимизации отходов)
- •Задача о планировании смен на предприятии
- •Задача о покрытии местности при строительстве объектов
- •Транспортная задача
- •Задача о назначениях (проблема выбора)
- •8.3.6. Двойственные задачи в линейном программировании
- •8.4. Нелинейные задачи оптимизации
- •8.4.1. Выпуклые множества и выпуклые функции
- •8.4.2. Классификация численных методов решения нелинейных задач оптимизации
- •Основные этапы поиска экстремума
- •8.4.3. Численные методы одномерного поиска
- •Метод перебора или равномерного поиска
- •Метод дихотомии (или половинного деления)
- •Метод квадратичной интерполяции
- •Метод покоординатного спуска
- •Метод градиентного спуска
- •Метод наискорейшего спуска
- •Метод сопряженных градиентов
- •Метод Ньютона
- •Метод штрафных функций
- •8.5. Решение задач оптимизации с помощью электронных таблиц Excel
- •Литература
- •Оглавление
- •Численные методы решения задач строительства на ЭВМ
Отсюда X 2 = (0,72;-0,12;0,021), Z ( X 2) = 1,11.
Заметим, что глобальный минимум достигается при X - (0,0,0) и
равен 0, т.е. после второй итерации получили значительное улучшение исходного значения. Процесс можно продолжать до тех пор, пока не получится решение с требуемой точностью.
Метод наискорейшего спуска
ВАлгоритм метода наискорейшего спуска [3, 19] содержит следующие этапы:
Этап 1. Вычисление всех частных производных Z(x) по управляемым параметрам в исходной или промежуточных точках.
Этап 2. Нахождение одним из методов одномерного поиска оптимального шага вдоль антиградиентного направления. Величина шага h определяется из условия минимума функции Z[Xk— hVZ(Xk)] по ht т. е. dZ(h)/dh.
Этап 3. Вычисление координат новой точки Хк+1 по (8.101).
Этап 4. Если условия прекращения поиска не выполняются, то происходит возврат к этапу 1.
Метод сопряженных градиентов
В методе сопряженных градиентов [20] строится последовательность направлений поиска £*, которые являются
линейными |
комбинациями антиградиента (~VZ(Xк)) |
целевой |
||
функции и |
предыдущих |
направлений поиска(,S |
o , |
) Итак, |
если S о = - V Z ( X о) , то |
X i = X о + h0So. Нужно |
найти |
новое |
|
направление |
S i =- VZ(X\) + Р ^ о, подобрав коэффициент (3i так, |
|||
чтобы векторы S \ и So были сопряженными. |
|
|
ёПримечания:
1)Векторы So и S\ размерности п называют сопряженными по отношению к любой квадратной матрице Q того же порядка (или
Q-сопряженными), если скалярное произведение векторов So и
|
QS\ равно нулю. |
|
2) |
Q-сопряженность векторов Son S\ |
означает их ортогональность. |
3) |
В [14] показано, что коэффициент |
будет удовлетворять условию |
|
сопряженности векторов So и S i , если его вычислять по формуле |
р _ v r z ( jfo v z (g ,)
V r Z(X o )V Z (X o )
S В общем виде алгоритм метода сопряженных градиентов
состоит из следующих этапов:
Этап 1. Вычисление в точке Ха вектора S о = - V Z ( X o )
Этап 2. Нахождение минимума Z(X) одним из методов одномерного
поиска в направлении S * (начальное значение к — 0), что сразу определяет точку Х м , значение Z ( X k+1) и VZ(X*+i).
Этап 3. Определение нового направления S *+i из соотношения
S*+i = - V Z ( X M ) + S k V r Z ( ^ , ) V Z ( Z t+l)
|
V T Z { X k ) V z ( x о |
После (л+1)-го шага (при к = п) вычисления циклически повторяются. |
|
Этап 4. Если |
|| < £, где е —константа точности вычислений, поиск |
прекращается. |
|
Метод Ньютона
Описанный выше метод наискорейшего спуска основывается на последовательной линейной аппроксимации целевой функции и ее первых производных на каждой итерации. Для того чтобы построить более общую стратегию поиска, следует привлечь
информацию о вторых производных целевой функции. Такая стратегия применяется в методе Ньютона [20], использующем кроме градиента функции и матриц ее вторых производных Н
(8.6) - матрицу Гессе.
В алгоритме метода Ньютона в качестве шага при движении по направлению антиградиента используется обратная матрица вторых производных.. При этом каждое следующее приближение в
итерационном процессе определяется по формуле |
|
Х ш = Х к - В . - \x)4Z{Xk). |
(8.102) |
8.4.5.Методы нелинейного программирования (задачи
сограничениями)
В большинстве случаев задачи оптимизации технических объектов сводятся к поиску экстремума нелинейной целевой функции при наличии ограничений в виде равенств и неравенств.
Рассмотрим общую задачу нелинейного программирования:
минимизироватьZ(X) -> min |
X = (xltx2,...,x„) |
(8.103) |
при ограниченияхg,(X) > 0, |
j=l,2,...,m, |
(8.104) |
hk(x) = 0, *=1,2,.../. |
(8.105) |
«5 Ограничение в виде неравенства g,(A') > 0 называется активным,
или связывающим в точке X , если g((A') = 0, и неактивным, или
несвязывающим, если g;(X ) >0.
Решение этих задач можно выполнить с помощью одного из двух подходов.
В первом подходе учитывается, что большинство развитых методов оптимизации ориентировано на поиск безусловного экстремума. Поэтому их применение к решению задачи условной оптимизации требует, чтобы эта задача была предварительно сведена к задаче безусловной оптимизации.
Во втором подходе используются методы, специально разработанные для решения задач нелинейного программирования с ограничениями.
Мы рассмотрим лишь первый подход к решению этих задач, а именно методы сведения задач условной оптимизации к безусловной.
Эта операция выполняется с учетом прямых и функциональных ограничений. Устранение прямых ограничений при переходе к безусловной оптимизации осуществляется соответствующим нормированием управляемых параметров.
При прямом ограничении а <щ< Ъ нормирование |
можно |
выполнить, например, по формуле |
|
и - ф + а)/2 |
(8.106) |
*, = tg я ------------------ |
|
Ъ - а |
|
преобразовав ограниченный параметр н, в неограниченный х,.
Функциональные ограничения устраняются путем конструирования обобщенной функции оптимизации с учетом типа ограничений. Так, если все ограничения представлены в аналитическом виде и являются функциональными зависимостями типа равенств, то переход к задаче безусловной оптимизации часто осуществляется с помощью метода неопределенных множителей Лагранжа [2,20].
Метод множителей Лагранжа
Вэтом методе новая целевая функция - функция Лагранжа
Ф( Х , А )— формируется из исходной целевой функции Z(X) и всех
функциональных ограничений типаравенств следующим образом:
Ф (*, Л) = Z ( X ) + £ |
л ^ у- ( X ) , |
(8 Ю7) |
|
|
н |
|
|
где Л = (Л,,А2 , . . . , Л т ) - |
вектор |
неопределенных |
множителей |
Лагранжа; \ y j( X) = 0- |
у-е ограничение типа равенства; т |
||
количество ограничений. |
|
|
|
Чтобы найти значения п неизвестных управляемых параметров Х\, х2, ..., хп и т мноэюителей Лагранэюа Д 2,...Д Ш,
решается система алгебраических уравнений, выражающая необходимые условия экстремума функции Лагранэюа'.
дф(Х,А) |
сЩХ) + |
^ t(X) |
0 При £=1,2,...,/!. |
|
dxi |
||||
dXj |
dXj |
|
||
|
|
|
(8.108) |
|
д ф ( Х , А ) —Vy(X) = 0 при |
У=1,2,...,т. |
(8.109) |
||
dkj |
|
|
|
Система уравнений разрешима, причем единственным образом, относительно множителей Лагранжа, если
dy, dVi dx] dx„
( 8.110)
8xt dx„
Функция Лагранжа Ф(ЛГ,Л) и целевая функция Z(X) в
допустимой области Q совпадают, так как здесь Ч/(.Аг)~ 0 .
Поэтому если оптимальное значение функции Лагранжа найдено, то оно будет одновременно и условным оптимумом целевой
функции Z(X ) .
■ Пример 8.11. Вернемся к задаче проектирования контейнера, оптимального с точки зрения затрат материала, т.е., имеющего минимальную поверхность (задача 8.1), и будем учитывать только ограничение-равенство, т.е математическая модель задачи нелинейного программирования имеет вид:
минимизировать |
Zmin - 2{ххх2 + х2х3 + хух2) |
при ограничении |
х]х2х3 = 1. |
Составим функцию Лагранжа для этой задачи:
Ф ( Х , А,,) = 2(JCJлг2 + jt2* 3 +Xi X3) + X { ( xi X^x^ -1). |
(8.111) |
В соответствии с (8.108) и (8.109) запишем необходимые условия минимума функции Лагранжа (8.111):
дФ(Х,Х.) „ |
л |
Л |
------------- — = 2х 2 + 2 х 3 + Х}х 2х 3 = 0; |
|
|
cbc, |
|
|
дф(х, Х{) |
|
(8.112) |
= 2х} + 2х3 + Х ]х 1х 3 = 0 ; |
||
дх-> |
|
|
дФ(Х,Хх)
= 2хх +2 х 2 +Х1х 1х 2 = 0;
дх3
= х хх2х3 -1 = 0
дЛ,
Решение этой системы дает Х1=х2-Хз=1 м. Минимальное значение целевой функции равно 6 м2 Конструктивное ограничение - неравенство (*i>l,5) в данном решении не удовлетворено, и следовательно, данное решение неприемлемо.
Кун и Таккер обобщили метод множителей Лагранжа на случай общей задачи нелинейного программирования (8.103) - (8.105) и построили необходимые условия оптимальности с ограничениями как в виде равенств, так и неравенств. Эти условия оптимальности можно сформулировать в виде задачи нахождения решения некоторой системы нелинейных уравнений и неравенств, или, как иногда говорят, задачи Куна - Таккера. [2].
Найти векторы Х,и |
и Л, |
удовлетворяющие следующим |
условиям: |
|
|
т |
t |
t |
v z (x ) - 2 > , v g j (X ) - £ к щ ( х ) = о :
м(Ы
g j(X )2:0 , |
j=\,2,...,m; |
|
hk{X) = 0, |
A=l,2,...,/; |
(8.ИЗ) |
U jg j( X ) = 0, |
/= 1 ,2 , ... ,/и; |
|
Uj> 0, |
j=l,2,...,m. |
|
J
Решая систему уравнений и неравенств (8.113), находим
как искомые переменные X , так и вспомогательные переменные - множители Лагранжа щ и А*.
При этом для активных ограничений-неравенств, выполняемых в точке оптимального решения в виде равенств gj=0, множители Лагранжа Uj> 0 , а для неактивных ограничений (gj>0)
выполняются условия Wjgj=0, то есть, для этих ограничений Wj=0. Если существует возможность обнаружить ограничения,
которые неактивны в точке оптимума, до непосредственного решения задачи, то эти ограничения можно исключить из модели и тем самым уменьшить ее размеры.
■ Пример 8.12. Снова обратимся к задаче проектирования контейнера, имеющего минимальную поверхность (задача 8.1), но с учетом всех ограничений:
минимизировать |
Zmin =2(*1х2 + *2*з + * 1*2 ) |
|
при ограничении - равенстве |
*1*2 * 3 = 1 |
|
и ограничениях - неравенствах: |
х\ > 1,5; х2> 0; х3>0. |
Составим задачу Куна - Таккера (8.113):
*1 - 1,5>0; |
*2>0; |
*з>0; |
|
* 1* 2*3 - 1 |
= 0 ; |
|
|
Щ> 0; w2=0; |
w3=0; |
j |
Решая данную систему уравнений и неравенств, получаем *1=1,5; л:2=*з=0,816. Целевая функция при этих значениях Zmin=6,232.