Агрегатний спосіб формалізації об’єкта моделювання

Тема 4

4.1. Основні поняття з теорії агрегатів. Узагальнена схема агрегату.

У процесі вивчення та моделювання деяких СС у їх побудові та функціонуванні можна помітити деякі типові специфічні особливості, серед яких:

- між ФД, які здійснюються над компонентами системи існує тісна взаємодія;

- вказані ФД можна досить легко апроксимувати математичними залежностями, які задаються у явному виді;

- кожну компоненту, яка рухається системою у процесі свого обслуговування (обробки), можна розцінювати як носій інформації про стан процесу;

- у процесі проходження компонент по системі вони обмінюються між собою інформацією у виді вхідних та вихідних сигналів;

- кожний вихідний сигнал від однієї компоненти є вхідним сигналом для іншої компоненти системи;

- існує можливість визначати момент появи вихідних сигналів компонент при наявності вхідних сигналів, що надходять від інших компонентів.

Якщо система, яка підлягає ІМД, у своїй побудові та функціонуванні має вказані вище ознаки, то створюються об’єктивні умови для її формалізації із застосуванням агрегатного способу.

За цим способом кожний з виділених модулів системи будується за уніфікованою структурою і називається агрегатом. Агрегат (рис.4.1)є математичною схемою, за допомогою якої стає можливим подання достатньо великого кола реальних процесів. Зазвичай кожен агрегат системи імітує своєю роботою певну функціональну дію , яка виконується у системі над окремими компонентами у ході технологічного процесу. У формалізованих схемах ОМ, призначених для процедур імітації, агрегати подаються схемами багатополюсників. Кожен агрегат має так звані вхідні полюси, куди надходять вхідні сигнали від інших агрегатів системи, і вихідні полюси, на яких формуються вихідні сигнали . У термінах агрегатного способу формалізації ОМ вхідні та вихідні сигнали для агрегату адекватні компонентам, які надходять на етап, де виконується , яку реалізує агрегат, та виходять з нього. Тут і означають номера відповідно вхідних і вихідних сигналів. Окрім того, кожний -ий агрегат має додатковий керуючий полюс, на який надходить керуючий сигнал . Формування керуючого сигналу здійснюється за рахунок роботи оператора керування , принцип роботи якого заснований на перевірці умов виконання алгоритму активізації агрегата. Під активізацією агрегату будемо розуміти перехід його у стан, який забезпечує виконання закріпленої за ним функціональної дії . Після імітації виконання цієї ФД відбувається операція пасивізації агрегата, тобто за командою оператора , агрегат переходить у стан очікування створення умов для виконання дії над наступним вхідним сигналом (компонентою). Забезпечення знаходження агрегата у тому чи їншому стані, а також виконання операцій зв’язування потрібного вхідного полюсу агрегата з його вихідним полюсом для передачі обробленого сигналу забезпечується за допомогою оператора переходу . Цей оператор дозволяє за попереднім станом, у якому знаходився агрегат, визначити його наступний стан. Взаємодія операторів та у процесі роботи агрегата наступна. Оператор організує керуючу команду переходу агрегату у відповідний стан, а оператор фіксує цей стан агрегату на період до моменту надходження нової керуючої команди. Таким чином, вихідні сигнали агрегату формуються з вхідних за допомогою керуючих сигналів оператора та виконання цих команд оператором .

ОПЕРАТОР

Керуюч.полюс Вх.полюс 1 Агрегат Aj Вих.полюс 1 Вх.полюс 2 Вих.полюс 2 Вх.полюс Вих.полюс Вх.полюс 2 Вх.полюс

Оператор H(t)

Рис.4.1. Узагальнена схема агрегату

Структура та зміст операторів та задаються розробником моделі у процесі апроксимації агрегатами ФД, які виконуються у реальній системі. У будь-який момент часу імітації процесу агрегат може знаходитися в одному з двох вказаних станів – активному чи пасивному. Стани агрегата є функціями модельного часу . Хронологію зміни станів агрегату у процесі моделювання системи називають фазовою траєкторією його роботи.

4.2. Агрегатний спосіб подання об’єкта моделювання

Частковим випадком описаних вище агрегатів є кусково-лінійний агрегат (КЛА), який не має керуючих сигналів. Як правило, КЛА подається у виді багатополюсника, у якого є вхідних і вихідних полюсів. На вхідні полюси приходять елементарні сигнали , а з вихідних полюсів знімаються вихідні сигнали . Зв'язки між виходами одних агрегатів і входами інших називаються каналами. Для агрегатної системи існує наступне обмеження: по кожному каналу може передаватися тільки один сигнал, який є вихідним для одного агрегату і вхідним для іншого. Нижче розглядаються особливості організації квазипаралельного обслуговування агрегатів з боку КПМ

