- •Численные методы решения задач строительства
- •Часть 1
- •Предисловие
- •В ведение
- •Общие сведения о вычислительном эксперименте и математическом моделировании
- •Численные методы.
- •Погрешности вычислений
- •Понятия точности, устойчивости и сходимости при численном решении
- •1.1. Матрицы и векторы.
- •1.2. Матрицы специального вида
- •Глава 1 Основные понятия матричного исчисления
- •1.3. Действия над матрицами
- •1.4. Нормы матрицы и вектора
- •1.5. Функции ms Excel для операций над матрицами
- •Контрольные вопросы
- •Г лава 2. Численные методы решения нелинейных уравнений
- •2.1. Первый этап. Отделение корней
- •Второй этап. Этап уточнения корня
- •Iteration (итерация)- повторение, ре-зультат повторного применения какой-либо математической операции.
- •Метод половинного деления (бисекции)
- •Метод хорд
- •Метод Ньютона (метод касательных)
- •Модифицированный метод Ньютона
- •Реализация численных методов решения нелинейных уравнений средствами приложения ms Excel
- •Последовательность действий:
- •2.3.1. Решение нелинейных уравнений с использованием надстройки «Подбор параметра»
- •Последовательность действий
- •Контрольные вопросы
- •3.2. Прямые методы решения систем линейных алгебраических уравнений
- •3.2.1. Метод Гаусса
- •3.2.2. Метод прогонки
- •Алгоритм метода прогонки
- •3.3. Итерационные методы решения систем линейных алгебраических уравнений
- •3.3.1. Метод Якоби (простых итераций)
- •3.3.2. Метод Гаусса – Зейделя.
- •3.3.3. Условия сходимости итерационного процесса
- •3.5. Устойчивость решения слау относительно исходных данных (или обусловленность задач и вычислений)
- •3.6. Примеры решения слау с использованием электронных таблиц ms Excel
- •3.6.1. Реализация метода Гаусса
- •Последовательность действий
- •Прямой ход метода Гаусса.
- •3.6.2. Решение слау с помощью надстройки «Поиск решения»
- •Последовательность действий:
- •3.6.3. Реализация метода Якоби средствами приложения ms Excel
- •Последовательность действий
- •3.6.4. Реализация метода прогонки средствами приложения Excel
- •Последовательность действий
- •Контрольные вопросы
- •Г лава 4. Численное интегрирование
- •Алгоритм метода половинного шага.
- •4.1. Квадратурные формулы прямоугольников
- •4.2. Квадратурная формула трапеций
- •4.3. Квадратурная формула Симпсона
- •4.4. Реализация методов численного интегрирования средствами приложения Ms Excel
- •Последовательность действий:
- •Контрольные вопросы
- •Г лава 5. Аппроксимация
- •5.1. Задачи аппроксимации
- •5.2. Интерполирование функций
- •5.2.1. Постановка задачи интерполирования
- •5.2.2. Интерполяционная формула Лагранжа
- •5.3. Среднеквадратичное приближение функций
- •5.3.1. Постановка задачи
- •5.3.2. Метод наименьших квадратов
- •5.3.3. Линейная эмпирическая формула (линейная регрессия)
- •5.3.4. Коэффициент корреляции
- •5.3.5. Квадратичное (параболическое) приближение
- •5.3.6. Эмпирические формулы с двумя параметрами (метод выравнивания)
- •5.4. Решение задач аппроксимации с помощью электронных таблиц Excel
- •5.4.1. Построение уравнений регрессии методом наименьших квадратов с использованием надстройки «Поиск решения»
- •Последовательность действий
- •5.4.2. Построение линейной эмпирической формулы с использованием встроенных функций линейн и тенденция
- •Последовательность действий
- •Последовательность действий
- •Контрольные вопросы
- •Глава 6. Численные методы оптимизации
- •6.1. Общие сведения
- •6.1.1. Математическая модель задачи оптимизации
- •6.1.2. Классификация задач математического программирования
- •6.2. Постановка задачи оптимального проектирования
- •6.3. Задачи линейного программирования
- •6.3.1. Общая постановка задачи
- •6.3.2. Геометрический смысл системы линейных неравенств
- •Случай n проектных параметров.
- •6.3.3. Геометрический метод решения задач линейного программирования
- •Последовательность действий:
- •6.3.4. Симплекс-метод решения задач линейного программирования
- •Примеры задач линейного программирования в сфере проектирования и управления строительным производством
- •6.4.1. Задача об оптимальном плане выпуска продукции
- •6.4.2. Задача об оптимальном раскрое материалов (о минимизации отходов)
- •6.4.3. Задача о планировании смен на предприятии
- •6.4.4. Задача о покрытии местности при строительстве объектов
- •6.4.5. Транспортная задача
- •Задача о назначениях (проблема выбора)
- •6.5. Решение задач оптимизации с помощью ms Excel
- •6.5.1. Решение задачи планирования производства
- •Последовательность действий:
- •Контрольные вопросы
- •Литература
- •6.5.2. Решение транспортной задачи
- •Последовательность действий:
- •Глава 1 16
- •Глава 2. 27
- •Глава 3. 51
- •Глава 4. 86
- •Глава 5. 100
- •Глава 6. 125
Случай n проектных параметров.
Сказанное выше можно обобщить для случая n проектных параметров. Система ограничений в этом случае имеет вид (6.5).
Каждое неравенство системы ограничений (6.5):
определяет некоторое полупространство Pi, а все неравенства - некоторую область в n-мерном пространстве, которая является пересечением конечного числа полупространств.
По аналогии с двумерным случаем называем эту область в n - мерном пространстве выпуклой многогранной областью, а в случае ее ограниченности - выпуклым многогранником.
Совокупность точек n-мерного пространства, координаты которого удовлетворяют системе (6.5), есть замкнутая выпуклая многогранная область , получающаяся в результате пересечения всех m полупространств, отвечающих неравенствам системы. Если эта область ограничена, мы называем ее выпуклым многогранником в пространстве.
Опорной прямой (при n=2) называется прямая, которая имеет с областью , по крайней мере, одну общую точку. При этом вся область расположена по одну сторону от этой прямой. Например, на рис.6.8 приведены две опорные прямые: L1 и L2. Прямая L1 проходит через вершину области , а L2 – через сторону . |
Рис. 6.8. К определе-нию опорной прямой |
При n=3 уже говорят об опорной плоскости, которая может проходить через вершину многогранника, или его ребро, или его грань. Понятие опорной плоскости (гиперплоскости) легко обобщить на случай n>3.
6.3.3. Геометрический метод решения задач линейного программирования
В этом разделе рассмотрим геометрическое истолкование задачи линейного программирования для случая двух проектных параметров. При рассмотрении геометрического смысла задачи ограничения удобно задавать в виде неравенств, как мы и сделаем в этом разделе.
Постановка задачи. Пусть задана целевая функция для двух проектных параметров x1 и x2 :
Для
определенности положим
.
И пусть задана система линейных
неравенств:
(6.9)
Требуется среди допустимых решений системы неравенств (ОДР) найти такое, при котором целевая функция принимает минимальное значение.
Последовательность действий:
Строим область допустимых решений системы (6.9). В общем виде – это выпуклая замкнутая многоугольная область на плоскости x1x2 , лежащая в первой четверти.
Предположим, что эта область имеет вид, как показано на рис. 6.9.
Рис. 6.9. Графический метод поиска экстремума функции
Стоящую перед нами задачу (6.8-6.9) можно сформулировать следующим образом.
Среди всех точек (x1, x2) найти такую, координаты которой минимизирует функцию цели (6.8).
В зависимости от области допустимых решений (ОДР) возможны следующие варианты решения задачи линейного программирования (рис.6.10).
Рис.6.10. Варианты решения задач ЛП.
Приравняем выражение функции цели какой-либо постоянной величине R:
.
Это уравнение определяет на плоскости прямую, в точках которой функция цели Z принимает постоянное значение R. Такая прямая называется линией уровня функции цели.
Будем изменять величину R, т.е. перемещать найденную прямую параллельно самой себе в направлении увеличения (при поиске максимума) или уменьшения (при поиске минимума) целевой функции. Направление движения прямой для нашего примера (с2 > 0) указано на рисунке стрелкой (рис.6.11,а).
Таким образом, можно сказать, что при возрастании R от – до + линия уровня (6.10), смещаясь параллельно самой себе в одну и ту же сторону, “зачерчивает” всю плоскость.
Рис.6.11. Линии уровня целевой функции
В результате, либо отыщется точка, в которой целевая функция принимает максимальное (минимальное) значение, либо будет установлена неограниченность функции в области допустимых решений.
Определим координаты точки экстремума функции цели и вычислим ее значение в этой точке.
Очевидно, что в нашем случае это будет первая точка встречи линии уровня функции с областью (рис. 6.9) при ее смещении от меньших значений R к большим, и эта точка совпадает с началом координат. Для любой другой точки из области значение функции цели Zmin будет больше, чем в точке (0,0).
Рассмотрим несколько типичных примеров геометри-ческого решения задач линейного программирования.
Пример 6.2. Минимизировать целевую функцию
при ограничениях:
Строим полуплоскости Pi, i=1,2,3,4,5 соответствующие каждому неравенству системы ограничений (6.12).
Рис.6.12. Область допустимых решений - (к примеру 6.2)
Полуплоскость
Р1
ограничена прямой x–y+1=0
и распо-ложена «снизу» от этой прямой.
Аналогично строим полуплоскости Р2
и Р3.
Пересечение полуплоскостей Р1,
Р2,
Р3
и
дает многоугольник
(Рис.6.12).
Записываем прямую линии уровня функции цели
и строим прямые, соответствующие R= –1, R=0 и R=1. Из рис.6.12 видно, что линию уровня нужно перемещать в сторону уменьшения значения R до встречи с «последней» точкой области, т.е. М(2,3) в которой функция цели принимает значение Zmin= – 4.
Таким образом, решением задачи является: x=2, y=3, Zmin= – 4.
Решение данной задачи с использованием электронных таблиц Excel приведено в разделе 6.5.
Пример 6.3. Минимизировать целевую функцию
при ограничениях примера 6.2.
Область
допустимых решений уже построена в
предыдущем примере. Строим линии уровня
для R=0
и R=–1.
Рис.6.13. К примеру 6.3. |
Из рис. 6.13 видно, что при перемещении линии уровня R соприкосновение с областью произойдет по границе области. Задача имеет бесконечно много решений. В ряде случаев можно выбрать одно из них, исходя из физического смысла задачи
|
Пример 6.4. Минимизировать функцию цели
Система ограничений имеет вид
Построим область допустимых решений, определяемую системой неравенств (6.15), аналогично примеру 6.2 (рис.6.14).
|
Строим линии уровня –x=R для R=0, R=–1, R=–2. Очевидно, что для всех R[–,0] линии уровня пересекают область . Следовательно,
функция цели не
ограничена снизу,
т.е.
|
Пример 6.5. Рассмотрим предыдущую задачу на поиск максимума функции цели, т.е. ограничения описываются системой (6.15), а функция цели имеет вид
Из рис.6.14 видно, что максимальное значение функция цели достигает в начале системы координат, т.е. решением задачи является x=0, y=1 и соответственно Zmax=0.
Обобщим результаты приведенных выше решений задач линейного программирования (6.8-6.9). При решении этих задач возможны различные случаи:
При перемещении линии уровня соприкосновение ее с областью произойдет по целому отрезку границы области. В этом случае решений бесконечно много. Такой случай рассмотрен в примере 6.3. В таких случаях надо обратиться к физической интерпретации задачи.
Область является неограниченной фигурой, и прямая уровня
для сколь угодно больших по абсолютной
величине отрицательных R
имеет общие точки с областью
.
В этом случае минимальное значение
функции цели в области
равно –.
Линия уровня –x=R
при всех значениях R
пересекает область
.
Следовательно, функция цели в области
не ограничена снизу, т.е.
,
иначе говоря, минимум
функции не достигается.
Такой случай приведен в примере
6.4.Область допустимых решений пуста, и задача (6.8-6.9) в этом случае не имеет решения.
Область допустимых решений содержит единственную точку. В этом случае не приходится говорить об оптимальном решении.
В случае n неизвестных (n 3) все построения теряют наглядность. Однако геометрическая формулировка задачи в случае n неизвестных остается той же самой, что и в случае двух переменных. Различие состоит в том, что понятие «линия уровня» для n=2 заменяется понятием «плоскость уровня» для n=3 и «гиперплоскость» – для n > 3.

Рис.6.14.
К примеру 6.4.
.