Анализ функций управления ресурсами ИП позволил выделить объекты и спроектировать классы с учетом их устойчивости по отношению к изменениям. В соответствии с методологией объектно-ориентированного проектирования идентифицированы связи между классами в рамках функций управления ресурсами ИП. Выявление существующих связей между классами позволило их спроектировать с учетом свойств стабильности и обеспечить адаптируемость системы. Применение интерфейсов для взаимодействия компонентов подсистем обеспечивает возможность устранения волновых эффектов при внесении изменений и возможность расширения функционала системы.
Представленные механизмы объектно-ориентированного проектирования позволяют вносить расширения в систему, наращивать функционал с учетом индивидуальных потребностей научных сообществ и изменчивости требований. Адаптируемость таких систем значительно сокращает сроки и стоимость внедрения в решении задач научных исследований, а также сокращает затраты на их эксплуатацию.
Литература
1. И.Н.Ефимов, С.Ж.Козлова, С.А. Жукова Концептуальные основы интеграции открытых виртуальных лабораторных комплексов. - Вестник ИжГТУ. - № 3, 2011
2. Иванов Д. Ю. и Новиков Ф.А. "Моделирование на UML. Теория, практика, видеокурс". -Профессиональная литература, Наука и техника. - 2010. - с. 640
3. Арлоу, Нейштадт. UML 2 и Унифицированный процесс: практический объектно-
ориентированный анализ и проектирование. - Символ-Плюс, 2-е изд. - 2007. - с. 624
УДК 6581.512
ИНТЕЛЛЕКТУАЛЬНАЯ ОБЪЕКТНО-ОРИЕНТИРОВАННАЯ ИМИТАЦИОННАЯ МОДЕЛЬ ПРОИЗВОДСТВЕННОЙ СИСТЕМЫ
Новиков Николай Иванович, к.т.н., доцент, Уфимский государственный авиационный технический университет, филиал в г. Кумертау, Россия, Кумертау, oka novikov@mail.ru
Автоматизированные механообрабатывающие участки являются сложными системами, включающими разнородное технологическое оборудование, транспортноскладские системы и др. Влияние различных внутренних и внешних возмущений, действующих на элементы механообрабатывающего участка затрудняет достижение проектных показателей.
Обеспечение устойчивости функционирования производственных систем в таких условиях является актуальной и сложной задачей.
В задачах повышения устойчивости функционирования производственных участков возникают проблемы как качественного, так и количественного характера. При традиционном изучении сложных систем, какими являются производственные участки, удельный вес качественных показателей преобладает. Использование имитационного моделирования для исследования функционирования производственных участков позволяет анализировать их с использованием количественных характеристик изменения процесса функционирования участков, вызванных различными возмущающими факторами.
Однако необходимо отметить, что постоянно возрастающая сложность производственных участков, слабая степень формализации организационно-технологических решений не позволяет исключить качественные оценки в задачах анализа и повышения устойчивости функционирования производственных участков.
Традиционные математические модели, используемые при организационнотехнологическом проектировании для группового производства, являются во многих случаях слишком жёсткими и не позволяют в полной мере учесть разнообразие факторов, влияющих на логику функционирования решений. Опыт и традиции производства при этом остаются вне рамок используемых моделей и учитываются лишь на стадии функционирования
98
производственной системы.
Одним из перспективных направлений в этой отрасли является объектноориентированный подход, заявленный как перспективная методологическая основа проектирования сложных систем преимущественно в области программного обеспечения. Объектно-ориентированный подход - это методология, основанная на представлении модели системы, состоящей из абстрактных объектов и объединяющих их отношений. Считается, что такая методология отражает особенности человеческого мышления и его способности к классификации для уменьшения сложности восприятия окружающего мира [1].
Имитационная модель производственной системы разработана на основе объектноориентированного подхода и методов искуственного интеллекта или так называемого экспертного подхода. Такой подход более предпочтителен по отношению к существующим, которые основаны на жестких алгоритмах.
Для создания адекватной модели реального механообрабатывающего участка в рамках объектно-ориентированного подхода при построении программного обеспечения системы моделирования применены специальные механизмы. Такие механизмы, объединяющие свойства фреймов и семантических сетей, и базирующиеся на фундаментальных понятиях объектно-ориентированного подхода, созданы в процессе исследований и используются в программном обеспечении системы моделирования [3].
При создании модели производственной системы вначале была разработана исходная имитационная модель, с помощью которой решались следующие задачи:
• формирование базы знаний экспертно-диагностической системы на основе обобщения результатов экспериментальных исследований и выявленных взаимосвязей:
• количественная проверка сформированной базы знаний.
Выбор экспериментального пути решения указанных задач определяется следующими обстоятельствами:
• необходимостью комплексного изучения процессов функционирования всей совокупности технологических процессов в производственной среде и невозможностью их описания в аналитической форме;
• необходимостью рассмотрения динамических и стохастических характеристик процессов функционирования технологических процессов в производственной среде и влиянием различных возмущающих факторов, имеющих вероятностный характер;
• недостаточным уровнем первоначальных знаний о функционировании системы и взаимосвязях основных параметров (понимание законов взаимодействия параметров системы приходит в процессе решения задачи путем получения дополнительной информации об исследуемом объекте на основе использования модели).
В связи с этим целесообразно привести мнение Дж. Фон Неймана о том, что для сложной системы «на порядок труднее рассказать, что объект может делать, чем сделать сам объект»
[2, c.75], «... быстрее привести схему, чем дать описание всех ее функций и всех мыслимых обстоятельств» [2, с.67].
При разработке рабочей имитационной модели производственной системы в основу была взята базовая имитационная модель, применяющаяся при проведении экспериментальных исследований.
Программирование на языке Smalltalk является по самой своей природе таким, что позволяет последовательно наращивать возможности создаваемого продукта, т.е. Smalltalk хорошо приспособлен к разработке моделей пошагового усовершенствования. Такое свойство имеет два важных следствия:
• происходит преднамеренное смешение ролей программиста и пользователя, поскольку для них используется одна и та же метафора;
• становится возможным внутренне перемешивать в принципе различные виды деятельности программиста: программирование и отладку.
99
Это означает, что пользователь программы постепенно сможет перейти от простого использования к модификации и расширению программы посредством такого же взаимодействия с системой.
Выполнение программы, разработанной на объектно-ориентированном языке, - это последовательное выполнение посылок сообщений объектам. Во время выполнения определяется, какой объект получил то или иное сообщение. В классе этого объекта ищется метод, соответствующий данному имени сообщения. Если метод найден, то он выполняется, если нет - ищется в суперклассе, и далее по иерархии до самого старшего класса Объект, описывающего общие свойства всех объектов.
Определение и программирование классов (объектов) системы проведено в
следующем порядке:
• выделен описываемый объект из множества объектов:
• определены свойства и связи этих объектов:
• определены диапазоны и характеристики изменения свойств и связей объекта (задание имен переменных класса и экземпляра);
• определены множества возможных методов поведения объекта (специфицирование поведения объектов данного класса);
• выполнено программирование методов, включая условия выполнения методов:
• выполнено тестирование на примере действующего участка.
Разработанное программное обеспечение имитационной модели состоит из 6 нижеуказанных основных классов, погруженных в объектно-ориентрованную среду SmаШalk:
• модель участка;
• продукция;
• ресурсы;
• стратегия;
• планировщик;
• окна просмотра системы планирования.
Взаимодействие объектов осуществляется под управлением объекта «Планировщик» путем посылки сообщений.
Для осуществления взаимодействия пользователя с системой был запрограммирован класс «Окна просмотра системы планирования» - графический интерфейс. Графический интерфейс предназначен для ввода и корректировки базы данных и знаний, отображения динамических состояний моделируемых объектов.
Перед началом моделирования пользователь подготавливает исходные данные по составу оборудования, режиму его работы на период моделирования с использованием окна «Оборудование» и «График работы». Оборудование в зависимости от специфики работы разделяется на: станки (механическая обработка), не механообрабатывающее (термическая, гальваническая обработка и др.). Для станков могут задаваться различные режимы работы.
В окне «Оборудование» имеется графическая интерпретация графика работы выделенного оборудования.
Информация о номенклатуре деталей, закрепленных за участком, задается при помощи окна «детали». С каждой позицией этого массива связан базовый технологический процесс и его варианты. Для конкретного планового периода из массивов: «детали», «технологические процессы» и «варианты технологических процессов» формируется конкретный рабочий массив.
Заключительном этапом подготовки исходной информации является задание параметров стратегий изготовления партий деталей.
Параметры стратегии изготовления партии деталей могут задаваться директивно или непосредственно пользователем. При этом задаются следующие параметры:
• начальная дата периода планирования;
100
• длительность периода моделирования;
• обозначение детали;
• номер партии конкретной детали;
• размер партии запуска детали;
• очередность запуска партий деталей в обработку;
• вид движения партий деталей;
• стратегия изготовления партии деталей;
• операция партии деталей, с которой начинается ее обработка;
• дата запуска партий деталей;
• операции технологического процесса конкретной партии деталей, которую планируется выполнить за период моделирования;
• срок окончания обработки партии деталей или операции.
Каждая партия деталей из заданной номенклатуры деталей может иметь свою стратегию изготовления. Для задания стратегии изготовления конкретной партии деталей предназначено «Окно стратегии».
По результатам анализа характеристик функционирования производственного участка стратегия может быть модифицирована и снова может быть проверена путем повторной имитации функционирования производственного участка.
При помощи указанного окна задаются следующие параметры для партии деталей:
• вид движения партий деталей (в системе предусмотрены следующие виды движения: последовательный, параллельный, смешанный);
• транспортная партия деталей (применяется при параллельном виде движения партии деталей);
• критерий выбора рационального варианта из множества возможных, в системе предусмотрено два критерия:
• минимальное пролеживание партии деталей и минимальное время завершения операции;
• замена базовой операции на альтернативную из возможного множества (имеется два режима: разрешается/запрещается замена операций);
• изменение технологического маршрута в случае невозможности реализации базового (имеется два режима: разрешается/запрещается замена операций);
• специализация рабочих мест-в системе предусмотрено два режима:
• разрешается/запрещается специализация рабочих мест;
• дробление партии запуска (имеется два режима: разрешается/запрещается дробление);
• предельное время ожидания (пролеживания) партии деталей перед рабочим местом, при превышении которого производится поиск альтернативных решений;
• коэффициент, отражающий относительные затраты на реализацию мероприятия (изменяются от 0 до 100).
Для визуализации результатов моделирования в системе запрограммировано несколько окон, например: график запуска-выпуска партий деталей, график движения партий деталей по рабочим местам, график движения выделенной партии деталей по рабочим местам, график загрузки выделенного станка и др., позволяющие пользователю анализировать результаты моделирования, выявлять узкие места и принимать решения по их устранению и проверять принятые решения.
При имитации функционирования производственного участка принятие решения о закреплении операции за рабочими местом осуществляется в соответствии с критерием (предельное время пролеживания партий деталей и минимальное время завершения). В случае, если фактическое время выполнения операции превышает заданное предельное значение, то производится поиск решений по локализации отказа.
Результаты моделирования отображаются в окне «график запуска-выпуска», при этом можно просматривать следующие параметры:
101
• обозначение детали прошедшей моделирование;
• количество деталей к запуску в обработку;
• номер партии и подпартий деталей;
• номер операции, с которой начинается обработка партии деталей;
• дата запуска партий и подпартий деталей в обработку;
• номер операции технологического процесса, которая выполнена последней в период моделирования;
• заданный срок окончания обработки партии детали;
• отклонение от заданного срока выпуска;
• суммарное время пролеживания партии детали.
В системе имеется также возможность отображения на экране монитора графика движения партий деталей по рабочим местам.
Для расширения возможностей системы при анализе ситуаций введено окно просмотра плана, позволяющее просматривать на экране монитора движение партий деталей по рабочим местам в табличной форме.
В окне также отмечаются места пролеживания партий деталей путем специальной метки.
В распоряжении пользователя имеется возможность упорядочивать график движения партий деталей по следующим признакам:
• по порядку поступления партий в обработку;
• по времени обработки партии по операциям;
• сортировка по группам оборудования.
«Окно обработки партии» предназначено для отображения на экране монитора графика движения конкретной партии деталей по рабочим местам в табличной форме.
В окне обработки партии деталей представляются следующие параметры:
• обозначение детали, для которой отображается движение партий деталей по рабочим местам;
• номер партии деталей, для которой отображается движение партии деталей по рабочим местам;
• номер операции технологического процесса;
• модель оборудования, за которым фактически была закреплена операция в процессе моделирования;
• время начала выполнения операции;
• время окончания выполнения операции;
• длительность выполнения операции на указанном оборудовании.
В окне предусмотрена возможность упорядочения массива:
• по времени начала операции технологического процесса;
• по порядку операций технологического процесса;
• по длительности обработки партий деталей.
Важнейшей особенностью созданной системы моделирования является применение эвристических знаний эксперта в качестве основной информации при описании объектов и имитации функционирования производственной системы. При разработке концепции системы моделирования учитывалось то, что роль эвристических знаний эксперта очень велика и практически невозможно предложить строгие алгоритмы принятия решений во всем многообразии возникающих производственных ситуаций. В связи с этим можно говорить лишь об использовании эвристик-правил поведения или действиях на основе анализа небольшого множества данных (фактов).
Организация процессов логического вывода на базе таких правил и является основой выработки решений экспертно-диагностической системы. В составе программного обеспечения системы моделирования используется процедурная компонента, осуществляющая логический вывод на основе базы правил, аккумулирующей эвристические
102
знания эксперта над базой данных вида сети фреймов, хранящей информацию о состоянии и поведении объектов производственной системы.
Листинг правила системы моделирования приведен на рисунке 1.
«Перевод объема работ с подгруппы стФрезЧПУ на другой участок в случае перегрузки»
< стЧПУ> # ГруппаОборудования
лфрейм имя Группы =#СтЧПУ;
ЭфПринСтЧПУ: =лфреймэфФондПрин1;
< стФрезЧПУ> # ПодгруппаОборудования
лфрейм имя =#СтФрезЧПУ; мПринФрезЧПУ: =лфрейм эфФондПрин.
< стФрезУнив> # ПодгруппаОборудования
лфрейм имя =#СтФрезУнив; мПринФрезУнив: =лфрейм эфФондПрин.
< план> # План фреймПлана:= лфрейм:
лфрейм имя =# ПланГода;
мПотрФрезУнив: =лфрейм текущаяТрудоемкостьПо: #фрезУнив: мПотрФрезЧПУ: =лфрейм текущаяТрудоемкостьПо: #фрезЧПУ:
«Если перегрузка менее 5% , то нет смысла применять правило»
{((мПотрФрезЧПУ - мПринФрезЧПУ)*100/ мПринФрезЧПУ) > 5);
«Если подгруппа стФрезУнив не имеет резерва свободной мощности, то проверить -применялись ли правила R8, R1, R2, R22 »
1.05*(мПринФрезУнив - мПотрФрезУнив) < (мПотрФрезЧПУ - мПотрФрезЧПУ) оМощФрезЧПУ: = ((мПринФрезЧПУ - мПотрФрезЧПУ) abs): кО: =(оМощФрезЧПУ// эфПринСтЧПУ) +1: кО1: =(оМощФрезЧПУ// эфПринСтЧПУ) :
«кО - требуемое число станков»
мПринФрезУнив мПринФрезЧПУ мПотрФрезУнив фреймПлана мПотрФрезЧПУ оМошФрезЧПУ кО кО1 оМФрез кМО фреймМ оМБ dMS oFlaq эфПринСтЧПУ stalk {оМФрез:=0. oFlaq:=0 оМ1:= nil.
[оМФрез > 0 and: [оМФрез < 1000]]
whileFalse: [оМФрез: = Promter promt: 'имеется ли возможность
использовать \ ', ' стФрезЧПУ другого участка и в каком объеме ?:
'printStrinq defaultExpression: '000.00'. (оМФрез < O оR:[оМФрез > 1000]) ifTrue : [Informate messaqe 'укажите объем в пределах 0...10000)
withers backColor: 12]. if False : [(оМФрез=0)
if True: [оМ1:=Promter promt: имеется ли возможность
использовать \' , ' стФрезЧПУ другого участка-купить. Взять, взять в
аренду?: printStrinq defaultExpression
ifFalse: [oMS: = 'снять объем и передать другому ', 'участку'.
оМ1=' нет'. dms: оМФрез.].].]
"оМ1 =nil -нет вариантов: оМ1 = 'да' - аренда: оМ1='нет' -передача''
(оМ1) =nil - «нет вариантов» ifTrue : [фреймМ=кBase создать мероприятие.
фреймМ название: ('правило не сработало' ):]
ifFalse: [(оМ1='да ') "аренда или покупка"
ifTrue:[фреймМ:=кBase создать мероприятие. фреймМ название : ('необходима аренда или покупка'.]
ifFalse: ['возможен перевод их в др.участок ' .
фреймМ название :('перевод работ с ФрезЧПУ на другой участок'):
изменениеФрейма: фреймПлана
свойство : #коррТрудоемкости
ключ: #фрезЧПУ
изменение: оМ1 neqated:
сообщение: 'перенести объем работ на ' , оМ1 printStrinq,
'н/ч с стФрезЧПУ в ' , ' другой цех (участок)' ]]}
modify < план> Лфрейм: = фреймПлана. make # Мероприятие Лфрейм:=фреймМ.
Рис.1 - Листинг правила имитационной модели производственной системы
В результате исследований разработана интеллектуальная система моделирования производственной системы, основанная на знаниях.
103
При разработке экспериментального образца имитационной модели производственной системы, основанной на знаниях, для сокращения длительности процесса создания и доработки программного обеспечения использован объектно-ориентированный подход к анализу и программированию. Это позволило значительно сократить сроки разработки и отладки модели, привлечь пользователя к созданию базы знаний имитационной модели на ранних стадиях создания модели.
Литература
1. Буч Г. Объектно-ориентированное проектирование с примерами применения: Пер. с англ.-М.: Конкорд, 1992.-519 с.
2. Нейман Дж.фон. Теория самовоспроизводящихся автоматов. - М.: Мир,1971 - 425с.
3. Новиков Н.И., Новиков В.Н. Применение имитационных моделей и экспертных систем при разработке производственных графиков // Казанская наука. Сборник научных статей. № 9 Вып.1. -Казань: Изд-во Казанский Издательский Дом, 2010.-С.186-190.
УДК 681.3
СИСТЕМА ПОДДЕРЖКИ РЕШЕНИЙ ПРИ ОРГАНИЗАЦИИ ГРУППОВОГО
ПРОИЗВОДСТВА
Новиков Николай Иванович, к.т.н., доцент, Уфимский государственный авиационный технический университет, филиал в г. Кумертау, Россия, Кумертау, oka novikov@mail.ru
Важнейшим направлением повышения эффективности машиностроительных предприятий с мелкосерийным и серийным типом производства является применение групповой обработки, что обеспечивает высокую производительность и гибкость производства.
Однако опыт применения групповой обработки в производстве показал, что часто потенциальные возможности этого подхода к организации подготовки и управления производством реализуются недостаточно полно. Анализ причин низкой эффективности групповых производств позволяет выделить следующие причины:
1. Жёсткая централизация процесса подготовки группового производства
(группирование деталей, проектирование групповых технологических процессов изготовления деталей и управляющих программ для станков с ЧПУ, распределение детале/операций за рабочими местами), что приводит к тому, что решения, принятые на верхнем уровне, являются неточными и недостаточно полно учитывают особенности конкретных производственных условий, ориентированы на усреднённые условия производства.
2. Ограниченный («узкий») взгляд на систему проектирования и групповые технологические процессы, предусматривающий в основном решение вопросов точности и качества; вопросы реализуемости спроектированных групповых технологических процессов, вопросы проектирования технологических процессов в условиях неопределённости о производственной среде реализации технологических процессов практически не рассматриваются.
3. Отсутствие эффективных методов поддержки принятия решений на всех этапах жизненного цикла организационно-технологической подготовки группового производства. В существующих системах процесс принятия решений жёстко фиксирован. Системы проектирования не позволяют оперативно проводить изменения исходных организационно-технологических решений в связи с изменившимися условиями производства, а ориентированы на фиксированные состояния.
4. Системы поддержки принятия решений при организации группового производства не позволяют осуществлять оперативный поиск в конкретной производственной
104