На рис.4.2 наведено блок-схему алгоритму взаємодії КПМ з ОМ, який подано агрегатами. Схему ОМ побудовано за структурою, яка наводилися у матеріалах практичного заняття №1 на рис.1.1.

Рис.4.2. Приклад об’єкта моделювання, формалізованого за допомогою

агрегатного способу

Побудова моделі виробничої дільниці з використанням агрегатів виконувалася за умови, що кожним агрегатом імітується робота окремого Вj. Індекси у позначеннях агрегатів ОМ відповідає нумерації верстатів на виробничій дільниці, за виключенням агрегату, робота якого імітує поведінку довкілля, звідки у ОМ надходять вхідні сигнали (заготівки для деталей обох типів). Усі вхідні та вихідні полюси агрегату пронумеровано двоелементними індексами, де - номер агрегату, полюси якого нумеруються, - номер агрегату, з якого надходять на даний вхідний полюс сигнали, - номер агрегату, на який виходять з даного вихідного полюсу сигнали. Так, наприклад, на схемі (рис.4.2) агрегат , який відповідає В2 на схемі ОМ, має один вхідний полюс , на який надходять сигнали з , і два вихідні полюси та . З першого з них вихідні сигнали (деталі І-го типу) надходять на (верстат В3), а з другого (деталі ІІ-го типу) – на (верстат В4).

Наступною підготовчою операцію з підготовки ОМ до формалізації за агрегатним способом є розробка засобів, за допомогою яких програмою моделювання буде здійснюватися формування маршрутів передачі сигналів між агрегатами системи. Такими засобами є дві матриці комутації каналів передачі сигналів – матриця комутації вхідних полюсів агрегатів та матриця комутації вихідних полюсів агрегатів. За допомогою вказаних матриць КПМ у процесі імітації створює конфігурацію каналів послідовної передачі сигналів між окремими агрегатами з входу системи на її вихід у залежності від типів сигналів та прийнятої технології їх обробки.

Структуру матриці подано табл.4.1, а матриці - табл.5.2.

Табл.4.1

Структура матриці

№ вхідного полюса № агрегату     ...
       
    0;1    
...        
     

Табл.4.2

Структура матриці

№ вихідного полюса № агрегату     ...
       
         
...        
     

Кількість стовпців матриці становить , тобто відповідає кількості вхідних полюсів того агрегату схеми, для якого вона є максимальною серед інших агрегатів. Кількість рядків у матриці відповідає кількості агрегатів, з яких складається система. Кожен рядок нумерується за номером відповідного агрегату системи. У комірках кожного -го рядку створеної матриці розташовані пари чисел . Число вказує на номер агрегату, з яким з’єднано вхідний полюс даного -го агрегату, якому належить цей рядок матриці. Друге число вказує на номер вихідного полюсу -го агрегату, з яким з’єднано вхідний полюс агрегату за номером даного стовпця. Наприклад, у табл.4.1 на перетині рядку „1” та стовпця „2” стоїть пара чисел (0;1). Це вказує, що другий вхідний полюс (стовпець „2”) агрегату (рядок „1”) має зв’язок з агрегатом (число пари є „0”), а саме – з його першим вихідним полюсом (друге число пари – „1”).

Структура матриці комутації вихідних полюсів агрегатів системи подібна до структури матриці . Кількість стовпців матриці становить , тобто відповідає кількості вихідних полюсів того агрегату схеми, для якого вона є максимальною серед інших агрегатів. Кількість рядків у матриці як у матриці становить . У комірках кожного -го рядку матриці розташовані пари чисел . Число вказує на номер агрегату, з яким з’єднано вихідний полюс даного -го агрегату, а число вказує на номер вхідного полюсу цього -го агрегату.

4.3. Приклад формалізації виробничої дільниці за агрегатним способом

У прикладі при формалізації виробничої дільниці будемо використовувати подання верстатів, які виконують операції обробки деталей, як КЛА. Формалізований опис таких агрегатів будемо здійснювати за допомогою використання методики керуючих послідовностей. Структуру дільниці, яку обрано як приклад, наведено у матеріалах практичного заняття №1. Схема зв'язків верстатів обробки деталей із застосуванням агрегатного способу імітації роботи дільниці наведено на рис. 4.2.

