Малышенко А.М. Лекции по искусственному интеллекту и нейросетевому управлению - файл n4.doc

Малышенко А.М. Лекции по искусственному интеллекту и нейросетевому управлению
скачать (859 kb.)
Доступные файлы (12):
n1.doc203kb.16.01.2009 00:58скачать
n2.doc240kb.18.02.2009 11:26скачать
n3.doc44kb.22.01.2009 01:05скачать
n4.doc85kb.22.01.2009 04:22скачать
n5.doc107kb.26.01.2009 01:06скачать
n6.doc68kb.13.01.2009 01:26скачать
n7.doc82kb.29.01.2009 00:52скачать
n8.doc440kb.06.02.2009 15:29скачать
n9.doc347kb.12.02.2009 09:49скачать
n10.doc244kb.19.02.2009 02:30скачать
n11.doc337kb.26.02.2009 01:05скачать
n12.doc91kb.19.03.2009 02:41скачать

n4.doc

1. Искусственный интеллект:

основные определения, история и тенденции развития
1.1. Информационные революции в истории человечества
В истории развития человечества было несколько судьбоносных прорывов –информационных революций, которые можно назвать переломными моментами в развитии цивилизации.

Первый информационный прорыв связан с появлением речи. Речь позволила передавать знания от одного индивидуума другому и, следовательно, сохранять их, передавая словесно из поколения в поколения.

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

Третий информационный прорыв связан с появлением книгопечатания. Это ещё более увеличило доступность знаний и сделало возможным массовое распространение и сохранение знаний.

Четвёртый информационный прорыв связан с появлением электросвязи в различных видах (в том числе, радио, телевидения и т.п.) и средств записи знаний (т. е. в широком смысле информации) различными способами. В том числе с использованием разработанных для этих целей кодов, запоминающих устройств на бумажных, магнитных, электронных, оптических носителях.

Пятым информационным прорывом правомерно считать появление массовых ЭВМ, в том числе объединенных в самые разнообразные сети, которые к тому же обладают мощными средствами для хранения, накопления и использования знаний. Именно свидетелями этой информационной революции являемся мы с вами. Если 20 век называют веком атомной энергетики, космонавтики, то 21-й век уже сегодня называют веком информационных технологий. И вполне по праву!

В целом пятая революция дала возможность человечеству и иметь быстрый доступ практически к неограниченным по объему и разновидностям знаний. Достаточно вспомнить всеми нами активно используемый ИНТЕРНЕТ с его разви-ыми поисковыми системами.

В рамках ныне идущей информационной революции можно выделить ряд этапов (их число и типы будут зависеть от того, с какой позиции, своей профессиональной деятельности мы её рассматриваем).


1.2. Мышление и интеллект
Для определения самого понятия «искусственный интеллект» необходимо прежде всего разобраться в том, что понимается под интеллектом человека и сопутствующими ему другими определениями.

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

К познавательным процессам относят:

ощущение,

восприятие,

внимание,

память,

воображение,

мышление,

речь.

Такие познавательные процессы как ощущение и восприятие, внимание и память характерны и для животных, но вот речь и мышление в его высшей форме (абстрагирование, обобщение, моделирование) присуще только человеку. Причем в существенной мере они обусловлены общением с себе подобными. Вспомните эффект «Маугли», когда ему подобные тек и не могут полноценно влиться в жизнь общества людей.

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

Профессор ТГУ Холодная М. А. даёт ему следующее определение [1, с. 363]: «мышление – опосредованное и обобщённое отражение существенных харак-теристик действительности на основе её анализа и синтеза (в широком смысле); процесс решения и постановки задач (в узком смысле)». Отражение осуществляется в виде получения новых данных, формирования новых понятий или изменения схем их связей.

Роль интеллекта в мышлении – создавать порядок из хаоса данных и знаний. В этой связи Р. С. Немов в учебнике по психологии [2, с. 554] даёт следующее определение интеллекта:

«Интеллект – совокупность умственных способностей человека и некото-рых высших животных, например, человекоподобных обезьян».

