Автор: Пользователь скрыл имя, 16 Января 2013 в 13:20, реферат
Розглядаються особливості реалізації застосувань на основі адаптивної технології SmartBase та метод виведення наслідків із множини нечітких правил.
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД
«Київський національний економічний університет ім. Вадима Гетьмана»
Кафедра: Кафедра економіко-математичного моделювання
Реферат
з адаптивних
моделей в інтелектуальних
На тему:
«Швидке розроблення інтелектуальних додатків в адаптивній технології SMARTBASE»
Виконав:
Коляда Ю.В.
Київ 2012
Вступ
Автоматизація управління великими об’єктами рівня міністерств та відомств, створення програмного забезпечення яких має складну історію, вимагає нових підходів. Необхідність швидкого розроблення і впровадження системи, інтеграції існуючих застосувань, подолання недоліків алгоритмічного підходу (непристосованість до змін і оброблення слабко формалізованих знань, неефективність у застосуваннях логічного характеру), урахування реального характеру застосувань, їх часових і надійнісних аспектів, вимагає переходу до адаптивних технологій створення інформаційно-управляючих систем.
Адаптивні технології, крім традиційної гнучкості, набувають надзвичайно важливих нових властивостей, таких як інтелектуалізація процесів розроблення, функціонування і розвитку інформаційно-управляючих систем (ІУС), самоорганізованість, широке притягнення управлінського персоналу до розвитку ІУС; зручне, безперепрограмування, настроювання системи на застосування, зміни засобів реалізації, вимог до системи тощо.
Реалізація адаптивних технологій базується на комплексному застосуванні сучасних технологій проектування, програмування, штучного інтелекту і вимагає розв’язання низки проблем. Насамперед мова йде про програмну реалізацію застосувань на основі єдиного рішення. Оскільки логічні методи найбільш застосовані для протидії динаміці прикладних областей, то необхідно створити систему логік для проектування і управління застосуваннями, розв’язання класів проблем. Особливо важливим є використання ефективних механізмів зведення в логіку за умов неповноти інформації, невизначеності, насамперед нечіткості.
Розглядаються особливості реалізації застосувань на основі адаптивної технології SmartBase та метод виведення наслідків із множини нечітких правил.
Проблематика
По-перше, мова йде про комплексну проблему: необхідно розробити програмну платформу, яка забезпечує і підтримує властивості адаптивної технології. Першим кроком до її створення є побудова компонентів швидкого розроблення нових застосувань. Розробникам необхідно надати насамперед інтегроване середовище розробки нової функціональності, систему уніфікованого доступу до даних, уніфіковану систему безпеки. Бажано уже в перших версіях забезпечити сервіси контролю версій, управління розподіленою системою серверів, підтримку технології “тонкого” клієнта.
В адаптивних технологіях використовуються моделі і методи штучного інтелекту. Саме вони забезпечують набуття системою здатності до адаптації. Але за умов невизначеності традиційні механізми автоматичного доведення теорем недостатньо ефективні. Водночас, резолютивний вивід довів своє право називатися базою логічного зведення.
Тому в рамках зазначеної комплексної проблеми виникає часткова проблема: необхідно розробити ефективний метод зведення наслідків у системах нечітких правил, що поєднує переваги резолютивного зведення з методами скорочення перебору варіантів, притаманними моделям роботи з невизначеністю та нечіткістю. Одним із варіантів є застосування матричного методу для встановлення того, чи є певне твердження логічним наслідком системи нечітких тверджень і нечітких правил. Але матричний метод необхідно модифікувати до роботи з нечіткими оцінками.
Структура та функціонування платформи
Загальна структура системи, що функціонує на основі платформи SmartBase, показана на рис.
Система в процесі функціонування
і проектування базується на взаємодії
серверної і декількох клієнтсь
Сервіси ядра системи – це внутрішні підсистеми, що забезпечують працездатність і функціональність системи (контролю версій, доступу до даних, безпеки і т.п.). Клієнтська частина системи забезпечує підключення до серверної частини, передбачає авторизацію користувача для конкретного застосування, запуск клієнтської частини застосування, коректне завершення сеансу.
Підсистема розроблення і
Метадані SmartBase в подальшому можуть бути скомпільовані й одержаний код може бути виконаним. Для прикладу наведемо такі типи метаданих SmartBase: метадані – прообраз класу; метадані – прообраз збірки; метадані – прообраз застосування. База метаданих – сховище метаданих SmartBase.
Процес створення коду і його виконання в SmartBase контролюється системою. Для цього при створенні коду застосовується підсистема редагування коду, яка має графічний інтерфейс. Перед компіляцією і виконанням код контролюється підсистемою верифікації коду. Код можна зберігати не тільки у вигляді метаданих SmartBase. Виходячи із потреби в підключенні сторонніх розробок до системи у вигляді збірок, модулів тощо, код можна зберігати в базі даних і в SmartBase GAC (прообраз GAC – глобального кешу модулів). Передбачений варіант збереження збірок з машинним кодом.
Для розробника в системі передбачений широкий базовий набір класів SBCL (SmartBase CLasses) – обгорток для написания стандартного коду (наприклад, створення збереженого класу зводиться до успадкування від стандартного шаблону). Застосування SmartBase – код, написаний з використанням системи (бажано) чи без, але виконуваний з використанням функцій системи. Адміністратор управляє системою, маючи ексклюзивні права на неї. Виконується авторизація користувача. Для запуску і виконання затосування SmartBase використовується система імперсонації – виконання коду від імені конкретного користувача (аж до окремих методів і доступу до атрибутів). Спеціальна утиліта перевіряє права, відповідає за коректне надання прав доступу. Передбачена база дозволів на виконання коду і доступ до даних. У системі реалізована єдина система оброблення помилок. Ефективна система контролю версій відповідає за видачу потрібної версії коду
Методи та засоби програмної інженерії (збірки, класу, як представлених у вигляді метаданих SmartBase, так і у вигляді файлів-збірок) і будь-яких даних.
Основними підсистемами (сервісами ядра) є підсистеми кодогенерації, верифікації та редагування коду, підсистеми безпеки, доступу до даних і контролю версій, підсистема, яка відповідає за взаємодію з клієнтами.
Стисло розглянемо їх особливості.
Контроль версій. Система, яка базується на контролі версій усіх елементів застосування користувача,
розроблених в системі, у які входять:
• бінарні файли (збірки, бібліотеки класів, модулі);
• ресурси користувача (документи, зображення і т.п.);
• код розширення функціональності системи.
Тонкий клієнт. Технологія, яка додатково забезпечує такі переваги застосувань, виконаних на основі
платформи SmartBase:
• зникає необхідність у клієнті СУБД;
• немає потреби в бінарних файлах застосування на машині клієнта;
• відсутня проблема адміністрування клієнтської частини серверу застосувань;
• можливість доступу до серверу з будь-якого місця, де є доступ до Internet;
• можливість кешування функціональних модулів застосування на клієнтську машину.
Уніфікована система безпеки. Ця підсистема забезпечує:
• авторизацію на основі динамічних бізнес-правил;
• підтримку захищених сховищ для зберігання налаштованих параметрів, будь-яких даних, що потребують захисту від несанкціонованого перегляду та зміни;
• підтримку інфраструктури сертифікатів Х509;
• шифрування клієнт-серверного трафіка.
Розподілена система серверів. Ця підсистема – основа функціонування застосувань, призначених для управління розподіленими ієрархічними об’єктами із складними вертикальними і горизонтальними зв’язками.
Класичним прикладом такого об’єкта є галузь. Розподілена система серверів забезпечує:
• балансування навантаження;
• синхронізацію застосувань;
• вертикальну та горизонтальну розподіленість системи серверів.
Система уніфікованого доступу до даних. Ця підсистема уможливлює об’єктне оброблення інформації баз даних, побудованих на різних моделях. Вона забезпечує:
• незалежність розробленого в середовищі SmartBase застосування від СУБД;
• використання об'єктної моделі даних;
• генерацію структури бази даних на основі об'єктної моделі даних із SmartBase;
• генерацію об'єктної моделі даних на основі існуючої бази даних.
Нечітке логічне виведення
Однією із проблем створення застосувань є робота невизначеністю, неточністю, неповнотою інформації. Досить часто вона буває нечіткою за своєю природою. У класичних умовах застосовують логіко-математичні числення, причому механізми виведення позбавляють алгоритмічний підхід від деяких його суттєвих недоліків. Ефективним і зручним засобом для опрацювання нечітких знань є нечітка логіка. Пропонуючи апарат визначення чисельних значень нечіткості, обчислення виразів з елементами нечіткості, вона дає можливість знаходить рішення навіть у випадку недостатності даних. Правила становлять собою вирази з імпликацією різної складності, що задаються експертами. Оскільки в цих правилах присутні нечіткі поняття, вони можуть мати більш ніж один можливий наслідок. Кожному із наслідків, в свою чергу, може бути приписана оцінка впевненості в тому, що буде мати місце саме цей наслідок.
З іншого боку, маючи апарат нечіткої логіки, експерт отримує можливість формулювання правил навіть у випадку невпененості в точному результаті. Таким чином, при розробленні адаптивних технологій маємо два аспекти, де необхідне застосування нечітких логік: оцінювання понять, які містять нечіткість; оцінювання наслідків правил.
Другий аспект є більш складним
і критичним для успішного
аналізу. З ним пов’язане визначення
оптимальної послідовності
де А1, A2,... – це умови правила, B1, B2,... – можливі наслідки. Для кожного наслідку експертами визначена оцінка упевненості в тому, що він має місце для виразу, який задовільняє умови правила. Наслідки правила можуть становити умови для інших правил, і таким чином ми отримуємо ланцюжки правил. Кожному наслідку визначена оцінка впевненості в інтервалі [0,1]. Якщо умова має один наслідок, його оцінка впевненості не обов’язково дорівнює 1.
У більшості випадків існує дві і більше можливих послідовностей застосування правил виведення. Щоб визначити, яка з них дає кінцевий результат з більшим ступенем впевненості, необхідний метод обчислення проміжних результатів на основі ступеня впевненості умови і ступеня впевненості того, що певна умова 301 забезпечить певний наслідок. Іншими словами, якщо відомо, що впевненість в А1 дорівнює k, а впевненість в А1→А2 дорівнює l, то для подальших обчислень по ланцюжку чи (у випадку, якщо А2 – кінцева точка) отримання кінцевої впевненості в доцільності застосування цього ланцюжка правил необхідно мати оцінку впевненості в A2.
Щоб отримати оцінку для A2, позначимо за допомогою а′ “не а”, a ∨ b - “або”, a ∧ b, “і”, a → b –імплікацію “якщо a, то b”. В теорії нечітких множин а′ = 1 – a. Логічному виразу “і” відповідає операція ⊗, а виразу “або” – операція ⊕. Ці операції визначаються через T-норми (позначаються знаком *T) і T-конорми (позначаються знаком +T) відповідно. Найпоширенішими є такі визначення Т-норм і Т-конорм:
Оскільки a → b = a′ ∨ b, узагальнимо вираз імплікації на випадок нечітких множин [2]:
де х – конкретні умови, Ai(x) – чисельні оцінки ступеня впевненості в умові/наслідку Ai.
Невідоме значення – чисельна оцінка А2. Позначимо:
А1(x) = k.
(А1→А2)(х) = l.
Застосовуючи визначення операторів (2) і перетворюючи вираз, одержимо:
l = 1 – k+ A2(x) – (1 – k) A2(x);
l = 1 – k+ A2(x)(1 – (1 – k));
l = 1 – k + A2(x) k;
A2(x) = (l – 1+ k) / k.
(5)
Оскільки формула (5) може дати від’ємні числа, якщо (k+l) < 1, вона не підходить для обчислення впевненості. Застосовуючи визначення операторів (3) і перетворюючи вираз, отримуємо:
l = max ((1 – k), A2(x)). (6)
Информация о работе Швидке розроблення інтелектуальних додатків в адаптивній технології SmartBase