Опубликован: 15.02.2013 | Доступ: свободный | Студентов: 256 / 0 | Длительность: 16:52:00
ISBN: 978-5-9556-0146-5
Лекция 7:

Модель функционирования предприятия

Модель функционирования предприятия в AnyLogic

Формализованное описание

Модель, исходя из структуры предприятия (см. рис. 6.1), должна состоять из следующих сегментов:

  • ввода исходных данных;
  • имитации работы цехов по изготовлению блоков;
  • имитации работы постов контроля блоков;
  • имитации работы пунктов сборки изделий;
  • имитации работы стендов контроля собранных изделий;
  • имитации работы пунктов приема изделий;
  • имитации склада готовых изделий;
  • имитации склада бракованных блоков;
  • вывода результатов моделирования.

Блоки и изделия в модели следует имитировать заявками со следующими полями (параметрами):

  • block - номер цеха (коды 1…4 соответственно), выпустившего блок;
  • sign1 - признак брака на постах контроля блоков, стендах контроля изделий и на пунктах приема изделий;
  • numBlBrak1 … numBlBrak4 - признаки забракованных блоков 1…4 соответственно;
  • timeSbor - время сборки изделия (замены блоков);
  • cost - стоимость готового изделия.

Указанные поля предназначены для отслеживания технического состояния блоков и изделий и в зависимости от этого прохождения их по фазам изготовления изделия.

Поле timSbor введено для удобства построения модели. В это поле заносится либо время сборки изделия из четырех блоков, либо время замены каких-либо забракованных блоков в уже собранном изделии.

Стоимость изготовления изделия может возрасти по сравнению с минимальной стоимостью (CMIN) за счёт выявления брака и замены блоков. Для фиксации этой стоимости введено поле cost.

Для обеспечения работы модели вводятся следующие параметры процесса изготовления изделий из блоков:

  • aveTimeShop1…aveTimeShop4 - средние интервалы времени выпуска блоков 1…4 цехами 1…4;
  • stKomplBlock1…stKomplBlock4 - стоимости комплектующих блоков 1…4;
  • stIzgBlock1…stIzgBlock4 - стоимость изготовления блоков 1…4;
  • postKontr1…postKontr4 - количество постов контроля блоков 1…4;
  • procBrakBlock1…procBrakBlock4 - проценты брака блоков 1…4 на постах контроля блоков;
  • stTestBlock1…stTestBlock4 - стоимости тестирования (одного блока) блоков 1…4;
  • kolPunSborki - количество пунктов сборки изделий;
  • timeSborki - среднее время сборки одного изделия;
  • stSborki - стоимость сборки одного изделия;
  • kolStendKontr - количество стендов контроля собранных изделий;
  • timeKontrIzd - среднее время контроля на стенде одного собранного изделия;
  • procBrakIzd - процент брака собранных изделий на стендах контроля;
  • stKontrIzd - стоимость контроля на стенде одного собранного изделия;
  • verBlock1 - вероятность того, что забракованным в уже собранном изделии окажется один блок;
  • verBlock2 - вероятность того, что забракованными в уже собранном изделии окажутся два блока;
  • verBlNum1…verBlNum4 - вероятности брака на стенде контроля блоков 1…4;
  • timeZamBlock1…timeZamBlock4 - среднее время замены (одного блока) блоков 1…4;
  • stZamBlock1…stZamBlock4 - стоимость замены (одного блока) блоков 1…4;
  • kolPunPriem - количество пунктов приема изделий, прошедших пункты контроля;
  • timePriemIzd - среднее время приема одного изделия;
  • procBrakPriem - процент брака изделий на пунктах приема изделий;
  • stPriemIzd - стоимость приема одного изделия.