Другое определение, приведенное в [3, c. 116]: «Интеллект (лат. Intellectus) – ум, рассудок, разум; мыслительные способности человека».

Иногда понятие «интеллект» связывают с понятием «творческое мышле-ние».

Мышление и интеллект связаны и определяются аппаратом мышления. При этом под аппаратом мышления подразумевается не только мозг человека, так как до сих пор не ясно, участвует ли, например, в процессах мышления спинной мозг. Заметим сразу, что функции разных частей головного мозга человека решают разного типа задачи. Учёные-психологи утверждают, что у «правшей» левое полушарие отвечает за речь и связанные с ней функции: чтение, письмо, счёт, или, как говорят, за словесно-логическое мышление. Правое полушарие отвечает за психические функции, связанные с чувственным восприятием, т. е. осуще-ствляет образное мышление. У «левшей» функции левого и правого полушарий противоположны.

Таким образом, можно говорить о двух типах мышления: логического и образного. Первый из них позволяет строить системы, вычленять подсистемы и элементы на основании логических, формальных законов. Образное мышление связано с интуицией, догадками, нетривиальными решениями и творчеством.

В этой связи один из ведущих специалистов по ИИ профессор Д. А. Поспелов приводит такое образное сравнение: «в голове у человека действует как бы две машины. Одна похожа на современный компьютер. Она оперирует с отдельными элементами, образуя из них некоторые правильные последовательности, соотносит эти последовательности с реалиями внешнего мира и некоторыми реалиями внутреннего мира, планирует предметную деятельность во внешнем мире и анализирует накопленный опыт. Она создаёт классификацию всех знаний, оперирует с формально-логическими системами и делает многое другое, что умеет, в принципе, делать программа для компьютера».

Другая (правосторонняя (у «правшей») машина) совсем не похожа на компьютер. Она работает параллельно, используя ассоциативный принцип. В её операциях нет четко выраженной цели, планирования на основе этих целей, программирования последовательности операций. В ней текут непрерывные процессы и конечный результат её деятельности никогда не фиксируется в виде единственно возможного. На сегодняшний день у человечества нет технических аналогов правосторонней машины. И пока неизвестно, как её моделировать.

Есть и другое видение укрупнённой модели мозга: «Человеческий мозг уподобляется трём биокомпьютерам: первый – «левый мозг», обрабатываю-щий подобно ЭВМ символьную информацию; второй – «правый мозг», лока-лизующий целостные образы; третий – «лобные доли мозга» – суперкомпью-тер, обеспечивающий совместное функционирование первых двух» [4, с. 48].

И ещё на одно обстоятельство следует обратить внимание: мышление отно-сится к естественным системам, процессы в которых стохастичны и необра-тимы, а не искусственным системам, процессы в которых детерминированы и, следовательно, обратимы.
1.3. Определение искусственного интеллекта
Впервые понятие «искусственный интеллект» (англ. Artificial intelligence (AI)) всплыло только на заре кибернетики. Сам термин artificial intelligence родился в 1956 году на одноименной конференции в Стэнфордском университете, где обсуждалось решение логических, а не вычислительных задач.

А в 60-х годах ХХ века подоспела и технологическая база для создания ИИ – первые электронные компьютеры. Тогда все были полны оптимизма и точными формулировками и определениями себя не утруждали, мол, главное — технический прогресс. Полагали, что в ближайшем будущем возрастет мощность компьютеров (что, можно считать, сбылось), люди тем временем научатся создавать эффективные алгоритмы для программирования интеллекта (а вот с этим дела обстоят совсем не так успешно), и тогда наступит светлое будущее с искусственным интеллектом в придачу. И будем мы тогда попивать чаёк с пряниками, в то время как роботы освободят нас от физической работы, а компьютеры — еще и от умственной. Особо красочно подобные утопические картины удавались тогдашней научной фантастике, даже советской (после того, как кибернетику в СССР исключили из списка лженаук). В концепцию сферического коммунизма умные компьютеры и услужливые роботы вписывались идеально: кто в обществе победившего комму-низма пойдет, к примеру, чистить уборные и подметать улицы? Ясное дело, только роботы.

