Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Структура процесса моделирования
Математическое моделирование – наиболее обширный раздел моделирования. Метод не требует больших затрат на проведение (например, как физическое или натурное моделирование), а с ростом производительности ЭВМ проведение расчетов перестало занимать много времени. Математическое моделирование является неизбежной составляющей научно-технического прогресса. Сама постановка вопроса о математическом моделировании какого-либо объекта порождает четкий план действий. Его условно можно разбить на три этапа: модель-алгоритм-программа (см. схему). На первом этапе выбирается (или строится) «эквивалент» объекта, отражающий в математической форме важнейшие его свойства – законы, которым он подчиняется, связи, присущие составляющим его частям, и т.д. Математическая модель (или ее фрагменты) исследуются теоретическими методами, что позволяет получить важные предварительные знания об объекте. Второй этап – выбор (или разработка) алгоритма для реализации модели на компьютере. Модель представляется в форме, удобной для применения численных методов, определяется последовательность вычислительных и логических операций, которые нужно произвести, чтобы найти искомые величины с заданной точностью. Вычислительные алгоритмы должны не искажать основные свойства модели и, следовательно, исходного объекта, быть экономичными и адаптирующимися к особенностям решаемых задач и используемых компьютеров. На третьем этапе создаются программы, «переводящие» модель и алгоритм на доступный компьютеру язык. К ним также предъявляются требования экономичности и адаптивности. Их можно назвать «электронным» эквивалентом изучаемого объекта, уже пригодным для непосредственного испытания на «экспериментальной установке» - компьютере. Создав триаду «модель – алгоритм – программа», мы получаем в руки универсальный, гибкий и недорогой инструмент, который вначале отлаживается, тестируется в «пробных» вычислительных экспериментах. После того как адекватность (достаточное соответствие) триады исходному объекту удостоверена, с моделью проводятся разнообразные и подробные «опыты», дающие все требуемые качественные свойства и характеристики объекта. Процесс моделирования сопровождается улучшением и уточнением, по мере необходимости, всех звеньев триады. Будучи методологией, математическое моделирование не подменяет собой математику, физику, биологию и другие научные дисциплины, не конкурирует с ними. Наоборот, трудно переоценить его синтезирующую роль. Создание и применение триады невозможно без опоры на самые разнообразные методы и подходы – от качественного анализа нелинейных моделей до современных языков программирования. Оно дает новые дополнительные стимулы самым разным направлениям в инжиниринге и науке в целом. К методам математического моделирования можно отнести следующие методы: - линейное программирование; - нелинейное программирование; - динамическое программирование; - сетевые задачи; - вероятностные и оптимизационные модели; - целочисленное программирование; - имитационное моделирование. Рассмотрим некоторые из этих методов. Линейное программирование Этот метод наиболее прост для использования, но при этом значительно расширяет возможности руководителя для принятия решений. Для постановки задачи задается система уравнений: одно целевое (минимум или максимум) и ряд ограничений. Например – требуется максимизировать прибыль, при ограничениях на рабочее время станков (табл. 3.1). Предположим, что число деталей: А, В, С равно x1, x2, x3 соответственно. Тогда ограничения задачи будут выглядеть так: 2x1+4x2+5x3 ≤ 120 x1+8x2+6x3 ≤ 280 7x1+4x2+5x3 ≤ 240 При этом число деталей не может быть отрицательным: x1, x2, x3 ≥ 0 Таблица 3.1 Линейное программирование
Целевая функция (максимизировать прибыль):
10x1+14x2+12x3> max
Имеем систему уравнений:
2x1+4x2+5x3 ≤ 120 x1+8x2+6x3 ≤ 280 7x1+4x2+5x3 ≤ 240 x1, x2, x3 ≥ 0 10x1+14x2+12x3> max
Часто подобные задачи можно решить графически. Реальные задачи редко бывают такими простыми, поэтому среди минусов метода можно отметить сильную аппроксимацию результатов. Типичными задачами этого метода являются задачи составления жидких смесей, распределения ресурсов и т.д. Нелинейное программирование Нелинейное программирование применяется, когда зависимости между величинами нельзя выразить линейно. Примером может служить тот случай, когда на предприятии в течение ряда лет прирост выпуска продукции отстает от роста затрат труда, тогда как темпы роста количества отходов его обгоняют. Также примером является фирма, которая должна оплатить счет за электроэнергию в случае, когда расчеты ведутся по нелинейной формуле, учитывающей как среднесуточный расход, так и «пиковую» потребность в энергии. В данном случае фирма получает сведения о нелинейном характере затрат из договора о ставках оплаты, заключенного с компанией, обеспечивающей энергоснабжение. Нелинейность «встраивается» в модели программирования и в других случаях, например: 1. Приготовление бензиновых смесей. В модели приготовления бензина определенного состава из отдельных фракций, полученных в результате перегонки нефти, обычно имеется нелинейное ограничение на октановое число смеси, поскольку эта характеристика качества нелинейно зависит от количества, добавляемого к смеси тетраэтилового свинца. 2.Управление производственным процессом. В модели металлургического завода значение переменной, характеризующей температуру в доменной печи, может быть описано функцией от других переменных, соответствующих количеству потребного тепла и временным показателям процесса. В свою очередь каждая из этих переменных входит в другие ограничения, а также в целевую функцию. 3. Выручка от реализации продукции. Спрос на продукцию компании может существенно зависеть от цен реализации: чем ниже цена продукта, тем больше объем реализации, несмотря на аналогичное снижение цен, производимое конкурентами. Следовательно, выручка от реализации продукции не изменяется пропорционально цене, и это обстоятельство должно быть отражено в целевой функции многопродуктовой модели с помощью нелинейного слагаемого. Для иллюстрации примем, что х(р) есть объем реализации, зависящий от цены р; тогда выручка от реализации равна рх(р). Пусть на представляющем для нас интерес интервале изменения р функция объема реализации от цены линейна, т. е. имеет вид х (р) = ap + b. Тогда слагаемые в целевой функции, относящиеся к выручке от реализации, являются квадратичными относительно управляющей переменной р и имеют вид: (ар2 + bр). Пока не существует универсального метода решения задач нелинейного программирования. Задачи легко описываются системой уравнений, но методы решений крайне громоздки, фактически почти всегда для решения используется ЭВМ.
Сетевые задачи Классическим примером сетевого программирования является транспортная задача. Пусть имеются пункты производства A1, А2, … Аn с объемами производства в единицу времени (месяц, квартал), равными соответственно а1, а2, ... аn, и пункты потребления B1, В2, ... Вn с объемами потребления, равными b1, b2, ... bn соответственно. Будем предполагать, что производство и потребление сбалансированы — сумма объемов производства равна сумме объемов потребления.
Предполагаются известными величины Сij — затраты по перевозке единицы продукта из i-го пункта производства в j-й пункт потребления. Требуется найти такой план перевозок, при котором были бы удовлетворены потребности в пунктах В1, В2... Вn и при этом суммарные затраты на перевозку были бы минимальны. Обозначая через хij количество продукта, перевозимое из i-го пункта производства в j-й пункт потребления, приходим к следующей математической формулировке задачи.
Транспортная задача решается симплекс методом. Популярное:
|
Последнее изменение этой страницы: 2017-03-03; Просмотров: 764; Нарушение авторского права страницы