Рефераты. Проблематика штучного інтелекту

Розглянемо множину X всіх чисел від 0 до 10. Визначимо підмножину A множини X всіх дійсних чисел від 5 до 8.

A = [5,8]

Покажемо функцію приналежності множини A, ця функція ставить у відповідність число 1 чи 0 кожному елементу в X, у залежності від того, належить даний елемент підмножині A чи ні. Результат представлений на наступному малюнку:

Рис.2. Графічне зображення функції приналежності.

Можна інтерпретувати елементи, яким поставлена у відповідність 1, як елементи, що знаходяться в множині A, а елементи, яким поставлений у відповідність 0, як елементи, що не знаходяться в множині A.

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

5. Фрейми

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

Поєднавши множину фреймів, що є відношеннями, можна побудувати фреймову систему, найважливішою перевагою якої є можливість перетворення фреймів в одній системі.

6.1 Семантичні мережі

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

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

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

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

Слід зазначити, що далеко не кожна мережа, складена з фрагментів, буде представляти правильну чи допустиму інформацію. Фрагменти можуть представляти відношення, що ніяк не узгоджуються одне з одним, наприклад відношення бути братом (R1) та мати квадратну форму (R2). Тоді мережа

<x3, t, r1, a1, x1> <x4, t, r2, x1>

буде репрезентувати Дехто Х1, який є братом А1, має квадратну форму. Щоб уникнути подібних неузгодженостей, згідно схеми обробки в процесі вводу інформації виконується перевірка на її допустимість. Для цього використовуються так звані обов'язкові знання, роль яких відіграють семантичні графи.

6.2 Різні способи задання семантичних мереж: переваги і недоліки

Ми уже зазначали, що одні й ті самі твердження можна зображати різними семантичними мережами і концептуальними графами. Повернемося до речення “Студент Іванов отримав 5 на іспиті з штучного інтелекту”.

Цьому концептуальному графі відповідає такий набір бінарних фактів у формі “об'єкт - атрибут - значення”:

Іванов - Є - Студент

Іванов - Здав - Шт. Інтелект

Іванов - Оцінка - 5

Шт. Інтелект - Є - Іспит

Рис.3. Концептуальний граф: перший варіант

Основна перевага цього рішення - його “природність”. “Об'єкт” “Іванов” відповідає реальній сутності - студентові Іванову.

Але таке рішення має очевидні вади. Це, зокрема, слабка інтерпретованість дуг “Здає” та “Оцінка”, ігнорування того факту, що “Шт. Інтелект” - це не тільки “Іспит”, але й наукова дисципліна і т.п. Але найважливіший недолік - це складність задання зв'язків “один до багатьох” і “багато до багатьох”.

Уявіть собі, що в базі знань зберігається ще один факт про цього ж студента, а саме “Студент Іванов отримав 2 на іспиті з Ліспу”. Цей факт може бути описаний аналогічним концептуальним графом, але як об'єднати ці два графи в семантичну мережу? “Очевидний” розв'язок є незадовільним через свою неоднозначність: незрозуміло, яку оцінку з якого предмету отримав Іванов.

Рис.4. Незадовільне задання зв'язків “один до багатьох”

Можна запропонувати різні виходи з такого становища. Наприклад, можливе таке рішення:

Рис.5. Семантична мережа з неінтерпретованими дугами

Недолік такого рішення - повна неінтерпретованість міток “5” і “2”; вирішити цю проблему можна лише шляхом додавання до відповідних дуг допоміжних зв'язків.

Можна запропонувати розв'язки на основі структурованих семантичних мереж, для яких характерна певна внутрішня структура. Цю структуру можна ввести, наприклад, таким чином:

Рис.6. Приклад структурованої семантичної мережі

Рамками обведені фрагменти семантичної мережі, дуги яких об'єднані заданим відношенням (у даному випадку відношенням кон'юнкції). Але навряд чи подібна структуризація, яка неминуче ускладнює програмування, є необхідною для таких простих мереж.

Нарешті, можна застосувати такий типовий прийом.

Вводяться додаткові предикати, які відображають відношення “Студент Х здав іспит У. Тоді твердження “Студент Іванов отримав 5 на іспиті з штучного інтелекту” та “Студент Іванов отримав 2 на іспиті з Ліспу” можуть бути подані як кон'юнкції таких бінарних фактів:

Іванов - Є - Студент

Ісп_1 - Є - Іспит

Ісп_1 - Хто_Здав_ - Іванов

Ісп_1 - Предмет - Шт.Інт

Ісп_1 - Оцінка - 5

Іванов - Є - Студент

Ісп_2 - Є - Іспит

Ісп_2 - Хто_Здав - Іванов

Ісп_2 - Предмет - Лісп

Ісп_2 - Оцінка - 2

Зверніть особливу увагу на номери в предикатних іменах: кожному фактові здачі іспиту відповідає свій номер, для іншого студента або для іншого предмету предикатне ім'я буде іншим (інакше при описі відношення “багато до багатьох” знову виникне неоднозначність.