На первых стадиях развития работ по искусственному интеллекту основными специалистами, занимавшимися этой проблемой, были специалисты по управлению и программисты. На этом фоне и вводились определения искусственного интел-лекта.

Искусственный интеллект (ИИ) является одной из разновидностей информа-ционных систем. Его определение фактически еще не устоялось и вряд ли будет однозначным ещё продолжительное время. Прежде всего, это связано с постоянным расширением данного понятия, с более сущностными взгядами на то, что ныне называют ИИ. По этой причине приведём несколько определений ИИ, данных на разных этапах его развития специалистами, занимающимися проблемой ИИ.

ИИ – это «автоматизация видов деятельности, которые мы ассоциируем с человеческим мышлением (human thinking), таких как принятие решений, решение проблем, обучение…» – Belman, 1978.

ИИ – «Прикладывание новых усилий для того, чтобы сделать думающие компьютеры, … машины с мозгами в полном и дословном смысле» – Hougeland, 1985.

ИИ – «Изучение ментальных способностей через использование вычисли-тельных моделей» – Charniak, McDermont, 1985. (ментальный – имеющий отношение к умственной сфере субъекта).

ИИ – «искусство создания машин, которые осуществляют функции, требующие интеллекта при реализации их человеком» – Kurzweil, 1990.

«Область науки, которая имеет дело с объяснением и воспроизведением интеллектуального поведения в терминах вычислительных процессов» – Schalkoff, 1990.

«Изучение того, как заставить компьютеры делать вещи, которые в настоящее время лучше делают люди» – Rich, Knight, 1991. Не странно ли????

«Изучение вычислений, которые делают компьютеры возможным распозна-вать, размышлять и действовать – Winston, 1992.

«Область информатики, имеющая дело с автоматизацией интеллектуального поведения – Luger, Stubblefield, 1993.

Это разнообразие определений ИИ объясняется, прежде всего, разными аспектами (взглядами) на назначение ИИ и его существенные признаки.

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

Некоторые специалисты склонны рассматривать «искусственный интеллект» как нечто постоянно ускользающее и недоступное (цель, всегда находящаяся за горизонтом). Такая точка зрения частично связана с тем, что технологии и алгорит-мы, разработанные в рамках ИИ, со временем становятся неотъемлемой частью информационных технологий и более не ассоциируются с ИИ.

И еще несколько определений ИИ.

Искусственный интеллект – это раздел информатики, изучающий возможность обеспечения разумных рассуждений и действий с помощью вычислительных систем и иных искусственных устройств. При этом в большинстве случаев заранее неизвестен алгоритм решения задачи.
Правомерно под ИИ понимать технологии, которые реализуют или моделируют процессы обработки информации в нервной системе.

1.4. Исторические аспекты развития

искусственного интеллекта

Хотя до сих пор единого и точного определения искусственному интеллекту никто так и не дал, в обществе сложилось представление об ИИ как о компью-терной имитации человеческого мышления, включая самые сложные творческие функции, но без присущих человеку недостатков – частых ошибок, забывчивости, недостаточной скорости математических вычислений и так далее. При этом вместе с мышлением умным машинам будущего автоматически приписыва-лось и сознание, но сознание ущербное и покорное. Лучше всего изложил тезисы «электронного рабства» Айзек Азимов в своих трех законах робото-техники. Тогда же начались и первые заигрывания с темой бунта разумных машин – пощекотать подобными сюжетами нервишки было интересно и тогда, и даже сейчас.

А что же наука? И парни в белых халатах от этого фантастического фольклора ушли недалеко. Для начала исследователи искусственного интеллекта раздели-лись на две школы – нейрокибернетическую и алгоритмическую.

Представители нейрокибернетической школы считали, что интеллект – феномен, присущий исключительно человеку, поэтому и плясать надо от нейро-физиологии человека. Тщательно изучать процессы, происходящие в мозгу, пытаться создать аппаратные аналоги нейронных систем. Искусственным интеллектом нейрокибернетики считали наиболее точную аппаратную имитацию нервной системы человека. Среди этой школы витала надежда на стремительный прогресс и удешевление электронных компонентов, которые позволят создать электронные аналоги тех или иных «запчастей» настоящего мозга. А что будет потом, когда электронный аналог мозга таки будет собран на лампах, транзисторах или (не будем мелочиться!) скоростных и ультракомпактных чипах?

