Технологія обєктно-орієнтованого програмування в проектуванні

27.07.2015

Розділи сайту
Публикационная активність

(відомості за підсумками 2013 р.)

Імпакт-фактор РИНЦ: 0,235

2-річний імпакт-фактор РИНЦ: 0,325

2-річний імпакт-фактор РИНЦ без самоцитирования: 0,259

Новини

Технологія обєктно-орієнтованого програмування в проектуванні

Технологія об’єктно-орієнтованого програмування в проектуванні інтелектуальної системи підтримки диспетчера

Розмір шрифта: Шрифт:

Підвищення ефективності діяльності гірничого підприємства вимагає якісно нового підходу до постановки задач прийняття рішень в оперативно-диспетчерське управління (ОДУ). Як показує досвід проектування автоматизованих систем оперативно-диспетчерського управління (АСОДК), в даний час найбільш перспективним є включення в контур управління експертних систем, що дозволяють підвищити інтелектуальний рівень прийнятих рішень.

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

Інтелектуалізація ОДУ — проблема з багатьма аспектами, в числі яких знаходяться традиційні для штучного інтелекту завдання, інваріантні по відношенню до області застосування (підтримка прийняття рішень, взаємодія з користувачем на природній мові і т.п.).

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

— розроблено метод опису ситуацій, що дозволяє структурувати сутності предметної області в базі знань;

— створено алгоритм застосування діагностичних знань для автоматичної ідентифікації ситуації на ПЕОМ.

Ці завдання могли бути вирішені за допомогою методів штучного інтелекту з використанням відповідного програмного інструментарію — оболонок ЕС, або мов представлення знань. Однак застосування подібних засобів ускладнюється специфікою обговорюваної предметної області: необхідністю роботи в реальному масштабі часу, великим обсягом знань і обмеженістю обчислювальних ресурсів, наявних в контурі управління.

Це зумовило застосування структурних елементів опису, що пропонують порівняно низький рівень абстракції знань, а саме — причинно-наслідкових дерев з затримками за часом, названих авторами деревами знань (ДЗ).

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

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

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

1. Аналіз значення об’єкта

Р * V ± е a Si, (1)

де Si — идентифицируемое подія;

Р — значення об’єкта(технологічного параметра);

V — величина, з якою порівнюється значення Р;

* — предикатный символ ( = ,>>=,<,< — );

е — припустима помилка неузгодженості, що визначає впевненість у тому, що ситуація (подію) може бути розпізнана.

Завдання, значення «е» пов’язане з визначенням ступеня приналежності jjl(Si) для нечіткої множини Sm на шкалі [0,1]. Іншими словами, «е» є функцією відображення Si на інтервалі [0,1], тобто

е: Si a [0,1] = μSm(Si), (2)

де Si — деяка распознаваемая ситуація,

Sm — еталонна (повністю відома і описана) ситуація з бази знань.

З урахуванням (2) можлива обробка нечіткої (числовий, так і лінгвістичної) інформації шляхом введення в ДЗ відповідних вузлів — отже, з’являється можливість аналізу стану гірничо-технологічних об’єктів в нечітких умовах середовища функціонування.

З допомогою вузла 1-го типу можна записати правило:

ЯКЩО значення об’єкта Р досягло (перевищило та ін. в залежності від предикатного символу) деякої величини V з точністю е, ТО має місце подія Si.

2. Аналіз зміни значення параметра

dP/dt * V ± е a Si, (3)

де dP/dt — зміна значення технологічного параметра Р за час dt.

Наведене висловлювання (3) означає, що у вузлі 2-го типу може міститися правило вигляду:

ЯКЩО значення технологічного параметра Р за час dt змінилося на деяку величину V з точністю е, ТО має місце подія Si.

3. Аналіз взаємозв’язків параметрів

Рк * aP1 + b ± е > Si, (4)

де Рк — значення залежного технологічного параметра;

P1 — значення незалежної технологічного параметра;

а — коефіцієнт регресії;

b — вільний член рівняння регресії.

Наведене висловлювання (4) означає, що у вузлі 3-го типу може міститися правило:

ЯКЩО значення технологічного параметра Рк змінюється у відповідності з лінійною залежністю від параметра Р1 з коефіцієнтами а, Ъ і точністю е, ТО має місце подія Si.

4. Аналіз діалогової інформації

«?» a Si, (5)

де «?» — запит оператора відсутньої інформації.

