Данная заметка является логическим дополнением цикла статей о современных покер ботах, за авторством Томаса Баккера, с первой и второй частями которого вы можете ознакомиться на страницах нашего сайта.
Руди Амид, 27 ноября 2011 года
«Жил был бот»
Во время обучения в колледже я основательно подсел на IRC, где проводил большую часть свободного времени. Не считая сторонних занятий, на тот момент я проходил курс обучения программированию ‘C’ и ‘Unix’ систем, поэтому в качестве курсовой, я взялся за разработку покер бота. Вспоминая об истории создания этого бота сегодня – я испытываю множество положительных эмоций, и, безусловно, я многому научился будучи его непосредственным конструктором. В какой-то момент времени, для поддержания производительности и дальнейшего развития моего бота, я передал его код своим коллегам, Пьеру Фурнье и Иву Лепажу. Они занимались совершенствованием бота так долго, как это представлялось возможным, пока в конечном итоге не пришла пора его ухода в отставку. Этим людям я благодарен за участие и преданность, с которой они отнеслись к начатому мной проекту.
Нижеследующий текст это заметка Пьера для сайта Wikipedia, где он изложил основную информацию о нашем боте. К сожалению, администраторы сайта удалили эту заметку в связи с «дефицитом интереса» к ней, поэтому я оставляю данный текст здесь, для наших потомков.
PBot
Первоначальный создатель – Руди Амид
Официальный запуск – июнь 1993 года
Язык создания – C
Операционная система – Unix-подобная
Доступные версии – Английская
Тип – IRC bot
PBot – компьютерная программа, функционирующая на серверных платформах EFnet сети Internet Relay Chat, в рамках канала #poker, и позволяющая пользователям играть в покер на виртуальные деньги. Настроенный для игры в стандартный пятикарточный дро-покер, PBot мог участвовать в играх с количеством игроков до 6 и использовался по своему прямому назначению с 1993-го, по 2002-ой годы.
История
Оригинальным автором PBot’а является Руби «Radix» Амид. В начале 1993-го, после успешного релиза его собственного проекта – IRC игры «MooBot», Руби был заинтересован в изучении ботов, которые бы умели играть в интернет покер, в связи с чем герой ожидал подобной разработки в исполнении сторонних программистов. Оказалось, однако, что созданием подобного продукта не занимается никто, поэтому в феврале 1993-го «Radix» начал самостоятельное написание искусственного интеллекта.
Эпоха Руби
Руби Амид завершил работу над альфа версией PBot’а через несколько недель после начала разработки – в конце февраля, чтобы приступить к тестированию получившегося продукта на серверах EFnet. Очевидно, процесс испытаний проходил не так гладко, как того ожидал автор: бот оказался пронизан всевозможными, предсказуемыми и совсем неожиданными багами, которые проявились уже на стадии тестирования пользовательского интерфейса. Бот был написан с помощью скриптов ircII, в то время как модель, отвечающая за игровые процессы – на ‘C’. Руби Амиду не потребовалось слишком много времени, чтобы осознать не самый выдающийся, в плане производительности, потенциал скриптов ircII, однако их использование было наилучшим способом наладить код и избавить программу от злополучных багов – перекомпилировать оболочку не убивая бота.
К марту 1993 года «Radix» начал объединение отдельных модулей своей программы, переписывая PBot’а на языке программирования ‘C’, в процессе чего все исполнительные блоки бота превратились в один большой код. Благодаря такому ходу автору больше не нужно было полагаться на медлительные скрипты ircII, а сам бот прибавил в гибкости, став программируемым. С этого момента PBot научился концентрироваться на игре в покер самостоятельно, без помощи оператора.
В конце марта этого же года PBot был подготовлен к закрытому бета-тестированию. Руби Амид собрал небольшую группу заинтересованных пользователей IRC, чтобы обсудить некоторые идеи и поиграть в карты. Благодаря полученным отзывам были осуществлены многочисленные модификации бота, однако даже от наплыва свежих идей – тонкая настройка этого ИИ не стала легче. Медленно, добавляя по одной новой функции за раз, бот проверялся на ошибки и проходил процесс отладки. Несмотря на невероятно скромные темпы прогресса, «Radix» был полон решимости завершить разработку PBot’а на рабочей версии, зная, что его продукт будет лучшим представителем искусственного интеллекта во всём IRC. После сдачи экзаменов в своём учебном заведении, в апреле 1993-го, Руби Амид стал посвящать созданию PBot’а полный рабочий день, проводя бесчисленные часы за его модификацией при поддержке заинтересованных бета-тестеров, которые продолжали сыпать идеями по совершенствованию бота. Наконец, в июле 1993-го, Руби Амид завершил работу над своим детищем и свет увидела его первая рабочая версия. На этом, однако, модифицирование PBot’а не закончилось, хотя, по мнению автора – пришло время представить полученный продукт широкой общественности.
В августе 1993-го Руби Амид покинул страну на несколько месяцев, передав все необходимые для поддержания и совершенствования действенности PBot’а данные в руки Пьера «Lyverbe» Фурнье.
Эпоха Фурнье
К этому моменту, цель создания PBot’а – справляться с играми, организовываемыми в чатах IRC [речь идёт не только о непосредственном участии в играх, но и в их организации, т.е. исполнения роли дилера], была успешно достигнута. Поэтому целю Пьера «Lyverbe» Фурнье стало написание документации для инновационного программного обеспечения, а также его дальнейшее совершенствование. Таким образом PBot обзавёлся следующими функциями:
• Возможность подстройки пользователями;
• Системой банов;
• Защиту от флуда;
• Базу данных учётных записей;
• Возможность соединения с помощью протокола DCC (прямое соединение пользователь-к-пользователю);
• Полное онлайн руководство
… и многое другое.
По мере роста возможностей PBot’а, его исходный код увеличивался и на этом этапе достиг просто безумных размеров. Из-за этого файл с кодом приходилось разделять на несколько файлов, половина из которых отвечала за управление ботом, а другая – за соединение бота с IRC. Возможность подстройки пользователями, вошедшая в функционал новой версии PBot’а, открывала доступ к командам, с помощью которых сторонние игроки могли контролировать процесс организационной/дилерской части работы PBot’a. Благодаря этому «Lyverbe» приобрёл дополнительные мощности в совершенствовании своего ИИ, в процесс которого теперь были вовлечены многие другие пользователи.
Через некоторое время после официальной публикации, PBot стал очень широко известным явлением. Девятого января 1995 года у PBot’а появился собственный вебсайт, а также длинный список адресов электронных ящиков, пользователи которых осуществили подписку на новости о знаменитой модели искусственного интеллекта. В течение следующего года также состоялись две конвенции (Монреаль, 4-6 августа 1995-го и Чикаго, 2-3 августа 1996-го), где бот обсуждался в кругу его поклонников.
Эпоха пост-Фурнье
В сентябре 1996 года, спустя 3 года безостановочной работы над механизмами PBot’а, Пьер «Lyverbe» Фурнье решил прекратить занимать этим проектом. Таким образом, первый представитель класса ботов, играющих и помогающих играть в покер, попал в руки девушки-разработчика под никнеймом Cirra, силами которой PBot перешёл на новую серверную платформу Undernet, более молодой аналог EFnet. Незадолго после этого PBot вновь сменил хозяина, оказавшись в руках программиста Jupiter1.
Свою фактическую деятельность PBot прекратил в 2002-ом году. Его исходный код, однако, всё ещё в рабочем состоянии, что означает возможность его реанимации в любой момент.
За время своего 10-летнего существования PBot создал не только новый задел в эволюции разработок непопулярного искусственного интеллекта, но и одно из первых сообществ любителей интернет покера, собственную галерею чемпионов и даже словарь забавных и познавательных терминов.
Источник: http://www.pokeroff.ru
Комментарии