7. Нейронні мережі

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

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

Елементарна складова мережі - нейрон - має кілька входів і один вихід. Елементи вхідного вектора множаться на вагові коефіцієнти W1.W2,...,Wn; зважені значення сумуються і надходять до входу порогового елемента, двійковий вихід якого є виходом нейрона. У загально-му випадку для відтворення нелінійності можуть використовуватися не тільки "ступеневі", а й "похилі" функції.

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

Окрім того, не можна гарантувати, що розроблена мережа є оптимальною мережею. Застосування нейромереж вимагає від розробника виконання ряду умов.

Ці умови включають:

· множину даних, що включає інформацію, яка може характеризувати проблему;

· відповідно встановлену за розміром множину даних для навчання і тестування мережі;

· розуміння базової природи проблеми, яка буде вирішена;

· вибір функції суматора, передатної функції та методів навчання;

· розуміння інструментальних засобів розробника;

· відповідна потужність обробки.

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

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

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

Мережа квантування навчального вектора страждає від дефекту, що деякі нейрони мають тенденцію до перемоги занадто часто, тобто налаштовують свої ваги дуже швидко, а інші постійно залишаються незадіяними. Це часто трапляється, коли їх ваги мають значення далекі від навчальних прикладів. Щоб пом'якшити цю проблему, нейрон, який перемагає занадто часто штрафується, тобто зменшуються ваги його зв'язків з кожним вхідним нейроном. Це зменшення ваг є пропорційним до різниці між частотою перемог нейрону та частотою перемог середнього нейрону.

8. Генетичні алгоритми

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

Як правило, у задачі оптимізації ми можемо керувати декількома параметрами (позначимо їх значення через x1, x2, ..., xn, а нашою метою є максимізація (чи мінімізація) деякої функції, f(x1, x2, ..., xn), що залежить від цих параметрів. Функція f називається цільовою функцією. Наприклад, якщо потрібно максимізувати цільову функцію "дохід компанії", тоді керованими параметрами будуть число співробітників компанії, обсяг виробництва, витрати на рекламу, ціни на кінцеві продукти і т.д. Важливо відзначити, що ці параметри зв'язані між собою - зокрема, при зменшенні числа співробітників швидше за все впаде й обсяг виробництва.

Генетичний алгоритм - новітній, але не єдино можливий спосіб рішення задач оптимізації.

Відомо два основні шляхи рішення таких задач - переборний та градієнтний. Розглянемо класичну задачу комівояжера. Суть задачі полягає у знаходженні короткого шляху проходження всіх міст.

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

Іншим способом є градієнтний спуск. Обираємо випадкові значення параметрів, а потім значення поступово змінюють, досягаючи найбільшої швидкості зросту цільової функції. Алгоритм може зупинитись, досягнувши локального максимуму. Градієнтні методи швидкі, але не гарантують оптимального рішення (оскільки цільова функція має декілька максимумів).

Генетичний алгоритм являє собою комбінацію переборного та градієнтного методів. Механізми кросоверу (схрещування) та мутації реалізують переборну частину, а відбір кращих рішень - градієнтний спуск.

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

Висновок

У цій курсовій роботі ми розглянули основні проблемні середовища штучного інтелекту. Розрізняють статичне та динамічне проблемне середовище. Для статичних проблемних середовищ характерним є вирішення статичних задач аналізу і синтезу; використання загальних і спеціалізованих тверджень, що виконуються; статична предметна область; сутності представляються у виді об'єктів; склад сутностей змінюваний; БЗ структуровані, а для динамічних - вирішення динамічних задач аналізу і синтезу; динамічна предметна область; сутності представляються сукупністю атрибутів і їхніх значень; склад сутностей незмінний; БЗ не структуровані.

Важливими проблемами для вирішення є проблеми неточних і неповних знань; проблеми виведення; та винятків.

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

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

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

Використана література :

1). Глибовець М.М., Олецький О. В., „Штучний інтелект”, К. 2002;

2). Герман О.В. Введення в теорію експертних систем і опрацювання знань. - Мінськ: ДизайнПРО, 1995.

3). В.Брауэр. Введення в теорію кінцевих автоматів.-М.: "Радіо і зв'язок", 1987.

4). Болотова Л.С., Смольянинов А.А. Неформальные модели представления знаний в системах искусственного интеллекта / Московский институт радиотехники, электроники и автоматики (ТУ) - М., 1999.

5). Клыков Ю.И., Горьков Л.Н. Банки данных для принятия решений. - М., 1980.

6). Представление и использование знания / под ред. Х.Уэно, М.Исидзука. - М., 1989.

7). Джексон П. Введение в экспертные системы. - М.-С-П.-К.: Изд. дом “Вильямс “, 2001.

Array

Страницы: 1, 2, 3, 4, 5



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.