Согласно вере нейрокибернетиков, в таком гипотетическом устройстве разум должен самозародиться, как мышь в куче тряпья. Или, если хотите – разум явля-ется неотъемлемым свойством подобных систем. Увы, проверить это технически невозможно даже сейчас, не говоря уже о середине XX века. Среднее количество нейронов в мозге человека – порядка 10-20 млрд. При этом существует как минимум четыре разновидности нейронов, а число связей одного нейрона с другими может достигать 20 000. Так можно ли создать аппаратную модель мозга? Ведь придётся в этом устройстве воспроизвести 10-20 млрд. в степени 2000 связей!!!

Следует при этом ещё иметь в виду, что сигналы в биологических нейронных сетях – это не двоичный цифровой код, как бы нам этого ни хотелось, а аналоговые электрические импульсы. Кроме того, известно, что на состояние нейронов, как и любых клеток, влияют еще и химические процессы.

В общем, идея моделирования интеллекта снизу вверх быстро лопнула, как мыльный пузырь. Единственное вменяемое достижение на старте этой теории — персептрон, первая искусственная нейронная сеть из нескольких сотен элементов. Это порождение кибернетической мысли продемонстрировало весьма жалкие способности, научившись только отличать друг от друга разные буквы алфавита. Справедливости ради отметим, что данная область науки не умерла, и в наши дни нейронные сети из сотен тысяч элементов демонстрируют перспективные результаты – например, в распознавании зрительных образов, параллельных вычислениях, в системах автоматического управления, при решении задач идентификации и т. п..

«Алгоритмисты» в противовес нейрокибернетикам решили подступиться к проблеме AI с другой стороны — попытались смоделировать функции мышления при помощи прикладной математики и теории алгоритмов. Этих исследователей физиологическая сторона интеллекта не интересовала совсем. Те или иные функции мышления они сводили к проблеме черного ящика — плевать, что там у него внутри, главное, что поступает на вход и что получается на выходе. В идеале это должно было выглядеть так: «А ну-ка, ящик! Вот тебе "Я помню чудное мгновенье" товарища Пушкина. И чтоб к завтрашнему дню на этот текст у меня был рэп-шлягер с тремя вариантами аранжировок! Время пошло!»

Вот тут-то проблема с определением интеллекта и встала в полный рост — ведь надо знать, из каких функциональных особенностей состоит интеллект и что мы, собственно, будем моделировать в виртуальном черном ящике. Особо хитрые исследователи пытались отделаться расплывчатыми определениями, типа «AI должен быть самообучаемым», «должен распознавать человеческую речь» и так далее. Но вскоре стало понятно, что придется копать на уровень ниже.

Проблему с четким определением интеллекта пока отдали на откуп фило-софам и психологам, а сами сосредоточились на главном — каковы необходимые признаки, которыми обладает любой интеллект. Итак, любой интеллект должен:

1. Содержать некоторую базу знаний об окружающем мире. Ключевое слово здесь не «база», а «знания».

2. Самообучаться, т.е. пополнять базу знаний. При этом интеллект должен уметь оперировать незнакомыми, а также нечеткими, не формализуемыми понятиями, например «немного», «какая-то фиговина», «от забора и пока не задолбаетесь».

3. Генерировать алгоритм решения задачи в самом процессе ее решения, к примеру, дедуктивно выбирать конкретные варианты решений из общих правил или эмпирически выводить решение из совокупности нечетких данных.

4. Выводить общие правила на основе частных случаев.

5. Общаться с другими интеллектуальными системами на смысловом (семантическом), а не синтаксическом уровне.

6. Иметь мотивацию.