В ходе моделирования на основе приведенных исходных данных формируется и выводится на текущее модельное время следующая информация:

  • kolIzBlock1…kolIzBlock4 - количество изготовленных блоков 1…4;
  • kolTestBlock1…kolTestBlock4 - количество протестированных блоков 1…4 (как исправных, так и забракованных);
  • brakBlock1…brakBlock4 - количество забракованных на постах контроля блоков 1…4;
  • gotBlock1…gotBlock4 - количество изготовленных всего готовых блоков 1…4;
  • ostGotBlock1…ostGotBlock4 - количество оставшихся готовых блоков 1…4;
  • kolSobrIzd, testSobrIzd, brakSobrIzd - количество собранных на пунктах сборки изделий, проверенных и забракованных на стендах контроля;
  • kolPriemIzd, brakPriemIzd - количество принятых и забракованных приемкой изделий соответственно;
  • zamBlock1…zamBlock4 - количество замененных блоков 1…4, забракованных на стендах контроля и пунктах приема изделий;
  • allBrakBlock1…allBrakBlock4 - всего забракованных блоков 1…4;
  • minCostIzd - минимальная стоимость одного изделия;
  • minCostGotIzd - минимальная стоимость готовых изделий;
  • kolGotIzd - количество готовых изделий, отправленных на склад.

На текущее модельное время собирается статистика по следующим стоимостным показателям функционирования предприятия:

  • costKomplBlock1…costKomplBlock4,costKomplBlock - стоимости комплектующих блоков 1…4 и суммарная стоимость комплектующих всех блоков;
  • costIzgBlock1…costIzgBlock4,costIzgBlock - стоимости изготовления блоков 1…4 и суммарная стоимость изготовления всех блоков (без учета стоимости тестирования блоков);
  • CostBlock1…CostBlock4 - стоимости изготовления блоков 1…4 с учётом тестирования;
  • sumCostBlock1…sumCostBlock4, sumCostBlock - суммарные стоимости изготовления блоков 1…4 с учётом тестирования и суммарная стоимость изготовления всех блоков;
  • costTestBlock1…costTestBlock4,costTestBlock - стоимости тестирования блоков 1…4 на постах контроля и суммарная стоимость тестирования всех блоков;
  • costSborIzd, costTestIzd, costPriemIzd - стоимости сборки, проверки и приемки изделий;
  • costBrakBlock - суммарные затраты на все забракованные блоки;
  • costGotIzd - затраты на выпуск готовых изделий;
  • costBlockIzd - стоимость блоков одного изделия;
  • costIzd - стоимость одного изделия;
  • timeIzd - среднее время изготовления одного изделия;
  • koefIncrCostIzd - коэффициент увеличения себестоимости изделия.

Минимальная стоимость изделий будет тогда, когда не будет бракованных блоков и изделий. В терминах постановки задачи это условие имеет вид:

С_{min}=С_{minизд} \cdot N_{изд},

где N_{изд} - количество готовых изделий (поступивших на склад);

С_{minизд} - минимальная себестоимость производства одного изделия, вычисляется по формуле:

С_{изд}=\sum\limits_{i=1}^{nl}(C_{кi}+C_{изгi}+C_{прi})+C_{сб}+C_{к}+C_{п}

В случае наличия брака себестоимость производимой продукции увеличится и составит С_{max}. То есть коэффициент увеличения себестоимости будет равен

K_c=C_{max}/C_{min}

Запишем в идентификаторах исходных данных и результатов моделирования то же самое:

costBlock1=stKomplBlock1+stIzqBlock1+stTestBlock1;
costBlock2=stKomplBlock2+stIzqBlock2+stTestBlock2;
costBlock3=stKomplBlock3+stIzqBlock3+stTestBlock3;
costBlock4=stKomplBlock4+stIzqBlock4+stTestBlock4;
costBlockIzd=costBlock1+costBlock2+costBlock3+costBlock4;
C_{minизд}=costBlockIzd+stSborki+stKontrIzd+stPriemIzd;
C_{min=}C_{minизд} \cdot colGotIzd; C_{max}= costGotIzd+costBrakBlock.
K_c=koefIncrCostIzd=\frac{C_{max}}{C_{min}}
Замечание. В приведенных для расчета результатов моделирования выражениях мы не учитывали те блоки, которые были произведены, но не были использованы для сборки изделий.
Алексей Гроссман
Алексей Гроссман

Здравствуйте, прошел курс "Концептуальное проектирование систем в AnyLogic и GPSS World". Можно ли получить по нему сертификат? У нас в институте требуют сертификаты для создания портфолио.

Елена Блинаева
Елена Блинаева