Вступ
В якості самостійного наукового напрямку штучний інтелект (ШІ) існує вже понад чверть століття. Думка суспільства, щодо спеціалістів даної області, поступово змінювався від скепсису до поваги, і розуміння перспектив даної області в майбутньому. У передових країнах, таких як США і Японія, роботи в галузі інтелектуальних систем підтримуються на всіх рівнях - від пересічних громадян, до урядових органів. Існує цілком обґрунтована думка, що саме дослідження в галузі ШІ будуть визначати характер нинішнього інформаційного суспільства, яке вже фактично прийшло на зміну індустріальної епохи, що досягла своєї найвищої точки розквіту в минулому столітті.
Починаючи з 80-х років минулого століття, відбулося становлення ШІ як особливої наукової дисципліни, сформувалися її концептуальні моделі, накопичилися специфічні методи і прийоми, частково устоялися фундаментальні парадигми. У фахівців старшого покоління, які стояли біля витоків нової області досліджень, складається переконання, що період бурхливого, хаотичного розвитку скінчився, і тепер настає ера академічних і цілеспрямованих досліджень, розрахованих на тривалий період.
Базові положення
Слово інтелект (intelligence) походить від латинського intellectus - розум. Відповідно штучний інтелект (artificial intelligence) - ІІ зазвичай використовується як властивість автоматичних систем брати на себе окремі функції інтелектуальної праці людини, наприклад, вибирати і приймати оптимальні рішення на основі раніше отриманого досвіду і раціонального аналізу зовнішніх впливів або подій.
Інтелектом зазвичай називають здатність мозку вирішувати поставлені (інтелектуальні) задачі шляхом придбання, запам'ятовування і цілеспрямованого перетворення знань в процесі навчання та адаптації їх (знань) до різноманітних обставин. У цьому визначенні під терміном «знання» мається на увазі не тільки інформація, яка надходить у мозок людини через органи почуттів. Інформація подібного роду звичайно важлива, але недостатня для повноцінної інтелектуальної діяльності. Вся справа в тому, що оточуючі нас об'єкти мають властивість не тільки впливати на органи почуттів, але і знаходитися у взаємодії один з одним. Для того щоб здійснювати в навколишньому середовищі інтелектуальну діяльність, або як мінімум просто існувати, людині необхідно мати систему знань, модель цього світу. У цій інформаційній моделі навколишнього середовища реальні об'єкти, їх властивості та взаємини між ними не тільки відображаються і запам'ятовуються, а й можуть мозком людини (подумки) «цілеспрямовано перетворюватися». При цьому важливим є той момент, що формування моделі зовнішнього середовища відбувається в процесі навчання, на досвіді й адаптації до різноманітних обставин.
Під алгоритмом розуміють точну, приписану послідовність дій системи для вирішення всіх поставлених завдань з деякого даного класу задач.
Термін «алгоритм» походить від імені узбецького математика Аль Хо Резмі, який ще в 9 столітті запропонував до використання найпростіші арифметичні алгоритми. У математиці та кібернетиці клас задач певного типу вважається вирішеним, якщо для її вирішення знайдений відповідний алгоритм. Насправді, перебування алгоритмів є природною метою людини при вирішенні різноманітних класів задач. Пошук алгоритму для задач деякого типу пов'язано зі складними міркуваннями, які вимагають чималої винахідливості і високої кваліфікації. Вважається, що подібного роду діяльність вимагає участі інтелекту людини. Завдання, пов'язані з пошуком алгоритму розв'язання класу задач певного типу, зазвичай називають інтелектуальними завданнями.
Що ж щодо завдань, алгоритми, вирішення яких вже встановлені, то, як зазначає відомий вчений у галузі ШІ М. Мінський, - «зайво приписувати їм (ІІ) таке містичне властивість, як інтелектуальність». Після того, як алгоритм розв'язання задачі знайдений, процес вирішення завдання стає таким, що його можуть в рівній мірі виконати як людина, так і обчислювальна машина (належним чином запрограмована), яка не має ні найменшого уявлення про сутність самої задачі. Потрібно лише, щоб «обличчя» (людина або ІІ), вирішальне поставлене завдання, була здатна виконувати ті елементарні операції, з яких складається процес рішення, і, крім того, щоб воно («обличчя») педантично і акуратно керувалося запропонованим алгоритмом. Людина, так само як і ШІ, діє в таких випадках, як говоритися, чисто машинально і може успішно вирішувати будь-яке завдання аналізованого класу.
Видається цілком природним виключити з класу інтелектуальних такі завдання, для яких існують стандартні методи рішення. Наприклад, такими завданнями можуть бути чисто обчислювальні задачі: рішення системи лінійних алгебраїчних рівнянь, чисельне інтегрування диференціальних рівнянь і т. п. Для вирішення подібного роду завдань є стандартні алгоритми, що представляють собою певну послідовність елементарних операцій, яка може бути легко реалізована у вигляді програми для обчислювальної машини. На противагу цьому для широкого класу інтелектуальних завдань, таких, як розпізнавання образів, гра в шахи, доведення теорем і т. п., - формальне розбивка процесу пошуку рішення на окремі елементарні кроки часто виявляється дуже складною, навіть якщо сама їх рішення теоретично нескладно.
Тобто в деякому роді можна перефразувати визначення інтелекту, назвавши його універсальним сверхалгорітмом, який здатний створювати алгоритми вирішення найрізноманітніших, але в теж час конкретно поставлених завдань.
Варто відзначити, що професія програміста, виходячи з наведеного вище, по-суті є однією з найбільш інтелектуальних, оскільки продуктом діяльності програміста є програми - алгоритми в чистому вигляді. Тому, створення навіть певних елементів ШІ по-ідеї повинно значно підвищити продуктивність його праці.
Діяльність мозку, спрямовану на вирішення інтелектуальних завдань, називають мисленням, або інтелектуальною діяльністю. Інтелект і мислення пов'язані з вирішенням таких завдань, як доказ теорем, логічний аналіз, розпізнавання ситуацій, планування поведінки, ігри, також управління в умовах невизначеності. Характерними рисами інтелекту, що проявляються в процесі вирішення завдань, є здатність до навчання, узагальнення, накопичення досвіду (знань і навичок) і адаптації до умов, що змінюються в процесі вирішення завдань. Завдяки цим якостям мозок може вирішувати різноманітні завдання, а також легко перебудовуватися з рішення однієї задачі на іншу. Таким чином, мозок, наділений інтелектом, є універсальним засобом вирішення широкого спектру завдань (у тому числі і неформалізованих) для яких немає стандартних, заздалегідь відомих методів рішення.
Треба враховувати, що існують і інші, чисто поведінкові (функціональні) визначення. Так, згідно А.Н. Колмогорова, будь-яка матеріальна система, з якою можна досить довго обговорювати проблеми науки, літератури чи мистецтва, володіє інтелектом.
Іншим прикладом поведінкової трактування інтелекту може слугувати відоме визначення А. Тьюринга. Наприклад, у різних кімнатах знаходиться люди і машина. Вони не можуть бачити одне одного, але мають можливість спілкування (обмінюватися повідомленнями). Якщо в процесі діалогу між учасниками людям не вдається встановити, що один з учасників - машина, то таку машину можна вважати володіє інтелектом. Цікавий план імітації мислення, запропонований А. Тьюрінгом. «Намагаючись імітувати інтелект дорослої людини - пише Тьюринг - ми змушені багато розмірковувати про той процес, в результаті якого людський мозок досяг свого справжнього стану... Чому б нам замість того, щоб намагатися створити програму, яка імітує інтелект дорослої людини, не спробувати створити програму, яка імітувала б інтелект дитини? Адже якщо інтелект дитини отримує відповідне виховання, він стає інтелектом дорослої людини... Наш розрахунок полягає в тому, що пристрій, йому подібне, може бути легко запрограмоване... Таким чином, ми розчленуємо нашу проблему на дві частини: на завдання побудови «програми-дитини» і завдання «виховання» цієї програми ». Слід зазначити, що саме цей шлях використовують практично всі сучасні системи ШІ. Адже зрозуміло, що практично неможливо вкласти всі знання в систему ШІ. Більш того, тільки на цьому шляху виявляться перераховані вище ознаки інтелектуальної діяльності (накопичення досвіду, адаптація і т. п.).
Методи та підходи побудови системи ШІ
Існують різні підходи до побудови систем ШІ - логічний підхід, структурний, еволюційний, імітаційний. Це поділ не є історичним, коли одна думка поступово змінювалося іншим, і різні підходи та методики існують паралельно і сьогодні. Оскільки по-справжньому повноцінних систем штучного інтелекту в даний час немає, то не можна і стверджувати, що якийсь підхід є правильним, а який - ні.
Для початку розглянемо логічний підхід. Людина займається аж ніяк не тільки логічними вигадками. Це висловлювання звичайно вірно, але саме здатність до логічного мислення дуже сильно відрізняє людину від тварин. Основою для даного логічного підходу служить Булева алгебра. Кожен програміст знайомий з нею та з її використанням, хоча б на прикладі логічного оператора IF (якщо). Свій подальший розвиток Булева алгебра одержала у вигляді обчислення предикатів - у якому вона розширена за рахунок введення предметних символів, відносин між ними, кванторів існування та загальності.
Практично кожна система ШІ, побудована на логічному принципі, є машиною доказу теорем. При цьому вихідні дані зберігаються в базі даних у вигляді аксіом (правила логічного висновку як відносини між ними). Кожна така машина має блок генерації цілі, і система виводу намагається довести дану мету як теорему. Якщо мета доведена, то трасування застосованих правил дозволяє отримати ланцюжок дій, необхідних для реалізації поставленої мети. Потужність такої системи визначається можливостями генератора цілей і машини докази теорем. Можна стверджувати, що виразів алгебри не вистачить для повноцінної реалізації ІІ, але варто згадати, що основою всіх існуючих ЕОМ є біт - одиниця інформації (або значення комірки пам'яті), яка може приймати значення тільки логічного 0 і 1. Було б логічно припустити, що все, що можливо реалізувати на ЕОМ, можна було б реалізувати і у вигляді логіки предикатів. Хоча тут нічого не згадується про те, скільки на це піде часу. Домогтися більшої виразності логічного підходу дозволяє таке порівняно новий напрям, як нечітка логіка. Її особливістю є те, що правдивість висловлювання може приймати окрім значень так / ні (1 / 0) ще й проміжні значення - «не знаю» (0.5), «скоріше так, ніж ні» (0.75) і «скоріше ні, ніж так »(0.25). Такий підхід більше схожий на мислення людини, оскільки людина не часто відповідає тільки «так» чи «ні».
Для більшості логічних методів характерна велика трудомісткість, оскільки під час пошуку докази можливий повний перебір варіантів. Даний підхід вимагає ефективної реалізації обчислювального процесу, і задовільні результати роботи зазвичай гарантуються тільки при порівняно невеликому розмірі бази даних.
Нейронні мережі найбільш успішно застосовуються в задачах розпізнавання образів, в тому числі сильно зачумлених (нечітких). Також є приклади успішного застосування НС для побудови власне систем ШІ.
Для моделей, побудованих на основі будови людського мозку характерна не занадто більша виразність алгоритмів і, завдяки останньому, висока продуктивність паралельно реалізованих НС. Для таких мереж характерно одне властивість, яке робить з дуже схожими з людським мозком - нейронні мережі працюють навіть за умов недостатньої інформації про навколишнє середовище, тобто як і людина, вони поставлене запитання можуть відповідати не тільки «так» і «ні», але й «не знаю точно, але скоріше ні», «не знаю точно, але скоріше так».
Досить велике поширення отримав еволюційний підхід. При побудові систем ШІ по такому підходу, основна увага приділяється побудові початкової моделі і правилам, за якими вона (модель) може змінюватися (еволюціонувати). Модель може бути складена з найрізноманітніших методів, це можуть бути і НС і набір логічних правил і будь-яка інша модель. Після цього ми запускаємо ШІ, і він, на підставі перевірки моделей, відбирає найкращі з них, на підставі яких по всіляких правилами генеруються нові моделі, з яких знову вибираються найкращі і т. д.
Еволюційних моделей, як таких, не існує, є тільки еволюційні алгоритми навчання, але моделі, отримані при еволюційному підході, мають деякі характерні особливості, що дозволяє виділити їх в окремий клас. Такими особливостями є перенесення основної уваги розробника з побудови моделі на алгоритм її модифікації і те, що отримані моделі практично не супроводжують витяганню нових знань про середовище, що оточує систему ШІ, тобто вона (система) стає «річчю в собі».
Широко використовується для побудови систем ШІ також імітаційний підхід. Даний підхід є класичним для кібернетики з одним із її базових понять - «чорним ящиком» (чя). Чорний ящик - це пристрій, програмний модуль або набір даних, інформація про внутрішню структуру та зміст якого відсутні, але відомі специфікації вхідних і вихідних даних. Об'єкт, поведінка якого імітується, якраз і являє собою такий «чорний ящик». Н е важливо, що у нього всередині і як він функціонує, головне, щоб наша модель в аналогічних ситуаціях вела себе так само. Таким чином моделюється інша властивість людини - здатність копіювати те, що роблять інші, не вдаючись у подробиці, навіщо це потрібно. Найчастіше ця здатність економить людині масу часу, особливо на початку його життя. До недоліків імітаційного підходу можна віднести низьку інформаційну здатність більшості моделей, побудованих з його допомогою.
Окремо варто відзначити, що на практиці чіткої межі між різними підходами немає. Часто зустрічаються змішані системи ШІ, де частина роботи виконується за однією методикою, а частина - за іншою.
Проблеми створення ШІ
Аналіз проблеми штучного інтелекту відкриває роль таких філософських пізнавальних знарядь, як категорії, специфічна семіотична система, логічні структури, раніше накопичене знання. Все це виявляються не за допомогою дослідження фізіологічних чи психологічних механізмів пізнавального процесу, але виявляється в знанні, у його мовному вираженні. Знаряддя пізнання, що формуються, в кінцевому рахунку на основі практичної діяльності, необхідні для будь-якої системи, що виконує функції абстрактного мислення, незалежно від її конкретного матеріального субстрату і структури. Тому, щоб створити систему, що виконує функції абстрактного мислення (тобто в кінцевому рахунку, формує адекватні схеми зовнішніх дій в істотно мінливих середовищах) необхідно наділити таку систему цими знаряддями. Розвиток систем ШІ за останні час якраз йде цим шляхом. Ступінь просування в даному напрямку щодо кожного із зазначених пізнавальних знарядь різна, але в цілому поки, на жаль, незначна.
У найбільшій мірі системи ШІ використовують формально-логічні структури, що обумовлено їх неспецифічністю для мислення і, по суті, алгоритмічним характером. Це дає можливість досить легкою їх технічної реалізації. Але навіть тут кібернетиці належить пройти великий шлях. У системах штучного інтелекту ще слабо використовуються модальна, імперативна, питально і інші логіки, які функціонують у людському інтелекті, і не менш необхідні для успішних пізнавальних процесів, що давно освоєні логікою, а потім і кібернетикою форми висновків. Підвищення «інтелектуального» рівня технічних систем, безумовно, пов'язано не тільки з розширенням застосовуваних логічних засобів, а й з більш інтенсивним їх використанням - перевірка інформації на несуперечність, конструювання планів обчислень і т. п.
Складніше йде справа з семіотичними системами, без яких інтелект неможливий у принципі. Мови, використовувані в ЕОМ, ще далекі від семіотичних структур, якими оперує мислення. Перш за все, для вирішення ряду завдань, необхідно послідовне наближення семіотичних систем, якими наділяється ЕОМ, до природної мови, точніше, до використання його обмежених фрагментів. У цьому плані робляться спроби наділити вхідні мови ЕОМ мови, наприклад, полісемією (яка елімінується при обробці в лінгвістичному процесорі). Вже розроблено проблемно-орієнтовані фрагменти природних мов, достатні для вирішення системою низки практичних завдань. Найбільш важливим підсумком такої роботи є створення семантичних мов (і їх формалізація), в яких слова-символи мають певну інтерпретацію.
Багато універсалії природних мов, необхідні для виконання ними пізнавальних функцій, в мовах ШІ поки реалізовані слабко (наприклад, відкритість) або використовуються обмежено (наприклад, полісемія). Все частіше втілення в семіотичних системах універсалій природної мови, обумовлених його пізнавальною функцією, виступає однією з найважливіших ліній вдосконалення систем ШІ, особливо тих, в яких проблемна область заздалегідь чітко не визначена.