Агрегат моделює зовнішнє середовище і формує порядок надходження з нього вхідних сигналів (компонент) і -го типу, , у визначені моменти часу. Цей агрегат не має вхідного полюсу, оскільки його вихідні сигнали формуються за рахунок роботи його внутрішніх складових. Такими є два імітаційних оператора - та . Оператор відповідно до кількості типів сигналів, які проходять обробку на дільниці, має у своєму складі два модулі - та . Кожен модуль відповідає за генерування часових інтервалів між моментами надходження заготівок певного типу у реальній системі. Тривалості цих інтервалів обумовлені відповідними функціями розподілу , а також інтенсивностями та надходження заготівок деталей відповідно І-го та ІІ-го типу на вхід системи. Якщо припустити, що вхідні потоки заготівок для деталей кожного типу є найпростішими, то тоді середні значення становлять 1/ . Результатом роботи кожного модуля оператора є часовий ряд моментів надходження заготівок -го типу за обраний період моделювання . Тим самим на вході оператора створюються дві черги та із заготівок для деталей І-го та ІІ-го типу.

На оператор покладено функцію вибору заготівок певного типу з їх черг для проведення операцій їх обробки у системі. Ця операція здйснюється у ввідповідності до обумовлених значень імовірностей та .

З кожної сформованої у черги та оператор послідовно обирає новий вихідний сигнал для спрямування на , але його звернення до однієї або іншої черги відбувається випадковим чином з відповідними імовірностями або . Враховуючи раніш прийняту умову, що обидва вхідні потоки у систему заготівок І-го та ІІ-го типу мають найпростіший характер, то імовірність вибору оператором заготівки І-го типу з їх черги становить

,

а імовірність .

Обрані оператором за вказаним принципом вихідні сигнали обох типів з вихідного полюсу агрегату надходять на перший агрегат системи, який імітує роботу В1.

Агрегати імітують обробку деталей на верстатах системи. Кожний з цих агрегатів має у своєму складі два імітаційних оператори – оператор та оператор . Оператор відповідає за імітацію формування черги з деталей -го типу, які надійшли на -ий агрегат для обробки на ньому. Оператор для кожного сигналу -го типу формує часовий інтервали його затримки на агрегаті , що імітує тривалість проведення обробки цього сигналу. Значення формується випадковим чином за відомою функцією розподілу змінної . На рис.4.2 у прямокутнику кожного -го агрегату оператор позначено заштрихованим прямокутником.

Агрегат має один вхідний () і один вихідний ()полюс. Агрегат має один вхідний ()і два вихідних ( та ) полюси. Поява сигналів на полюсах і агрегату імітує передачу з В2 деталей відповідно І-го і ІІ-го типів для проведення завершальної операції їхньої обробки або на В3, або на В4. Агрегати і мають відповідно вхідні полюси і , а вихідних полюсів не мають, оскільки імітують закінчення виконання технології обробки деталей. Кожний з агрегатів має свою чергу заявок. Єдине правило дисципліни черг на вході кожного верстата було сформовані при складені змістовного опису ОМ і формулюється як: „першим прийшов – першим обслуговується”. Зовнішні зв'язки (канали) між вихідними та вхідними полюсами агрегатів формуються у ході процедури імітації за допомогою матриць та , структурна побудова яких була викладена у 4.2. У прикладі буде наведено тільки зміст даних матриць та надано коментарії щодо їх окремих елементів.

У прикладі матриця комутації вхідних полюсів агрегатів має тільки один стовпець, оскільки не один з агрегатів системи не має більше одного вхідного полюсу. Кількість рядків у матриці становить п’ять, оскільки схема має 5 агрегатів. Вид матриці наведено нижче:

.

Перший рядок матриці , який характеризує конфігурацію зовнішніх зв’язків вхідних полюсів містить пару нульових значень, оскільки взагалі не має вхідних полюсів. Другий рядок матриці характеризує зв’язки вхідних полюсів агрегату . Перший елемент („0”) з пари значень, які проставлено у другому рядку вказує на номер агрегату (), з якого надходить сигнал на . Другий елемент пари („1”) позначає номер вхідного полюсу , куди цей сигнал надходить. За таким же принципом заповнено інші комірки матриці .

Матрицю комутації вихідних полюсів агрегатів системи побудовано за подібним принципом. Її вид у нашому прикладі наступний:

Розглянемо принцип заповнення матриці , але спочатку – про її форму. Матриця має, як і попередня матриця п’ять рядків, оскільки система має п’ять агрегатів. Але у матриці є два стовпці, оскільки два – це число вихідних полюсів агрегату системи, який має їх найбільшу кількість серед інших агрегатів системи. Два вихідних полюси має агрегат .

