Робот играет в бильярд

Сегодня утром мне показали по Первому каналу Робота, играющего в бильярд. Видимо, как пример думающей машины. Тот, как заправский игрок, обошёл стол, прикидывая «в уме» варианты удара. Выбрал «с его точки зрения» наилучший. Ударил, и отправил шар в лузу. А мне сообщили, что этот Робот поедет на чемпионат мира по бильярду между машинами. Ну, не круто ли? …

Милые мои! Как же вы заблуждаетесь. Что значит взгляд неспециалиста. Именно то, о чём я говорил в предыдущей статье «Почему я такой злой?».

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

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

Да, человек играет неровно. Он ошибается. Он срывается. Но он самосовершенствуется на глазах. И старается «два раза на одни и те же грабли не наступать». А машины этого не умеют! Мы не умеем, как это сделать…

Поэтому и проводятся между ними чемпионаты отдельно от людей. Они – ДРУГИЕ. Люди пока ещё не понимают: как они думают? как обучаются? как находят новые нестандартные решения, которые до сих пор ещё не были известны?

Вот если бы была действительно создана машина способная думать, то такого Робота можно было бы, как «новичка» пустить за бильярдный стол, и он бы начал играть, играть, играть… И через два месяца стал бы обыгрывать всех людей. Вот это был бы ПРОРЫВ в области создания Искусственного Интеллекта.

А пока об этом остаётся лишь мечтать.

13:48:43 06.06.2011



P.S.

Существует такое понятие в теории автоуправления – «адаптивные системы». Они подстраивают свои параметры системы управления под изменяющуюся ситуацию. Но, увы! Как показывают многочисленные эксперименты, эффективность таких «адаптивных» алгоритмов лишь на 10% выше обычных.
 
Они тоже построены по мёртвому принципу. Экспериментальным путём определяется либо таблица зависимости параметров системы управления для различных условий, и потом автомат «шурует» в пределах этой жёстко заданной таблицы. Либо выводятся функциональные зависимости – формулы (по сути дела, та же самая таблица, только свёрнутая в численные алгоритмы), и тогда машина всего лишь быстро вычисляет значение, вместо того, чтобы брать его из таблицы.

Но всё это «мышление» в кавычках, закладывает в машину человек. Заранее рассчитывая в каком диапазоне значений будет работать автомат. Видимо, для того, чтобы сделать самообучающуюся машину – надо давать ей возможность ОШИБАТЬСЯ. А ведь это очень опасно. Но если машина не будет пробовать варианты алгоритмов, которые ещё ни кто не пробовал – как она сможет отыскать что-то новое? Ни как!

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

А человек думает иначе.

У того же шахматиста спроси: «Почему ты в этой ситуации так сыграл?» И он не сможет ответить. Почему-то решил, что так будет лучше. Сыграл на интуиции. И оказался прав. Он даже начнёт обосновывать логически свой выбор, чтобы ответить на вопрос. Но будет это делать «задним числом». А в момент принятия решения, он этого объяснения не имел! Как же он принимал решение? Наобум?

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

Вот как эту «мудрость» смоделировать для машины?

Вот то-то и оно…

14:30:51 06.06.2011



P.P.S.

Можно было бы попробовать создать «компьютер в компьютере». То есть модель вычислительной машины, которая бы реально не существовала, а была бы полностью под контролем реальной машины, под её операционной системой. И тогда можно было бы стараться написать такую программу, которая бы пробовала любые алгоритмы на модели и не бояться, что компьютер начнёт выполнять всякую «ерунду», недопустимые инструкции, бесконечные циклы, зависания или даже генерировать «вредительские коды». Такую программу можно было бы наделить некоторыми критериями, по которым она сама могла бы судить «решена задача» или нет? Безнадёжен очередной алгоритм, или в нём есть рациональное зерно, и он всего лишь «нуждается в улучшении»?

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

Но проблема не в устойчивости или управляемости «виртуальной машины». Проблема в отсутствии программы управления.

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

А книги, которые подобно знаменитой монографии Дональда Кнута называются «Искусство программирования», они написаны для ЖИВЫХ ЛЮДЕЙ. Они не формальны. И предполагают, что читающий будет «очень и очень не глуп», способен самостоятельно думать. И все их выкладки и описания способов программирования могут интерпретироваться только человеком. А машина понять и принять из них ничего не может.

Для того чтобы понять, как мы думаем – надо разъять процесс мышления на части. Но для этого надо либо проникнуть в чужую голову, что ещё недоступно. Либо разъять свой собственный процесс мышления – что чревато… Можно ведь и «с катушек слететь». И вообще, как разъять свой собственный алгоритм сочинения, если то и дело оказывается, что идеи генерирует НЕКТО из подсознания?

Вот тут мы и упираемся в глухую стену.

15:19:41 06.06.2011


Рецензии