Висловлювання (5) означає, що подія Si (a також подальше просування по ДЗ) визначається оператором. Введення події 4-го типу викликано відсутністю технологічної ЕОМ ряду важливих для аналізу ситуації параметрів та іншої інформації. При обробці події 4-го типу система видає запит оператору, який передбачає відповідь у письмовій формі (так/ні/ не_знаю) і визначає шлях подальшого просування по ДЗ.

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

Отже, запропонована ‘ модель опису .предметної області діяльності диспетчера’ у вигляді дерев знань.

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

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

Модель подання знань наведена на малюнку 1. Об’єкт MANAGER управляє деревами, що описують роботу різних під- • систем. Кожне дерево — це окремий алгоритм аналізу ситуацій, пов’язаних з технологічними ознаками, причому ДЗ — це бінарне дерево, в кожній вершині якого міститься певна умова. Кореневі вершини є вихідними точками для піддерев (подалгоритмов) ДЗ. Вершини чотирьох типів описані вище.

Технологія обєктно-орієнтованого програмування в проектуванні

Рис. 1. Модель подання знань у вигляді дерев знань (ДЗ)

Структура ДЗ на основі ООП представлена на малюнку 2. У ній відображені об’єкти сутність-атрибут-зв’язок. Між сутностями вказані два види зв’язків: обов’язкова, яка позначається —ß, і необов’язкова (факультативна) — —ß, На кінцях зв’язків вказані зазначені асоціації сутностей.

У даній моделі MANAGER, який є сутністю верхнього рівня ієрархії, утворює обов’язковий зв’язок з сутністю TREE (тобто жодне дерево не існує без зв’язку з менеджером). У свою чергу TREE має два обов’язкових атрибути: покажчик на корінь дерева і число вершин дерева. З схеми видно, що вузли ROOT, FIRST, SECOND, THIRD, FOURTH обов’язково пов’язані з сутністю BASE успадковують її властивості і ознаки. Сутність TREE є «інше» BASE, тобто всі функції класу TREE мають доступ до закритої частини класу BASE. Крім цього, показано, що кореневий вузол (родоначальник піддерева ДЗ) повинен бути вузлом першого типу, а вузол першого типу може не бути кореневою вершиною. Вузли різних типів, наслідуючи ознаки та атрибути базової сутності BASE, також мають тільки їм властиві атрибути. Кореневий вузол ROOT, будучи по суті вузлом FIRST і наслідуючи його властивості, повинен додати свій атрибут — час виконання подалгоритма ДЗ.

Кожна використовується у процесі управління послідовність дій при аналізуванні ситуацій являє собою окремий об’єкт, властивості якого елемента класу представлені в БЗ. Таким чином, з допомогою поняття «об’єкт» описуються ситуації, об’єднані в логічні послідовності та атрибути (ідентифікуючі дані ситуації), властиві цьому об’єкту. У результаті об’єкт TREE стає носієм інформації про значеннях атрибутів, що відображає набір експертних правил.

Розробивши відповідний алгоритм аналізу ситуації (дерево), когнитолог заповнює БЗ, тобто створює об’єкт TREE в БЗ. Для об’єкта визначається:

— номер або ім’я об’єкта, по якому до нього можна звернутися;

— кількість вершин у дереві.

Крім того, кожному об’єкту (дереву, вузла) надається певний набір процедур, які запам’ятовуються в БЗ і дозволяють виробляти ті чи інші дії над об’єктом. Згідно з цими процедурами і функціями здійснюється створення, редагування, завантаження, видалення, збереження об’єкта, а також його обробка: сканування дерева, розкриття вершин (рис. 3).

Технологія обєктно-орієнтованого програмування в проектуванні

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

У цій моделі використовуються об’єкти:

Технологія обєктно-орієнтованого програмування в проектуванні

— безліч завдань або підсистем,

N = — безліч, в якому дані сформовані за завданнями з безлічі Т і містяться у вузлах ДЗ: кореневому, першого, другого, третього і четвертого типів.

Технологія обєктно-орієнтованого програмування в проектуванні

безліч процесів j-ro логічного виведення дерева знань, t – часовий фактор.

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

Інтелектуальна об’єктно-орієнтована система підтримки диспетчера реалізована на мові програмування С++ у вигляді додатку Windows 3.1 і призначена для установки на ПЕОМ типу IBM PC AT.

Короткий опис статті: об’єктно орієнтоване програмування

Джерело: Технологія об’єктно-орієнтованого програмування в проектуванні інтелектуальної системи підтримки диспетчера

Також ви можете прочитати