Розглянемо зміст декількох рядків матриці . У першому рядку матриці міститься інформація про конфігурацію зв’язків вихідних полюсів агрегату . Він має один такий полюс. Тому пара елементів, яка стоїть на перетині першого рядку та другого стовпця має нульові значення („0;0”). Перша пара елементів у цьому рядку надає характеристику зв’язку першого (і єдиного) вихідного полюсу з іншими агрегатами. Перший елемент пари („1”) показує, що вихідний полюс з’єднано з агрегатом , а саме – з його першим вхідним полюсом (другий елемент пари – „1”). Тепер розглянемо принцип заповнення третього рядку матриці . Його зміст надає характеристику конфігурації зв’язків вихідних полюсів агрегату . Цей агрегат має два вихідних полюси, тому пари значень у його рядку не будуть містити подвійних нульових елементів. Перша пара – перший вихідний полюс - вказує, на те, що він з’єднаний з агрегатом (перший елемент пари – „3”), а саме з його першим вхідним полюсом (другий елемент – „1”). За таким же принципом у другій парі надано інформацію, що другий вихідний полюс з’єднаний з агрегатом (перший елемент пари – „4”), а саме з його першим вхідним полюсом (другий елемент – „1”). Нульові комбінації елементів пар, які містяться у четвертому та п’ятому рядках матриці , вказують на те, що агрегати та не мають вихідних полюсів.

Розроблені матриці та використовуються КПМ для передачі вихідних сигналів між агрегатами і вибору чергового агрегату для його активізації.

4.4. Узагальнена блок-схема алгоритму імітації ОМ, поданого агрегатами

Розглянемо приклад алгоритму взаємодії моделі системи, поданої агрегатами, з КПМ. Структуру блок-схеми алгоритму наведено на рис.4.3.

Структуру блок-схеми поділено на дві частини – формалізовану модель виробничої системи та КПМ, яка організує та обслуговує процес імітації. Модель системи складається з агрегатів . Канали, які поєднують агрегати показано потоковими стрілками, щоб відрізняти їх від зв’язків блоків алгоритму КПМ, які показано звичайними стрілками. Суцільною потовщеною лінією умовно показано канал обміну інформацією КПМ з агрегатами системи. Призначення каналу – синхронізація роботи окремих операторів керування з основним ядром КПМ. За командами КПМ оператори здійснюють операції активізації та пасивізації окремих агрегатів системи відповідно до подій, які у ній відбуваються.

Принцип роботи алгоритму полягає у наступному. Підпрограма (ПП) блоку 1 формує початкові стани агрегатів , у яких будуть виконуватися операції обробки сигналів у системі.


 
 
Рис. 4.3. Узагальнений алгоритм імітації об’єкта, формалізованого за агрегатним способом


Агрегати приводяться у стани активізації або пасивізації відповідно до умов, які задає дослідник на момент початку процедури моделювання, або які склалися у системі на момент закінчення попередньої процедури моделювання. Додатково у функції блока 1 входть процедура генерування множини вхідних сигналів (вхідних компонент), надходження яких до системи імітується за весь період моделювання . Уся ця множина сигналів певних типів створює чергу на вихідному полюсі агрегату . Ця імітаційна операція адекватна процесу створенню так званого “заділу” (заготовлення сировинних запасів) на вході реальної системи (припустимо, на складі сировини) для її роботи на протязі визначеного періоду моделювання . Блок 2 формує випадковим чином значення для сигналів -го типу, множину яких було сформовано блоком 1. Часові інтервали у блоці 2 формуються генератором випадкових чисел для сигналів -го типу за відповідною функцією розподілу даної часової змінної. Після генерації періодів для всіх сигналів, які було смодельовано блоком 1, у блоці 3 формуються часові ряди вхідних сигналів -го типу, що адекватно їх впорядкуванню у відповідні черги . З цих черг кожний сигнал буде надходити до системи для подальшої обробки за встановленими розробником правилами, які називаються дисципліною черги. Найпростіше з таких правил: “перший у черзі сигал надходить на обробку першим”. Можливі і інші правила встановлення дисципліни черги. Відповідає за дотриманням правил дисципліни черги, яка формується на вході кожного агрегату системи, та надходження сигналів з такої черги на обробку на агрегаті ПП блоку 4 алгоритму. Ця ПП працює сумісно з блоком 5. Блоки 4 та 5 у поєднанні виконують переіврку виконання умов створення особливих станів для кожного агрегату системи. У блоці у хронологічному порядку формуються списки черговості активізації та пасивізації всіх агрегатів системи. Якщо для агрегату існують умови його активізації, тобто існує можливість для прийому чергового вхідного сигналу -го типу, то він заноситься у список За цим списком послідовно керування агрегатом передається на його оператор . Цей оператор, який також знаходиться у блоці 4, за допомогою своєї команди керування активізує агрегат, який може прийняти черговий сигнал для обробки. Якщо для активізації агрегату не створено відповідних умов, то на нього від оператора надходить команда пасивізації, а сам він заноситься у список пасивізованих агрегатів (гілка “ні” блоку 5). Після проведення процедури активізації агрегату , він видаляється у блоці 4 зі списку агрегатів, які підлягають активізації. Виконання команди активізації сприймається також блоком 5, який за своєю гілкою “так” передає керування блоку 6. Цей блок виконує функції нарощування осі модельного часу на кожне нове значення періоду обробки чергового сигналу на -му агрегаті за фактом його активізації. Період формується у відповідному агрегаті за рахунок роботи блоку , який відповідає за генерацію заданим чином випадкових значень , і є неодмінною складовою кожного агрегату.

Зупинимося більш докладно на принципі формування списків агрегатів, які знаходяться у особливих станах, а також процедурі обробки таких списків КПМ.

Роботу алгоритму при виконанні вказаних операцій організовано за умови виконання наступних припущень:

- всі агрегати системи мають одну спільну часову координату, на якій як події зазначаються усі зміни їх особливих станів. Таку координату ми називали віссю модельного часу;

- ПП організації хронології зміни станів агрегатів по осі (блок 6) реалізує цю функцію за алгоритмом обчислення моменту появи наступного події за правилом . Тут - період обробки сигналу –го типу на -му агрегаті, а - подія, яка пов’язана із фактом завершення цієї обробки.

Вибір мінімального значення визначає номер того агрегату, який першим у даний момент повинен бути активізований. Номер цього агрегату стає початковим записом у списку агрегатів (блок 3), які підлягають активізації за часом . Одночасно з цим у блоці 6 відбувається перерахунок модельного часу . Потім КПМ у блоці 3 формує хронологічний список моментів активізації агрегатів. Після закінчення формування такого списку УПМ приступає до послідовного обслуговування алгоритмів активізації агрегаттів. Активізовані агрегати переходять у нові стани і формують відповідні вихідні сигнали. Агрегат, активізацію якого закінчено, переходить у список пасивізованих агрегатів за аналогічною хронологічною послідовністю. У списку пасивізованих він очікує наступного моменту своє активізації, повязаної з подією надходження наступного сигналу на його вхід через деякий проміжок часу . Вказані процедури виконуються циклічно за сформованими таким чином списками.

Після виконання усіх вказаних вище операцій (перевірка умов активізації – активізація – нарощування ), пов’язаних з імітацією обробки сигналу у агрегаті , керування передається на блок 7. У цьому блоці вміщено матриці комутації входів і виходів агрегатів системи. Завдання блоку 7 – спрямувати оброблені сигнали за маршрутами їх подальшого обслуговування у системі. Блок 8 алгоритму перевіряє умову закінчення списків активізованих або пасивізованих агрегатів у блоці 4. Спочатку перевіряється список активізованих агрегатів. Якщо він порожній, то виконується перехід на список пасивізованих агрегатів. Знову послідовно перевіряються умови їх активізації. Агрегати, для яких умови активізації з’явилися, обслуговуються КПМ за вказаними правилами. Тим самим списки активізованих та пасивізованих агрегатів у блоці 4 скорочуються і за деякий час моделювання мають вичерпатися. Якщо цей факт виникає до закінчення періоду моделювання , то КПМ може змоделювати надходження нових сигналів у систему (гілка “так” блоку 9). Якщо блок 9 зафіксує виконання умови закінчення процедури моделювання за параметром (гілка “ні”), то КПМ переходить до обчислення значень статистик моделювання, а потім закінчує процедуру моделювання.

Отже, узагальнюючи розглянутий приклад, можна виділити п'ять типових процедур, які використовуються в процесі роботи алгоритму імітаційного моделювання системи, яку формалізовано за агрегатним способом:

1. Початкова установка станів агрегатів.

2. Визначення моменту часу, у який відбудеться наступна подія в системі і номера агрегату, у якому відбудеться ця подія.

3. Визначення нового стану агрегату; формування множини вихідних сигналів у результаті активізації агрегату; фіксація нових станів всіх агрегатів системи.

4. Перевірка множини вихідних сигналів агрегатів і їх передача на наступні агрегати за скомутованими каналами.

5. Визначення нового стану агрегату, якого він набув в результаті надходження вхідного сигналу і формування його вихідного сигналу.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: