Машина Тьюринга и рекурсивные функции: Учебное пособие для вузов. Тест тьюринга Смотреть что такое "тьюринг" в других словарях

ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ

Тест Тьюринга известен каждому человеку, интересующемуся искусственным интеллектом. Его сформулировал в 1938 г. Алан Тьюринг в статье “Может ли машина мыслить?”. Тест заключается в следующем. Экспериментатор общается с собеседником, не видя его (например, по компьютерной сети), набирая фразы на клавиатуре и получая текстовый ответ на мониторе. Затем он пытается определить, с кем вел разговор. Если экспериментатор принимает компьютерную программу за человека, значит, она прошла тест Тьюринга и может считаться интеллектуальной.

Золотую медаль получит все же человек

Наиболее известной программой, еще в 60-х годах показавшей реальную возможность прохождения этого теста, стала легендарная ELIZA. Она была создана в 1966 г. учеными Виноградом, Вейценбаумом и Колби. ELIZA находила в фразе ключевые слова (например, “мать”) и выдавала шаблонную просьбу, механически на эти слова реагируя (“Расскажите побольше о вашей матери”). В дальнейшем Тодди Виноград на основе ELIZA создал более совершенный вариант “Психотерапевт”. Появление ELIZA вошло в историю искусственного интеллекта наряду с такими событиями, как выпуск первого промышленного робота в 1962 г. или начало финансирования Пентагоном разработок в области распознавания образов и речи в 1975-1976 гг.

В 1991 г. впервые состоялся частный, но весьма солидный турнир по прохождению теста Тьюринга, на который были приглашены авторы подходящих компьютерных программ (называемых ботами). Этот турнир основал Хью Лебнер (www.loebner.net/Prizef/loebner-prize.html). За победу в нем полагались приз в размере 100 тыс. долл. и золотая медаль.

Пока главный приз не достался никому. Однако в 1994 г. Лебнер внес серьезные изменения в правила, потребовав, чтобы программа общалась с судьей не только в текстовом формате, но и путем генерации изображения виртуального человека. Она также должна уметь синтезировать и распознавать речевую информацию. Эти условия многие сочли крайне трудными, и до сих пор претендентов на главный приз по новым правилам не появилось. А за победу в старом, “текстовом” режиме теперь обещаны 25 тыс. долл. и серебряная медаль. Надо отметить, что вероятность субъективной ошибки судьи при общении с программой по старым правилам достаточно высока. Кроме того, боты совершенствуются довольно-таки быстро, и мы наверняка дождемся в ближайшие годы победителя в тесте Тьюринга.

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

Но и разработчики не теряют времени даром, настраивая своих виртуальных подопечных таким образом, чтобы на провокационные вопросы типа “вы машина или человек?” программа весьма убедительно отвечала: “Конечно, человек!”.

8 ноября 1991 г. в Бостонском компьютерном музее восемь программ вступили в схватку с живыми экспертами. Результат был ошеломляющим. Пять из десяти судей решили, что под псевдонимом Whimsical Conversation скрывается человек. На самом деле это была программа Therapist, работавшая под управлением IBM PC 386 и созданная в 1986 г. на основе легендарной ELIZA Джозефом Вейнтраубом, специалистом по психологии. Впрочем, такой результат во многом связан со скептицизмом и предубеждением экспертов, считавших, что программы общаются на гораздо более примитивном уровне, чем это было в реальности. В дальнейшем судьи освоились с компьютерной манерой общения, и столь успешного результата ботам с тех пор достичь не удалось.

Первоначально Therapist состояла из семи модулей, написанных на Си, Turbo-Prolog и QuickBasic. Позже она была дополнена системой синтеза речи и базой знаний. Программа использует словарь из 70 000 слов и запоминает все, что ей рассказывают, используя эту информацию в следующих диалогах и подстраиваясь под интересы конкретного собеседника. Therapist выигрывала приз Лебнера еще в 1992, 1993 и 1995 гг. Затем она была усилена специализированными модулями, способными поддерживать разговоры на темы “мужчина против женщины” и “либералы против консерваторов”.

Вот пример из одного ее победного диалога:

Судья: Do you think that American soldiers should go to Bosnia?

Therapist: I think that what clinton has done in sending 20,000 peacekeepers to bosnia will ensure a lasting peace.

Судья: Do you think most Americans feel the way you do?

Therapist: What did you mean when you said do you think that american soldiers should go to bosnia? Did anyone ever tell you that you think too much? Oh, I think most americans feel the way i do?

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

В 1996 г. бронзовую медаль получил Джейсон Хатченс и его бот SEPO, который общался примерно так:

Судья: I think. I do research. I write. I love. I Live.

SEPO: I wonder whether you think sometimes! I am feeling like the judge here!

В 1997 г. чемпионом стал Дэвид Леви с ботом Converse. В 1998-м и 1999-м победы добивался Робби Гарнет, считающий, что прохождение теста Тьюринга не требует реального интеллекта. Интересно, что почти все авторы, упоминая о научных подходах к обучению (нейронные сети, генетические алгоритмы), обходились в своих решениях достаточно простыми эвристическими методами.

Гарнет выставил на состязание программу Computational Behaviorist, основанную на принципе “стимул - реакция”, схожем с тем, что заложен в TIPS и ELIZA. Только его бот искал не одно, а до трех ключевых слов в фразе. В то же время, понимая, что от программы требуется нечто большее, чем однообразный ответ на вопросы, он встроил в нее ряд дополнительных эвристических алгоритмов, создававших более полную иллюзию общения с человеком.

В ходе разработки Behaviorist возникли технические трудности, связанные со сложностью реализации поиска знаний в крупных по тем временам базах, что приводило к заметным временны’м задержкам в общении, сразу выдававшим компьютерного собеседника. Поэтому Гарнет объединил два общедоступных бота - Albert, написанный на С++, и одну из Паскаль-версий ELIZA и реализовал их в среде разработки Visual DataFlex, позволявшей пользоваться стандартными алгоритмами запросов к БД.

В 2000-м и 2001 г. малый приз доставался программе ALICE Ричарда Уоллеса. Сегодня на базе ALICE организован фонд ALICE AI Foundation (http://alice.sunlitsurf.com/), занимающийся стандартизацией деятельности по созданию ботов. В частности, ALICE дополнена средствами поддержки БД в формате AIML (Artificial Intelligence Markup Language) - подмножестве XML, нацеленном на формализацию представления ключевых фраз и ответов. Теперь любой желающий, незнакомый с программированием, может взять базовый вариант ALICE и наполнить его собственной базой знаний на любом языке, используя обычный редактор.

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

Одним из наиболее вероятных претендентов на победу в текущем году (турнир пройдет в октябре) считается Смит Джошуа, автор программы Anna (AIML-расширение ALICE, свободно доступное на сайте http://annabot.sourceforge.net/). Г-н Джошуа отмечает, что в отличие от своих коллег он с самого начала создавал бот, выдающий себя в процессе общения за человека. Anna действительно считает себя живым существом, обладает набором индивидуальных качеств и достаточно бойко ведет разговор.

Есть ли подобные российские разработки - боты, способные общаться на русском языке? Редакция PC Week/RE готова провести российский конкурс на прохождение теста Тьюринга. Напишите автору по адресу: [email protected].

Тема “Машина Тьюринга” в школьном курсе информатики

И.Н. Фалина,
Москва

Во многих учебниках по информатике при изучении понятия и свойств алгоритма присутствуют фразы такого содержания: “…существует много разных способов для записи одного и того же алгоритма, например, запись в виде текста, запись в виде блок-схемы, запись на каком-либо алгоритмическом языке, представление алгоритма в виде машины Тьюринга или машины Поста…”. К сожалению, такого типа фразы являются единственными, где упоминается машина Тьюринга. Без сомнения, объем часов, отводимых на изучение алгоритмов, не позволяет включать в эту тему еще и изучение способов записи алгоритма в виде машины Тьюринга. Но эта тема крайне интересна, важна и полезна для школьников, особенно увлекающихся информатикой.

Тема “Машина Тьюринга” может изучаться в 8–11-х классах в рамках темы “Информационные процессы. Обработка информации”, на факультативных занятиях, в системе дополнительного образования, например, в школах юных программистов. Изучение этой темы может сопровождаться компьютерной поддержкой, если у учителя есть программный тренажер-имитатор “Машина Тьюринга”. В классах с углубленным изучением программирования школьники могут самостоятельно написать программу “Машина Тьюринга”. В рамках этой статьи вашему вниманию предлагается практикум по решению задач на тему “Машина Тьюринга”. Теоретический материал по данной теме не раз печатался на страницах газеты “Информатика”, например, в № 3/2004 статья И.Н. Фалиной “Элементы теории алгоритмов”.

Краткий теоретический материал

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

В каждой машине Тьюринга есть две части:

1) неограниченная в обе стороны лента , разделенная на ячейки;

2) автомат (головка для считывания/записи, управляемая программой).

С каждой машиной Тьюринга связаны два конечных алфавита : алфавит входных символов A = {a 0 , a 1 , ..., a m }и алфавит состояний Q = {q 0 , q 1 , ..., q p }. (С разными машинами Тьюринга могут быть связаны разные алфавиты A и Q .) Состояние q 0 называется пассивным . Считается, что если машина попала в это состояние, то она закончила свою работу. Состояние q 1 называется начальным . Находясь в этом состоянии, машина начинает свою работу.

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

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

Автомат каждый раз “видит” только одну ячейку. В зависимости от того, какую букву ai он видит, а также в зависимости от своего состояния qj автомат может выполнять следующие действия:

  • · записать новую букву в обозреваемую ячейку;
  • · выполнить сдвиг по ленте на одну ячейку вправо/влево или остаться неподвижным;
  • · перейти в новое состояние.

То есть у машины Тьюринга есть три вида операций. Каждый раз для очередной пары (q j , a i ) машина Тьюринга выполняет команду, состоящую из трех операций с определенными параметрами.

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

Клетка (q j , a i ) определяется двумя параметрами - символом алфавита и состоянием машины. Команда представляет собой указание: куда передвинуть головку чтения/записи, какой символ записать в текущую ячейку, в какое состояние перейти машине. Для обозначения направления движения автомата используем одну из трех букв: “Л” (влево), “П” (вправо) или “Н” (неподвижен).

После выполнения автоматом очередной команды он переходит в состояние q m (которое может в частном случае совпадать с прежним состоянием q j ). Следующую команду нужно искать в m -й строке таблицы на пересечении со столбцом a l (букву a l автомат видит после сдвига).

Договоримся, что когда лента содержит входное слово, то автомат находится против какой-то ячейки в состоянии q 1. В процессе работы автомат будет перескакивать из одной клетки программы (таблицы) в другую, пока не дойдет до клетки, в которой записано, что автомат должен перейти в состояние q 0 . Эти клетки называются клетками останова . Дойдя до любой такой клетки, машина Тьюринга останавливается .

Несмотря на свое простое устройство, машина Тьюринга может выполнять все возможные преобразования слов, реализуя тем самым все возможные алгоритмы.

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

Решение. Машина должна прибавить единицу к последней цифре числа. Если последняя цифра равна 9, то ее заменить на 0 и прибавить единицу к предыдущей цифре. Программа для данной машины Тьюринга может выглядеть так:

В этой машине Тьюринга q 1 - состояние изменения цифры, q 0 - состояние останова. Если в состоянии q l автомат видит цифру 0..8, то он заменяет ее на 1..9 соответственно и переходит в состояние q 0 , т.е. машина останавливается. Если же он видит цифру 9, то заменяет ее на 0, сдвигается влево, оставаясь в состоянии q l . Так продолжается до тех пор, пока автомат не встретит цифру меньше 9. Если же все цифры были равны 9, то он заменит их нулями, запишет 0 на месте старшей цифры, сдвинется влево и в пустой клетке запишет 1. Затем перейдет в состояние q 0 , т.е. остановится.

Практические задания

1. На ленте машины Тьюринга содержится последовательность символов “+”. Напишите программу для машины Тьюринга, которая каждый второй символ “+” заменит на “–”. Замена начинается с правого конца последовательности. Автомат в состоянии q 1 обозревает один из символов указанной последовательности. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

2. Дано число n в восьмеричной системе счисления. Разработать машину Тьюринга, которая увеличивала бы заданное число n на 1. Автомат в состоянии q 1 обозревает некую цифру входного слова. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

3. Дана десятичная запись натурального числа n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1. Автомат в состоянии q 1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

4. Дано натуральное число n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1, при этом в выходном слове старшая цифра не должна быть 0. Например, если входным словом было “100”, то выходным словом должно быть “99”, а не “099”. Автомат в состоянии q 1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

5. Дан массив из открывающих и закрывающих скобок. Построить машину Тьюринга, которая удаляла бы пары взаимных скобок, т.е. расположенных подряд “()”.

Например, дано “) (() (()”, надо получить “) . . . ((”.

Автомат в состоянии q

6. Дана строка из букв “a ” и “b ”. Разработать машину Тьюринга, которая переместит все буквы “a ” в левую, а буквы “b ” - в правую части строки. Автомат в состоянии q 1 обозревает крайний левый символ строки. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

7. На ленте машины Тьюринга находится число, записанное в десятичной системе счисления. Умножить это число на 2. Автомат в состоянии q 1 обозревает крайнюю левую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

8. Даны два натуральных числа m и n , представленные в унарной системе счисления. Соответствующие наборы символов “|” разделены пустой клеткой. Автомат в состоянии q 1 обозревает самый правый символ входной последовательности. Разработать машину Тьюринга, которая на ленте оставит сумму чисел m и n . Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

9. Даны два натуральных числа m и n , представленных в унарной системе счисления. Соответствующие наборы символов “|” разделены пустой клеткой. Автомат в состоянии q 1 обозревает самый правый символ входной последовательности. Разработать машину Тьюринга, которая на ленте оставит разность чисел m и n . Известно, что m > n . Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

10. На ленте машины Тьюринга находится десятичное число. Определить, делится ли это число на 5 без остатка. Если делится, то записать справа от числа слово “да”, иначе - “нет”. Автомат обозревает некую цифру входного числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

Решения заданий

В состоянии q 1 машина ищет правый конец числа, в состоянии q 2 - пропускает знак “+”, при достижении конца последовательности - останавливается. В состоянии q 3 машина знак “+” заменяет на знак “–”, при достижении конца последовательности она останавливается.

Решение этой задачи аналогично рассмотренному выше примеру.

Состояние q 1 - уменьшаем младшую (очередную) цифру на 1. Если она не равна нулю, то после уменьшения сразу - останов, если же младшая цифра равна 0, то вместо нее пишем 9, смещаемся влево и вновь выполняем вычитание. В клетку [a 0 , q 1 ] машина Тьюринга никогда не попадет, поэтому ее можно не заполнять.

Задача 4 (усложнение задачи 3)

Состояние q 1 - уменьшаем младшую (очередную) цифру на 1. Если она больше 1, то после уменьшения - сразу останов, если же младшая цифра равна 0, то вместо нее пишем 9, смещаемся влево и вновь выполняем вычитание. Если уменьшаемая цифра равна 1, то вместо нее пишем 0 и переходим в состояние q 2 .

Состояние q 2 - после записи “0” в каком-либо разряде надо проанализировать, не является ли этот ноль старшей незначащей цифрой (т.е. не стоит ли слева от него в записи выходного слова a 0).

Состояние q 3 - если записанный “0” является старшей незначащей цифрой, то его надо удалить из записи выходного слова.

Те клетки, в которые машина Тьюринга никогда не попадает, оставляем пустыми.

Состояние q 1: если встретили “(”, то сдвиг вправо и переход в состояние q 2 ; если встретили “a 0 ”, то останов.

Состояние q 2: анализ символа “(” на парность, в случае парности должны увидеть “)”. Если парная, то возврат влево и переход в состояние q 3 .

Состояние q 3: стираем сначала “(”, затем “)” и переходим в q 1 .

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

Рассмотрите со школьниками следующие варианты входных слов и попросите их сформулировать, что должна делать машина Тьюринга, каков внешний вид выходного слова, чем с точки зрения машины Тьюринга эти варианты различаются:

aaa ->

a -> выходное слово совпадает с входным, просматриваем входное слово до тех пор, пока оно не заканчивается.

bbb -> выходное слово совпадает с входным, просматриваем входное слово до тех пор, пока оно не заканчивается.

b -> выходное слово совпадает с входным, просматриваем входное слово до тех пор, пока оно не заканчивается.

ab -> выходное слово совпадает с входным, просматриваем входное слово до тех пор, пока оно не заканчивается.

Результат обсуждения. Машина Тьюринга должна “понимать”, по цепочке каких букв она идет, т.е. у нее должно быть как минимум два состояния. Пусть состояние q 1 - движение по цепочке из букв “a ”, а q 2 - состояние движения по цепочке из букв “b ”. Заметим, что цепочка может состоять и из одной буквы. Если мы дошли до конца строки в состоянии q 1 или q 2 , т.е. встретили a 0 , машина должна остановиться, мы обработали всю строку.

Рассмотрим следующие варианты входных слов:

bba -> abb

bbbaab -> aabbbb

aabbbaab -> aaaabbbb

Результат обсуждения. Первый вариант входного слова можно последовательно обработать следующим образом: bba -> bbb -> вернуться к левому концу цепочки из букв “b ” -> abb (заменить первую букву в этой цепочке на “a ”). Для выполнения этих действий нам потребуется ввести два новых состояния и, кроме того, уточнить состояние q 2 . Таким образом, для решения этой задачи нам нужно построить машину Тьюринга со следующими состояниями:

q 1 - идем вправо по цепочке букв “a ”. Если цепочка заканчивается a 0 , то переходим в q 0 ; если заканчивается буквой “b ”, то переходим в q 2 ;

q 2 - идем вправо по цепочке букв “b ”, если цепочка заканчивается a 0 , то переходим в q 0 ; если заканчивается “a ”, то заменяем букву “a ” на “b ”, переходим в состояние q 3 (цепочку вида заменили на цепочку вида );

q 3 - идем влево по цепочке букв “b ” до ее левого конца. Если встретили a 0 или “a ”, то переходим в q 4 ;

q 4 - заменяем “b ” на “a ” и переходим в q 1 (цепочку вида заменяем на цепочку вида .

Задача 7

состояние q 1 - поиск правой (младшей) цифры числа;

состояние q 2 -умножение очередной цифры числа на 2 без прибавления 1 переноса;

состояние q 3 - умножение очередной цифры числа на 2 с прибавлением 1 переноса.

Машина Тьюринга для этой программы выглядит тривиально просто - в ней всего одно состояние. Такая машина Тьюринга выполняет следующие действия: стирает самый правый штрих, ищет разделитель (пустую ячейку) и в эту пустую ячейку помещает штрих, тем самым сформирована непрерывная последовательность штрихов длины n + m .

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

В этом случае их программа выглядит следующим образом:

состояние q 1 -поиск разделителя;

состояние q 2 -передвинули штрих;

состояние q 3 -проверка на конец (все ли штрихи передвинули).

На примере этой задачи четко видно, как часто дети пытаются решить задачу уже знакомыми способами. Мне кажется, что, предлагая ученикам задачи на составление машин Тьюринга, мы развиваем способность к нахождению необычных решений, развиваем способность творчески думать!

Эта задача кажется школьникам достаточно легкой, но трудности возникают с остановом машины Тьюринга. Ниже приведен один из возможных вариантов машины Тьюринга для этой задачи.

Идея решения (условие останова). На ленте есть два исходных массива штрихов.

Штрихи начинаем стирать с левого конца массива m . И поочередно стираем самый левый штрих в массиве m и самый правый штрих в массиве n . Но прежде чем стереть правый штрих в массиве n , проверяем, единственный он (т.е. последний, который надо стереть) или нет.

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

Состояние q 1 - поиск разделителя между массивами штрихов при движении справа налево;

состояние q 2 - поиск левого штриха в массиве m ;

состояние q 3 - удаление левого штриха в массиве m ;

состояние q 4 - поиск разделителя при движении слева направо;

состояние q 5 - поиск правого штриха в массиве n ;

состояние q 6 - проверка единственности этого штриха в массиве n , т.е. определяем, был ли он последним;

состояние q 7 - если он был последним, то останов, иначе переход на новый цикл выполнения алгоритма.

При решении этой задачи следует обратить внимание на правильное выписывание алфавита:

A = {a 0 , 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, Д, А, Н, Е, Т}.

Состояние q 1 -поиск правого конца числа;

состояние q 2 -анализ младшей цифры числа; если она равна “0” или “5”, т.е. число делится на 5, то переход в состояние q 3 , иначе переход в состояние q 5 ;

состояние q 3 -запись буквы “Д” справа от слова на ленте;

состояние q 4 -запись буквы “А” справа от слова и останов машины;

состояние q 5 -запись буквы “Н” справа от слова;

состояние q 6 -запись буквы “Е” справа от слова;

состояние q 7 -запись буквы “Т” справа от слова и останов машины.

Свойства машины Тьюринга как алгоритма

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

Дискретность. Машина Тьюринга может перейти к (к + 1)-му шагу только после выполнения к- го шага, т.к. именно к- й шаг определяет, каким будет (к + 1)-й шаг.

Понятность. На каждом шаге в ячейку пишется символ из алфавита, автомат делает одно движение (Л, П, Н), и машина Тьюринга переходит в одно из описанных состояний.

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

Результативность. Содержательно результаты каждого шага и всей последовательности шагов определены однозначно, следовательно, правильно написанная машина Тьюринга за конечное число шагов перейдет в состояние q 0, т.е. за конечное число шагов будет получен ответ на вопрос задачи.

Массовость. Каждая машина Тьюринга определена над всеми допустимыми словами из алфавита, в этом и состоит свойство массовости. Каждая машина Тьюринга предназначена для решения одного класса задач, т.е. для каждой задачи пишется своя (новая) машина Тьюринга.

ОТ РЕДАКЦИИ

Все приведенные в статье задачи можно решить просто в тетради, начертив информационную ленту и программу-таблицу. Но можно сделать этот процесс более увлекательным и наглядным: воспользоваться машинной реализацией - интерпретатором машины Поста и машины Тьюринга “Algo2000”, созданным Радиком Зартдиновым. Программа обладает интуитивно понятным интерфейсом, и требования у нее самые умеренные: компьютер IBM PC AT 486 и выше, наличие операционной системы Windows"95/98/NT.

Посмотрим в общих чертах, как работает “Algo2000”.

В меню программы выберем пункт Интерпретатор и укажем, с какой машиной мы хотим работать (в нашем случае это “машина Тьюринга”).

Перед нами появится поле машины Тьюринга.

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

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

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

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

Поле программы будет выглядеть так:

Формат команды в каждой ячейке - aKq. Здесь:
a - новое содержание текущей ячейки (новый символ внешнего алфавита, который заносится в текущую ячейку), K - команда лентопротяжного механизма машины Тьюринга (влево, вправо, стоп), q - новое внутреннее состояние машины Тьюринга.

Кнопка запустит программу. Если выполнение не было приостановлено, то оно всегда начинается с нулевого внутреннего состояния Q0.

Программу можно выполнить по шагам. Для этого нажмите на кнопку на панели инструментов (если кнопки не видны, нужно выбрать пункт меню Вид | Панель инструментов ) или выберите в главном меню Пуск | Пошагово . Если необходимо полностью прервать выполнение программы, то это можно сделать с помощью кнопки на панели инструментов или с помощью главного меню (Пуск | Прервать ). Пункт меню Скорость позволяет регулировать скорость выполнения программы.

Выполнение программы будет идти до тех пор, пока не встретится команда “Стоп” или не возникнет какая-нибудь ошибка.

При возникновении вопросов в ходе работы с программой-интерпретатором обращайтесь к справочному файлу Algo2000.hlp . Его, так же, как и саму программу “Algo2000”, можно найти на сайте газеты “Информатика” http://inf.1september.ru в разделе “Download”.

Искусственный интеллект (ИИ, англ. Artificial intelligence, AI) - наука и технология создания интеллектуальных машин, особенно интеллектуальных компьютерных программ. ИИ связан со сходной задачей использования компьютеров для понимания человеческого интеллекта, но не обязательно ограничивается биологически правдоподобными методами.

Что такое искусственный интеллект

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

В начале 1980-х гг. ученые в области теории вычислений Барр и Файгенбаум предложили следующее определение искусственного интеллекта (ИИ):


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

Основные свойства ИИ - это понимание языка, обучение и способность мыслить и, что немаловажно, действовать.

ИИ – комплекс родственных технологий и процессов, развивающихся качественно и стремительно, например:

  • обработка текста на естественном языке
  • экспертные системы
  • виртуальные агенты (чат-боты и виртуальные помощники)
  • системы рекомендаций.

Национальная стратегия развития искусственного интеллекта

  • Основная статья: Национальная стратегия развития искусственного интеллекта

Исследования в сфере ИИ

  • Основная статья: Исследования в сфере искусственного интеллекта

Стандартизация в области ИИ

2019: Эксперты ISO/IEC поддержали предложение о разработке стандарта на русском языке

16 апреля 2019 года стало известно, что подкомитет ISO /IEC по стандартизации в области искусственного интеллекта поддержал предложение Технического комитета «Кибер-физические системы », созданного на базе РВК , о разработке стандарта «Artificial intelligence. Concepts and terminology» на русском языке в дополнение к базовой английской версии.

Терминологический стандарт «Artificial intelligence. Concepts and terminology» является основополагающим для всего семейства международных нормативно-технических документов в области искусственного интеллекта. Кроме терминов и определений, данный документ содержит концептуальные подходы и принципы построения систем с элементами , описание взаимосвязи AI с другими сквозными технологиями, а также базовые принципы и рамочные подходы к нормативно-техническому регулированию искусственного интеллекта.

По итогам заседания профильного подкомитета ISO/IEC в Дублине эксперты ISO/IEC поддержали предложение делегации из России о синхронной разработке терминологического стандарта в сфере AI не только на английском, но и на русском языке. Ожидается, что документ будет утвержден в начале 2021 года.

Развитие продуктов и услуг на базе искусственного интеллекта требует однозначной трактовки используемых понятий всеми участниками рынка. Стандарт терминологии позволит унифицировать «язык», на котором общаются разработчики, заказчики и профессиональное сообщество, классифицировать такие свойства продуктов на базе ИИ, как «безопасность», «воспроизводимость», «достоверность» и «конфиденциальность». Единая терминология также станет важным фактором для развития технологий искусственного интеллекта в рамках Национальной технологической инициативы – алгоритмы ИИ используют более 80% компаний в периметре НТИ. Кроме того, решение ISO/IEC позволит укрепить авторитет и расширить влияние российских экспертов при дальнейшей разработке международных стандартов.

В ходе заседания эксперты ISO/IEC также поддержали разработку проекта международного документа Information Technology - Artificial Intelligence (AI) - Overview of Computational Approaches for AI Systems, в котором Россия выступает в качестве соредактора. Документ предоставляет обзор современного состояния систем искусственного интеллекта, описывая основные характеристики систем, алгоритмы и подходы, а также примеры специализированных приложений в области AI. Разработкой этого проекта документа займется специально созданная в рамках подкомитета рабочая группа 5 «Вычислительные подходы и вычислительные характеристики систем Искусственного интеллекта» (SC 42 Working Group 5 «Computational approaches and computational characteristics of AI systems»).

В рамках работы на международном уровне делегации из России удалось добиться ряда знаковых решений, которые будут иметь долгосрочный эффект для развития в стране технологий искусственного интеллекта. Разработка русскоязычной версии стандарта, еще и со столь ранней фазы – гарантия синхронизации с международным полем, а развитие подкомитета ISO/IEC и инициация международных документов с российским соредакторством – это фундамент для дальнейшего продвижения интересов российских разработчиков за рубежом», - прокомментировал.

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

По направлению искусственный интеллект ТК «Кибер-физические системы» на базе РВК ведет разработку ряда национальных стандартов, утверждение которых запланировано на конец 2019 – начало 2020 года. Кроме того, совместно с рыночными игроками идет работа по формированию Плана национальной стандартизации (ПНС) на 2020 год и далее. ТК «Кибер-физические системы» открыт для предложений по разработке документов со стороны заинтересованных организаций.

2018: Разработка стандартов в области квантовых коммуникаций, ИИ и умного города

Технический комитет «Кибер-физические системы» на базе РВК совместно с Региональным инжиниринговым центром «СэйфНет» 6 декабря 2018 года начали разработку комплекса стандартов для рынков Национальной технологической инициативы (НТИ) и цифровой экономики . К марту 2019 года планируется разработать документы технической стандартизации в области квантовых коммуникаций , и , сообщили в РВК. Подробнее .

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

Риск для развития человеческой цивилизации

Влияние на экономику и бизнес

  • Влияние технологий искусственного интеллекта на экономику и бизнес

Влияние на рынок труда

Предвзятость искусственного интеллекта

В основе всего того, что является практикой ИИ (машинный перевод, распознавание речи, обработка текстов на естественных языках, компьютерное зрение , автоматизация вождения автомобилей и многое другое) лежит глубинное обучение. Это подмножество машинного обучения , отличающееся использованием моделей нейронных сетей , о которых можно сказать, что они имитируют работу мозга, поэтому их с натяжкой можно отнести к ИИ. Любая модель нейронной сети обучается на больших наборах данных , таким образом, она обретает некоторые «навыки», но то, как она ими пользуется - для создателей остается не ясным, что в конечном счете становится одной из важнейших проблем для многих приложений глубинного обучения. Причина в том, что такая модель работает с образами формально, без какого-либо понимания того, что она делает. Является ли такая система ИИ и можно ли доверять системам, построенным на основе машинного обучения? Значение ответа на последний вопрос выходит за пределы научных лабораторий. Поэтому заметно обострилось внимание средств массовой информации к явлению, получившему название AI bias. Его можно перевести как «необъективность ИИ» или «пристрастность ИИ». Подробнее .

Рынок технологий искусственного интеллекта

Рынок ИИ в России

Мировой рынок ИИ

Сферы применения ИИ

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

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

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

Использование ИИ в целях обороны и в военном деле

Использование в образовании

Использование ИИ в бизнесе

ИИ в борьбе с мошенничеством

11 июля 2019 года стало известно о том, что всего через два года искусственный интеллект и машинное обучение будут использоваться для противодействия мошенничеству в три раза чаще, чем на июль 2019 года. Такие данные были получены в ходе совместного исследования компании SAS и Ассоциации сертифицированных специалистов по расследованию хищений и мошенничества (Association of Certified Fraud Examiners, ACFE). На июль 2019 года такие антифрод -инструменты уже используют в 13% организаций, принявших участие в опросе, и в еще 25% заявили, что планируют их внедрить в течение ближайшего года-двух. Подробнее .

ИИ в электроэнергетики

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

ИИ в производственной сфере

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

ИИ в банках

  • Распознавание образов - используется в т.ч. для узнавания клиентов в отделениях и передачи им специализированных предложений.

ИИ на транспорте

  • Автоиндустрия на пороге революции: 5 вызовов эры беспилотного вождения

ИИ в логистике

ИИ в пивоварении

ИИ в судебной системе

Разработки в области искусственного интеллекта помогут кардинально изменить судебную систему, сделать ее более справедливой и свободной от коррупционных схем. Такое мнение высказал летом 2017 года доктор технических наук, технический консультант Artezio Владимир Крылов.

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

«Ежедневно просматривая новостные сообщения о разработках в области ИИ только поражаешься неисчерпаемости фантазии и плодотворности исследователей и разработчиков в этой области. Сообщения о научных исследований постоянно чередуются с публикациями о новых продуктах, врывающихся на рынок и сообщениями об удивительных результатах, полученных с помощью применения ИИ в различных областях. Если же говорить об ожидаемых событиях, сопровождаемых заметным хайпом в СМИ, в котором ИИ станет снова героем новостей, то я, наверное, не рискну делать технологических прогнозов. Могу предположить, что ближайшим событием станет появление где-то предельно компетентного суда в форме искусственного интеллекта, справедливого и неподкупного. Случится это, видимо, в 2020-2025 году. И процессы, которые пройдут в этом суде приведут к неожиданным рефлексиям и стремлению многих людей передать ИИ большинство процессов управления человеческим обществом».

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

Музыка

Живопись

В 2015 году команда Google тестировала нейронные сети на предмет возможности самостоятельно создавать изображения. Тогда искусственный интеллект обучали на примере большого количества различных картинок. Однако, когда машину «попросили» самостоятельно что-нибудь изобразить, то оказалось, что она интерпретирует окружающий нас мир несколько странно. Например, на задачу нарисовать гантели, разработчики получили изображение, в котором металл был соединён человеческими руками. Вероятно, произошло это из-за того, что на этапе обучения анализируемые картинки с гантелями содержали руки, и нейронная сеть неверно это интерпретировала.

26 февраля 2016 года в Сан-Франциско на специальном аукционе представители Google выручили с психоделических картин, написанных искусственным интеллектом, порядка $98 тыс. Данные средства были пожертвованы на благотворительность. Одна из наиболее удачных картин машины представлена ниже.

Картина, написанная искусственным интеллектом Google.

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

Решение задачи по составлению программы для компьютера для того, чтобы он прошел этот тест, требует большого объема работы. Запрограммированный таким образом компьютер должен обладать перечисленными ниже возможностями:

  • Средства обработки текстов на естественных языках (Natural Language Processing - NLP), позволяющие успешно общаться с компьютером, скажем на английском языке.
  • Средства представления знаний , с помощью которых компьютер может записать в память то, что он узнает или прочитает.
  • Средства автоматического формирования логических выводов , обеспечивающие возможность использовать хранимую информацию для поиска ответов на вопросы и вывода новых заключений.
  • Средства машинного обучения , которые позволяют приспосабливаться к новым обстоятельствам, а также обнаруживать и экстраполировать признаки стандартных ситуаций.

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

  • Машинное зрение для восприятия объектов.
  • Средства робототехники для манипулирования объектами и перемещения в пространстве.

Шесть направлений исследований, перечисленных в данном разделе, составляют основную часть искусственного интеллекта, а Тьюринг заслуживает нашей благодарности за то, что предложил такой тест, который не потерял своей значимости и через 50 лет. Тем не менее исследователи искусственного интеллекта практически не занимаются решением задачи прохождения теста Тьюринга, считая, что гораздо важнее изучить основополагающие принципы интеллекта, чем продублировать одного из носителей естественного интеллекта. В частности, проблему "искусственного полета" удалось успешно решить лишь после того, как братья Райт и другие исследователи перестали имитировать птиц и приступили к изучению аэродинамики. В научных и технических работах по воздухоплаванию цель этой области знаний не определяется как "создание машин, которые в своем полете настолько напоминают голубей, что даже могут обмануть настоящих птиц".

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

Что такое тест Тьюринга: основная концепция

Еще в конце 40-х годов прошлого столетия очень многие ученые умы занимались проблемами первых компьютерных разработок. Именно тогда один из членов некой негосударственной группы Ratio Club, занимавшейся исследованиями в области кибернетики, задался совершенно логичным вопросом: можно ли создать машину, которая бы думала, как человек, или, по крайней мере, имитировала его поведение?

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

История создания

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

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

В принципе, так оно и есть. Для создания мыслящей машины одной имитации мало. Очень многие ученые в качестве примера приводят братьев Райт, которые построили первый самолет, отказавшись от тенденции имитировать птиц, которая, кстати сказать, была свойственна еще такому гению, как Леонардо да Винчи.

Истрия умалчивает, знал ли сам (1912-1954) об этих постулатах, тем не менее в 1950 году он составил целую систему вопросов, которая могла бы определить степень «очеловеченности» машины. И надо сказать, эта разработка и сейчас является одной из основополагающих, правда, уже при тестировании, например, компьютерных ботов и т. д. В реальности же принцип оказался таковы, что пройти тест Тьюринга удалось лишь нескольким программам. И то, «пройти» - сказано с большой натяжкой, поскольку результат тестирования никогда не имел показателя 100 процентов, в лучшем случае - чуть более 50.

В самом же начале своих исследований ученый использовал собственное изобретение. Оно получило название «тест-машина Тьюринга». Поскольку все беседы предполагалось ввести исключительно в печатном виде, ученый задал несколько основных директив по написанию ответов, таких как перемещение печатной ленты влево или вправо, печать определенного символа и т. д.

Программы ELIZA и PARRY

Со временем программы стали усложняться, а две из них в ситуациях, когда применялся тест Тьюринга, показали ошеломляющие на то время результаты. Таковыми стали ELIZA и PARRY.

Что касается «Элизы», созданной в 1960 году: исходя из вопроса, машина должна была определить ключевое слово и на его основе составить обратный ответ. Именно это позволяло обманывать реальных людей. Если такого слова не оказывалось, машина возвращала обобщенный ответ или повторяла один из предыдущих. Однако прохождение теста «Элизой» до сих пор остается под сомнением, поскольку реальных людей, которые общались с программой, изначально подготавливали психологически таким образом, чтобы они заранее думали, что разговаривают с человеком, а не с машиной.

Программа PARRY несколько похожа на «Элизу», но была создана для имитации общения параноика. Что самое интересное, для ее тестирования были использованы настоящие пациенты клиник. После записи стенограмм бесед в режиме телетайпа их оценивали профессиональные психиатры. Лишь в 48 процентах случаев они смогли правильно оценить, где человек, а где машина.

Кроме того, практически все тогдашние программы работали с учетом определенного промежутка времени, поскольку человек в те времена соображал намного быстрее машины. Сейчас - наоборот.

Суперкомпьютеры Deep Blue и Watson

Достаточно интересными выглядели разработки корпорации IBM, которые не то чтобы мыслили, но обладали невероятной вычислительной мощностью.

Наверное, многие помнят, как в 1997 году суперкомпьютер Deep Blue выиграл 6 партий в шахматы у тогдашнего действующего чемпиона мира Гарри Каспарова. Собственно, тест Тьюринга применим к этой машине весьма условно. Все дело в том, что в нее изначально было заложено множество шаблонов партий с невероятным количеством интерпретации развития событий. Машина могла оценивать порядка 200 миллионов позиций фигур на доске в секунду!

Компьютер Watson, состоявший из 360 процессоров и 90 серверов, выиграл американскую телевикторину, обойдя по всем параметрам двух других участников, за что, собственно, и получил 1 миллион долларов премии. Опять же, вопрос спорный, поскольку в машину были заложены невероятные объемы энциклопедических данных, а машина просто анализировала вопрос на предмет наличия ключевого слова, синонимов или обобщенных совпадений, после чего давала правильный ответ.

Эмулятор Eugene Goostman

Одним из самых интересных событий в этой области стала программа одессита Евгения Густмана и российского инженера Владимира Веселова, ныне проживающего в США, которая имитировала личность 13-летнего мальчика.

7 июня 2014 года программа Eugene показала свои возможности в полном объеме. Интересно, что в тестировании приняли участие 5 ботов и 30 реальных людей. Только в 33% случаев из ста жюри смогло определить, что это компьютер. Дело тут в том, что задача осложнялась тем, что у ребенка интеллект ниже, чем у взрослого человека, да и знаний поменьше.

Вопросы теста Тьюринга были самыми общими, правда, для Юджина (Euegene) были и некоторые конкретизированные вопросы о событиях в Одессе, которые не могли остаться незамеченными ни одним жителем. Но ответы все равно заставляли думать, что перед жюри ребенок. Так, например, на вопрос о местожительстве программа ответила сразу. Кода был задан вопрос, находился ли собеседник такого-то числа в городе, программа заявила, что не хочет об этом говорить. Когда собеседник попытался настаивать на разговоре в русле того, что именно произошло в этот день, Юджин открестился тем, что заявил, мол, вы и сами должны знать, чего ж его-то спрашивать? В общем, эмулятор ребенка оказался на редкость удачным.

Тем не менее это все-таки эмулятор, а не мыслящее существо. Так что восстание машин не состоится еще очень долго.

Обратная сторона медали

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