Разбор начнем с самого первого пункта. Казалось бы, что может быть проще базы знаний? Закачивай в компьютер хоть все энциклопедии мира — места хватит. Но только это будут не знания, а данные. На первый взгляд, разница между данными и знаниями неочевидна, но на самом деле она огромна. Буквы и слова в журнале — это данные. А вот то, что написано в статьях, их смысл — это уже знания. Другими словами, чтобы превратить данные в знания, их нужно связать между собой. Может быть, представить все это дело в виде гипертекста? Запросто. Но этого будет недостаточно – беспорядочный набор данных превратится лишь… в гипертекстовый мусор. Для полноты картины нужно организовать данные – скажем, в виде объектов с определенным набором свойств, функций и взаимодействий со свойствами и функциями других объектов. Похожий инструментарий предлагает объектно-ориентированное программи-рование, но есть все основания предполагать, что в биологических системах знания хранятся не в виде модулей на Delphi, а более изощренно.

После такого «бодрого» начала решение второго пункта (обучение) выглядит уже не таким оптимистичным. Если составление первоначальной базы знаний может взять на себя человек, то дальнейшее пополнение этой базы искусственный интеллект должен проводить самостоятельно. Но и это не все. Первоначальная модель окружающей среды, заложенная в интеллект, по определению не является полной, так как окружающая среда — система намного более сложная, чем сам интеллект (неважно, естественный или искусственный). И главный вопрос здесь — куда и каким образом пристыковывать к существующей базе новые, ранее незнакомые знания?

Простейший гипотетический пример — самообучающийся робот NASA для взятия проб грунта с алгоритмом навигации по местности, который «знает» только о существовании неровностей и препятствий, другие типы объектов просто отсутствуют в его системе знаний. Перемещаясь по местности, робот пополняет базу знаний картой высот и координатами препятствий в виде камней, зданий и деревьев. И тут — оп-па! — на пути нашего робота появляется озеро. Как приткнуть его к существующей базе знаний? Как частный случай ровной поверхности с пониженной плотностью и текучестью? Или как принципиально новый класс объекта? Или просто забить и поехать дальше?

Первоначально считалось, что обучение – ключевое требование к интеллекту, тогда как антипод обучения – забывание – не более чем нежелательный эффект. Позже оказалось, что это совсем не так. В процессе обучения умение забывать играет не меньшую роль, чем накопление новых знаний. Почему? Во-первых, объем памяти любой системы (как компьютера, так и живого существа) ограничен. Рано или поздно лишние знания придется убирать, поэтому желательно рассортировать данные на нужные/ненужные заранее. На практике все еще сложнее. Дело в том, что кирпичики знаний далеко не равноценны по своей важности — в первую очередь интеллект обращается к самым важным с его точки зрения данным. Именно расстановка приоритетов позволяет разуму эффективно адаптироваться к окружающей среде. Например, вы можете не вспомнить сложную теорему, будучи разбуженным среди ночи… и ничего страшного не произойдет. Но если вы, стоя на скоростном шоссе, забудете, что от несущегося на вас КАМАЗа надо бежать во всю прыть, ваш сеанс адаптации к шоссе закончится весьма быстро и очень печально. Короче, обучение и систематизация знаний — штука очень сложная как в понимании, так и в реализации.

А вот с пунктами № 3 и № 4, несмотря на их кажущуюся заумность, все немного проще. Это классическое описание дедукции (выведения частного из общего) и индукции (выведения общего из частного). В этих областях традиционно рулят различные разделы логики, декларативные языки программирования типа Prolog и функциональные — Haskell, LISP и CLOS. В случае с нечеткими данными на помощь приходят теория вероятностей, нечеткая логика. Другими словами, индукция и дедукция достаточно неплохо поддаются алгоритмизации, что привело к ощутимому прогрессу в этом направлении, – появились эффективные экспертные системы в фармакологии, диагностике, дефектологии и так далее.

