Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Список использованных источников




Цель работы

 

Получение навыков оптимизации моделей СМО в среде ExtendSim.

 

Задание

 

1. Изучить теоретический материал

2. Используя инструмент моделирования ExtendSimпостроить структуру модели в соответствии со своим вариантом.

3. Вывести целевую функцию. Задать ограничения. Провести оптимизацию.

4. Проанализировав работу смоделированной системы, внести предложения для улучшения ее работы.

 

Вариант 1. Поставщик сервиса для мобильной связи выбирает оборудование автоматической телефонной станции и задается вопросом, сколько потребуется телефонных каналов для получения максимальной прибыли? Поток поступающих вызовов – простейший пуассоновский с интенсивностью l = 1,5 (вызовов в минуту). Интенсивность облуживания вызова каждым каналом µ = 0,5 (вызовов в минуту). Начальное число каналов АТС – 3.Каждый обслуженный телефонный вызов приносит доход – 1 денежную единицу, а за каждый отклоненный вызов поставщик должен заплатить штраф в размере 1,25 д.е. Содержание каждого канала обходится в 0,05 д.е. в минуту. Общее время моделирования – 8 часов. Необходимо найти такое число каналов, при котором предприятие получит максимальный доход.

 

Вариант 2. Предприятие производит промышленный растворитель. Необходимое для производства сырье закупается с учетом планируемого объема выпускаемой продукции. Текущий запас продукции на складе – 100 т. Цена продажи растворителя составляет 4.тыс денежных единиц за тонну, расходы на сырье – 2 тыс. д.е. за тонну. Если объем партии производства превышает 300 тонн, то расходы на сырье (тыс. ед./тонна) уменьшаются на 10%. Минимальный объем партии производства – 200 т, максимальный – 500 т. Затраты на организацию производства одной партии растворителя – 1500 д.е. Если спрос превышает объем выпуска, то убытки по неудовлетворенному спросу составляют 1 тыс. д.е. в час. Спрос на растворители описывается экспоненциальным законом с параметром l = 5 т/ч. Общее время моделирования – 720 часов. Необходимо определить оптимальный размер партии и оптимальную периодичность производства.

 

Вариант 3. Оптовый склад садовой техники должен заказать партию газонокосилок для наступающего сезона у внешнего поставщика. Согласно условиям поставок, объем партии варьируется от 200 до 700 газонокосилок и должен быть кратным 100. Каждая проданная газонокосилка приносит 300 денежных единиц прибыли. Стоимость одной газонокосилки в партии – 100 д.е., затраты на организацию очередной партии заказа – 1000 д.е. Каждый час простоя в связи с отсутствием газонокосилок приносит складу убыток в размере 150 д.е. Спрос на газонокосилки в предстоящем сезоне описывается нормальным распределением с параметрами M=5 ч и σ=1 ч. Общее время моделирования – 720 часов. Необходимо определить оптимальный размер партии и оптимальную периодичность доставок.

 

Вариант 4. Отдел товаров получил предложение закупок искусственных новогодних елок. Поставщик готов поставлять елки партиями объемом 10, 20 или 30 штук, при этом закупочная цена зависит от объема партии и составляет соответственно 80, 75 и 70 денежных единиц за елку. Стоимость доставки одной партии елок – 100 д.е. Планируемая розничная цена – 250 д.е. за елку. Если спрос превышает объем выпуска, то убытки по неудовлетворенному спросу составляют 1200. д.е. в час. Прогнозируемый спрос на елки описывается экспоненциальным законом распределения с параметром l = 6шт/ч. Общее время моделирования – 720 часов. Необходимо определить оптимальный размер партии и оптимальную периодичность доставок.

 

Вариант 5. Спрос на ежедневную газету представляет собой случайную величину с логнормальным законом распределения с параметрами M=3 мин. и σ=1 мин. Владелец киоска в течение дня имеет возможность сделать заказы на уровне 10, 20, 30, 40, 50 экземпляров. Заказ можно оформлять каждый час. Газета закупается по цене 7 денежных единиц, а продается по цене 25 д.е. Затраты на оформление одного заказа – 5 д.е. Если спрос превысит предложение, то каждая минута без газет обходится киоску в 20 денежных единиц. Общее время моделирования – 8 часов. Необходимо определить оптимальный размер и оптимальную периодичность оформления заказов.

 

Вариант 6. Предприятие производит железобетонные панели, используя в качестве основного сырья цемент. Потребность в сырье описывается пуассоновским законом распределения с параметром l=200 мешков/день.

Удельная прибыль от производства панелей в пересчете на объем использованного сырья составляет 10 денежных единиц на один мешок сырья. Стоимость одного мешка цемента – 5 д.е., затраты на доставку одной партии сырья – 500 д.е. Если производство простаивает в связи с отсутствием сырья, оно теряет 3000 д.е. в день. Минимальный размер одной партии доставки – 1000 мешков, максимальный – 5000 мешков. За один день может быть доставлена одна партия мешков. Общее время моделирования – 30 дней. Необходимо определить оптимальный размер и оптимальную периодичность оформления заказов.

 

Теоретический материал

 

Для решения задач оптимизациив ExtendSimимеется специальный блок Optimizer.Суть его заключается в поиске максимального (минимального) значения целевой функции ив определении идеальных значений для параметров в модели.Запуская модель множество раз, среда использует различные значения для выбранных параметров, до тех пор, пока не найдено приемлемое решение.

Порядокдействий использованиячисленной оптимизации в Extend:

1. Добавьте блок Optimizerв свою модель.

2. Определите формулу целевой функции.

3. Определите, какие переменные будут варьироваться.

4. Установите ограничения для переменных.

5. Установите параметры блока Optimizerи запустите оптимизацию.

Пример решения задачи численной оптимизации в Extend:

Условие задачи.

Размер автомата прохладительных напитков варьируется от 1000 до 8000 банок напитков (в данном примере начальное количество банок напитков, которое может выдать автомат равно 1000).

Служба доставки доставляет новый автомат в начале каждого дня, и заменяет его периодически в течение дня (в рассматриваемом примере начальное значение периода доставки – 240 минут)

Автомат заменяется новым автоматом с таким же количеством напитков. Стоимость доставки одного напитка – 1$. Стоимость самого автомата –1000$.

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

Стоимость одного напитка составляет $ 2.50. Если напитки в автомате кончаются, то фирма теряет 100$ в минуту. Если автомат обновляется слишком часто, то фирма также оказывается в невыгодном положении.

Необходимо найти оптимальную модель работы автоматов, так чтобы прибыль от продажи была максимальной.

 

1. Структура модели рассматриваемой задачи выглядит следующим образом:

Рисунок 1. Структура рассматриваемой модели

 

2. Добавим в рассматриваемую модель блок Optimizer(библиотека Value).

3. Необходимо определить вид целевой функции. Согласно условию задачи, целью является максимизация прибыли. Факторы, которые влияют на прибыль:

- стоимость напитков (1$ за банку + 1000$ за автомат);

- выручка за продажу напитка (2,5$ за банку);

- убыток по неудовлетворенному спросу (100$ в минуту).

Используя эти данные, можно вывести формулу целевой функции:

 

MaxProfit = $2.50*#sold - #deliveries*($1000 + #drinks*$1.00) - time empty * $100

4. Добавим в модельварьируемыепеременные (#sold, #deliveries, #drinks, time empty).

#sold– количество проданных напитков. Чтобы добавить переменную в блок Optimizer, необходимо выполнить следующие действия:

- открыть блок HoldingTankпод названием TotalSales;

- используя инструмент CloneLayertool, перетащить значение параметра Currentlevelна блок Optimizer;

- когда блок Optimizerвыделиться черным цветом, отпустить мышку.

 

Рисунок 2. Добавление переменной #soldв блок Optimizer

 

#deliveries– время междудоставками. Чтобы добавить переменную в блок Optimizer, необходимо выполнить следующие действия:

- открыть блок LookupTableпод названием Fillertruck;

- используя инструмент CloneLayertool, перетащить значение параметра Repeattableeveryна блок Optimizer;

- когда блок Optimizerвыделиться черным цветом, отпустить мышку.

#drinks– количество напитков в одном автомате. Чтобы добавить переменную в блок Optimizer, необходимо выполнить следующие действия:

- открыть блок LookupTableпод названием Fillertruck;

- используя инструмент CloneLayertool, перетащить таблицуна блок Optimizer;

- когда блок Optimizerвыделиться черным цветом, отпустить мышку.

timeempty– общее время простоя (отсутствия напитков в автомате). Чтобы добавить переменную в блок Optimizer, необходимо выполнить следующие действия:

- открыть блок HoldingTankпод названием Emptytime;

- используя инструмент CloneLayertool, перетащить значение параметра Currentlevelна блок Optimizer;

- когда блок Optimizerвыделиться черным цветом, отпустить мышку.

Открыв диалоговое окно блока Optimizerмы увидим примерно следующее:

 

Рисунок 3. Переменныев блоке Optimizer

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

- откройте диалоговое окно блока Optimizer;

- для первой переменной (Totalsales)устанавливать ограничения не нужно. Переименуем имя переменной с Var0на numSold;

- длявторойпеременной (FillertruckRepeat_prm) установимзначениеMinimumLimit– 30 минут, MaximumLimit – 480 минут. Переименуем имя переменной с Var1на deliveryTimes;

- длятретьейпеременной (FillertruckRepeat_prm) установимзначениеMinimumLimit–1000 напитков, MaximumLimit –8000 напитков. В столбце Row,Columnукажем значение 0,1 (номер ячейки). Переименуем имя переменной с Var2на delTankSize;

- для четвертой переменной (Totemptytime) устанавливать ограничения не нужно. Переименуем имя переменной с Var3на emptyTime.

В результате должно получиться нечто подобное:

 

Рисунок 4. Ограничения для переменных

 

6. Введем формулу целевой функции.

Ранее была приведена формула целевой функции.

 

MaxProfit = $2.50*#sold - #deliveries*($1000 + #drinks*$1.00) - time empty * $100

Единственная переменная, которая явно не определена - #deliveries(количество доставок). Ее можно найти, используя переменную deliveryTimes, следующим образом:

 

#deliveries = int((endTime-1)/deliveryTimes + 1)

Теперь можно ввести формулу целевой функции. Для этого:

- удалим текущее выражение целевой функции (MaxProfit = Var0 + Var1 + Var2);

- объявим новую переменную, обозначающую количество доставок:

IntegernumDeliveries;

- снизу введем выражение для вычисления количества доставок:

numDeliveries = int((endTime-1)/deliveryTimes + 1);

- введем целевую функцию:

MaxProfit = 2.50*numSold–numDeliveries * (1000.0 + delTankSize * 1.00) - emptyTime*100;

Результат должен выглядеть следующим образом:

 

Рисунок 5. Целевая функция

 

7. Запуск оптимизации.

- откроем вкладку RunParameters. Так как модель имеет случайный характер нажмем на кнопку QuickerDefaultsв секцииRandomModel.

- запустим вычисления нажав на кнопку NewRun.

По результатам вычислений открывается окно результатов:

 

Рисунок 6. Окно результатов

 

Исходя из окна результатов получаем значения:

- максимальная выручка – ок. 11000$;

- размер автомата – 5579 шт.;

- время между доставками – 272 мин.

 

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

 

Отчет выполненной лабораторной работы должен содержать:

1. Титульный лист с указанием варианта лабораторной работы;

2. Цель и задание лабораторной работы;

3. Структуру моделируемой системы;

4. Вывод формулы целевой функции;

5. Результаты моделирования;

6. Выводы по работе.

 

Контрольные вопросы

1. Основные достоинства и недостатки моделирования в среде ExtendSim.

2. В чем заключается сущность численной оптимизации?

3. Назовите блоки, которые использовались в вашей модели. Для чего они используются?


 


Список использованных источников

1. ExtendSimUserGuide: программная документация среды ExtendSim – SanJose, CA 95119 USA. – 2007 г. – 1175 с.

 

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 207.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...