Однако есть проблема — «идеальный» ИИ должен алгоритмизировать и решать эти задачи без постороннего вмешательства, так как в правильной постановке задачи уже содержится часть ответа или ответ целиком. Банальный пример. Как создается классическая процедурная программа? Программист описывает входной набор данных и правила их обработки, после чего фактически просит у программы применить то или иное уже готовое правило. Это равносильно классическому обучению в вузах, когда преподаватель разжевывает способ решения системы уравнений, а затем задает студентам задание, единственное отличие которого от решенного образца — другой набор констант. И где здесь решение задачи, когда задача уже фактически решена? Настоящая же постановка задачи вообще не подразумевает описание метода ее решения.

Пункт № 5 (общаться с другими интеллектуальными системами на смысловом (семантическом) уровне) – задача смыслового общения интеллекта с другими системами — вообще-то представляет собой частный случай вышеописанных пунктов. Раз система содержит внутри себя знания (читай: смыслы), оперирует этими смыслами в дедуктивных и индуктивных алгоритмах, а также осмысленно воздействует на окружающую среду, то что помешает ей полноценно общаться вербальным (разговорным) или символьным (письменным) способом? Однако общение систем AI с человеком исследователи всегда выдвигают на первый план, поскольку без этого создание AI не имеет смысла. Зачем нам интеллект-аутист, который не хочет или не умеет общаться? Какая от него польза? Поэтому данное требование обычно выделяют в отдельный пункт. Обратите внимание, что нас интересует именно осмысленное общение, а не его имитация.

И наконец, пункт № 6 (мотивация). Предположим, что нам удалось создать ИИ, полностью удовлетворяющий пунктам №№ 1–5. Отлично! Но почему мы решили, что он тут же радостно побежит познавать мир, взаимодействовать с окружающей средой и осмысленно общаться со своими создателями? Мы, люди, антропоморфны, и все наши действия так или иначе подчинены нашей физиологической сущности. В человеческом BIOS не просто прописан набор основных целей — поесть, поспать, постараться прожить как можно дольше и тому подобное. Этот набор целей так или иначе следует из нашей биологической природы. А какой набор базовых целей должен иметь интеллект небиологического происхождения? На данный момент ответ на этот вопрос еще никто не дал.

Что еще хуже — отсутствует ответ и на более важный вопрос. Являются ли необходимые признаки интеллекта в то же время достаточными? Может быть, мы упускаем из вида еще что-то? Например, сознание?

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

Соответственно, искусственный интеллект – это небиологическая система, наиболее точно моделирующая описанные свойства. Именно моделирующая, а не имитирующая или создающая иллюзию. При этом система, моделирующая только часть свойств, не может считаться интеллектуальной в классическом понимании.

Но всегда ли специалисты по AI использовали именно такое определение искусственного интеллекта? Оказывается, нет, одно время между моделированием и имитацией фактически ставился знак равенства. Наверняка все слышали о тесте Тьюринга, который в упрощенном виде звучит так: искусственную систему можно назвать интеллектуальной, если при общении с человеком последний не сможет отличить ее от живого мыслящего собеседника. Это легкое, но практически бессмысленное правило прочно прижилось в широких кругах и охотно цитируется в наши дни.

До создания полноценного искусственного интеллекта далеко. Но значит ли это, что полвека работы выдающихся ученых и талантливых программистов прошли зря? Конечно, нет. Кроме уже перечисленных достижений, нельзя не упомянуть созданные в процессе разработки ИИ: новаторские парадигмы программирования, генетические алгоритмы и прогресс в теории и практике цифровых автоматов с обратной связью

Самая очевидная причина – разработка сложного ИИ нерентабельна. Для того чтобы разница между обычным ИИ и самообучаемым ИИ стала ощутимой, придется потратить несоразмерно большее количество времени на написание дополнительного программного обеспечения. Но это еще полбеды. Настоящий проблемы начнутся при отладке. Тут затраты времени и средств возрастут по экспоненте, при этом количество пропущенных глюков все равно увеличится. Как понять, что представляет из себя наблюдаемый сбой — ошибку в базовых алгоритмах самого автомата, ошибку в алгоритме обучения или же это просто результат «неправильного обучения»? Ведь ИИ действительно может перенимать у игрока не только правильные, но и неправильные стратегии.





1. Искусственный интеллект
Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации