Что касается выкладывания чего-либо на сайте (в группе).
Вы ПОЛНОЦЕННЫЙ участник группы, если считаете что ДЛЯ ГРУППЫ ЭТО
ПОЛЕЗНО, выкладывайте. У нас есть около 100Мб места, если его будет не
хватать, тогда уже и подумаем, что удалять в первую очередь.
On 14 фев, 07:07, "DS" <agpe...@gmail.com> wrote:
> Всем привет. Могу выслать для ознакомления свою реализацию интерфейса
> агента LMC1 на C++, а также примеры программ-участников (в том чисте
> тройку лидеров), примеры игр, программу-судью и объяснить если надо
> как это все работает.
> Вот тут есть некоторые мои соображения по интерфейсу агент <-> мир и
Многие выказывают интерес к проекту, многие когда-то предлагали
похожее (нескольким авторам похожих идей на форумах, я лично писал
приглашения на емаил и никакого ответа). И что? а ничего...
> Настоящий проект (АИПолигон) практически реализация того, что вы
> описываете (вариант с супервизором). Уже определена первая игра (для
> того, что бы прощупать почву под ногами, выявить организационные
> проблемы и т.д.) и что же я вижу? 6 человек. 5 до опубликования движка
> (супервизора) и примеров к первому турниру, и 1 после.
> Теперь уберите отсюда процент пассивных участников (боюсь даже цифры
> предсказывать) и сколько остается потенциальных игроков для турнира?
А для начала достаточно откликнувшихся. Насколько я помню, вы обещали
несколько вариантов. DS Уже упямянул о победителях LMC1, их тоже
включим, плюс случайный игрок. Дайте немного времени, работа идет. Я
думаю, главное не столько турнир, сколько обсуждение идей после его
проведения, выяснение, например, почему "программа DS почему-то вот
> Турниров вообще всяких полно...
Спасибо за ссылку. Я конечно знал о том что турниров полно, но у меня
не было такого аккуратного описания.
> В этом смысле пример LMC1 показателен. Изначально
>была объявлена очень амбициозная цель - разработать
> "обобщенный алгоритм обучения". На этот вызов люди
>и откликнулись более-менее. А вот как только им стало
>известно зачем это все компании-организатору,т.е.
>истинные ее цели, энтузиазма резко поубавилось.
Правильно, вот я и хочу организовать не СВОИ турниры, а НАШИ турниры.
Что бы группа сама (ну по демократическим правилам) сама выбирала
направление развития (темы, домайны, сложность и т.д.)
>Нужен вызов, второй тест Тьюринга, настолько наглый
>чтобы о нем заговорили СМИ
Вообще-то, я рассчитывал не на мировую общественность. Я увидел, что
на русскоязычных форумах посвященных ИИ теме, слишком много болтовни и
НОЛЬ действия. Но так же, довольно много обсуждений, было посвящено
теме турниров. Многие писали, что хотели бы принимать в них участия и
т.д.
В основном, проблемы начинали обсуждать с точки зрения, а какая должна
быть задача, а какой должен быть интерфейс и т.д. Вот я и сделал
платформу (надеюсь) достаточно универсальную, что бы на ее основе
можно было реализовывать различные игры и интерфейсы. Начиная с
простых, и углубляясь в более сложные.
>КНБ - интересная, но очень специальная задача под
>которую уже выдумана куча всяких стратегий
Цель КНБ протестировать организационные проблемы. У меня нет опыта в
проведении подобных мероприятий, и по ходу развития сталкиваешься с
разными трудностями и проблемами (на пример: как избежать
мошенничества в турнире и т.д.)
>Если вы хотите сами проверить какие-то свои идеи,
>то турниры и участники ни к чему.
Нет, не хочу. Исследования, которыми я занимаюсь, не связанны (пока) с
АИП проектом. Меня интересуют не конкурирующие системы, а
кооперативные и до турниров там далеко, да и нет пока стремления в них
учувствовать (я имею в виду с тем, что я в лаб. делаю).
Спорно... турнир между 5 участниками ... причем я не уверен, что все 5
будут писать...
> Насколько я помню, вы обещали несколько вариантов.
Обещал...
>DS Уже упямянул о победителях LMC1, их тоже
> включим
А вот это сомнительно... LMC1 используют совсем другой интерфейс
взаимодействия.
>плюс случайный игрок.
А это кто такой?
> Дайте немного времени, работа идет.
Вооот! давно уже могли бы эти два слова: "работа идет", суда написать.
А то как я (и особенно те, кто заходят глянуть: "а что тут твориться",
должны об этом догадываться.
>Я думаю, главное не столько турнир, сколько обсуждение идей после его
> проведения, выяснение, например, почему "программа DS почему-то вот
> именно в КНБ рвет тройку победителей LMC1 как газету"
Абсолютно с вами согласен. Но LMC1 может быть к КНБ еще и подойдет, но
дальше.... А обсуждать, почему стратегия X порвала стратегию Y... не
очень интересно. Интересней, почему она порвала 10-20 стратегий, а для
этого кол-во участников должно больше быть.
Все правильно. Именно поэтому я и говорю о вызове. Чтобы каждому, кто
считает, что он что-то понимает в ИИ можно было сказать: а сходи-ка,
милок, вот сюда и поучаствуй в турнире. Посмотрим чего ты стоишь. А
чтобы не было отговорок типа задача не такая или интерфейс не такой и
нужно ставить задачу в самом общем виде, и интерфейс делать наиболее
универсальный. Такой и мировой общественности не стыдно показать.
> В основном, проблемы начинали обсуждать с точки зрения, а какая должна
> быть задача, а какой должен быть интерфейс и т.д. Вот я и сделал
> платформу (надеюсь) достаточно универсальную, что бы на ее основе
> можно было реализовывать различные игры и интерфейсы. Начиная с
> простых, и углубляясь в более сложные.
Я бегло посмотрел и, насколько понял, под каждую игру вы выдумываете
своего судью, свою систему команд и т.д. Причем, поправьте если это не
так, в каждом случае вам приходится переписывать код вместо того чтобы
просто менять входные данные. Интерфейс LMC, который лично меня в
плане универсальности не совсем устраивает, и то был на порядок
универсальнее. Позволял играть в почти любые игры ничего не меняя в
коде. Может не изобретать велосипед? Я, кстати, залил файлы, почитайте
на досуге.
> Цель КНБ протестировать организационные проблемы. У меня нет опыта в
> проведении подобных мероприятий, и по ходу развития сталкиваешься с
> разными трудностями и проблемами (на пример: как избежать
> мошенничества в турнире и т.д.)
На мой взгляд, организационные моменты ни в коем случае не должны
подрывать идеологию проекта. Решить задачу универсального обучения
интересно и престижно. Искать хороший алгоритм для КНБ только потому
что надо с чего-то начать, провести турнир ради турнира - имхо, пустая
трата огромного количества времени.
Да, но я говорил не о протоколАХ более высокого уровня, а о пртоколЕ.
То, что создать единый протокол для множества игр вполне возможно,
наглядно показывает пример LMC1.
> Да, вы правы, что бы описать новый протокол, нужно писать
> нового судью. И я считаю, что это правильно. Слушком универсальные
> интерфейсы слишком сложные, либо слишком громоздкие (т.е. либо огромное
> количество различных элементов, либо пара тройка базисных, но тогда их самих
> будет огромное кол-во).
Ничего подобного. Исходные тексты моей реализации протокола LMC1 на C+
+ вместе с логикой игрока, делающего ходы случайно, занимает на диске
менее 10 килобайт. При этом добрую половину из них составляют
комментарии.
> Вы правильно заметили про идеологию. Идеология АИП это не создавать один
> вариант турнира, с супер универсальным интерфейсом (хота это не исключается
> и даже находится в перспективе), а создавать различные мини турниры, но
> желательно большого разнообразия. Цель ЛМС заключалась в основном,
> распознать задачу, а уже после этого эффективно с ней справиться. Как
> видите, это два разных задания.
Боюсь вы немного заблуждаетесь насчет LMC. Никакого распознавания
задачи там нет и в помине. Напротив, организаторы сделали все чтобы
участники сосредотачивались не на решении частных задач и их
распознавании, а на решении общей задачи обучения игре в рамках
предоределенного интерфейса. Игры, которые были доступны участникам в
начале разработки агентов, предоставлялись просто для примера и
тестирования ботов. Ни одна из них не участвовала в соревнованиях.
Соответственно и распознавания никакого не было. Игры, на которых
реально проводился чемпионат, стали известны участникам только по его
окончании. И это правильный подход, на мой взгляд, в отличие от
следующего:
> 1. турнир по задачи А
> 2. турнир по задачи Б
> 3. турнир по задачи В
> 4. турнир по распознаванию задач А,Б,В (здесь уже нужен как минимум
> универсальный интерфейс для А,Б,В)
> 5. турнир по А,Б,В,Г - где Г не известна.
....
> Для чего нужно изначально смешивать "карточные" игры с играми "по
> распознаванию образов" или с играми quests, arcads, shutters. Когда-то, это
> надо будет сделать, но для чего столь сложные проблемы в самом начале?
Для того чтобы определенным образом направить мысль разработчика.
Чтобы он думал об ИИ и о том, что он может сделать в рамках
предложенного интерфейса, а не о конкретной игре. Есть только
эффекторы и рецепторы, и через некоторые из последних передается
сигнал подкрепления. Нет никаких игр.
Если вы собираетесь публиковать условия игр заранее, то за
"интеллектуальных" агентов будут думать их создатели, а не сами
агенты. Имеем обычный програмистский турнир. Интересно, познавательно,
но при чем тут ИИ?
Надеюсь вы все же перечитаете вот это: http://www.aicommunity.org/GameDir/LMC1/LMC1.htm,
разберетесь как следует и оцените красоту идеи.
Я имел ввиду : Игры Стратегии, типа Цивилизация, Век Империй и т.д.
@command play
@output Scissors
Rock
@score -1
@command play
@output Paper
Rock
@score 1
@command play
@output Paper
Rock
@score 1
..........(здесь 20 одинаковых ходов)
@command play
@output Paper
Rock
@score 1
Очень интелектуальная партия :-)
Создается впечатление, что у победителей одна из главных стратегий -
тупо повторять ходы противника. А то, что в подборе игр превалируют
основаные на повторах (одна так вобще позволяет победителю без всяких
раздумий получить 100 из 100) уже заранее предопределяет преимущество
таких программ.
А как убили крестики нолики!! За неверный ход любого игрока оба (!??)
противника получают по минус единице. Это извращение! Как при таком
подкреплении вобще можно научится играть и понять, что от тебя
требуется? Я не во всех играх разобрался, но все равно мне кажется,
что эти "готовые" игры и готовый код без правки не годятся.
Да мы и не будем его использовать.
>Создается впечатление, что у победителей одна из главных
>стратегий - тупо повторять ходы противника
Как это не странно, но такая стратегия оказывается очень даже выгодной
в подобных играх.
Лично мне это напоминает поведение некоторых людей, которые копируют
все что увидят.
Типа "Я, Вань, такую же хочу". Так что... вполне интеллектуально, но
не оптимально.
Кстати, если ваш игрок "рвет" победителей , это еще не гарантия, что
он смог бы выиграть турнир.
> Создается впечатление, что у победителей одна из главных стратегий -
> тупо повторять ходы противника. А то, что в подборе игр превалируют
> основаные на повторах (одна так вобще позволяет победителю без всяких
> раздумий получить 100 из 100) уже заранее предопределяет преимущество
> таких программ.
> А как убили крестики нолики!! За неверный ход любого игрока оба (!??)
> противника получают по минус единице. Это извращение! Как при таком
> подкреплении вобще можно научится играть и понять, что от тебя
> требуется? Я не во всех играх разобрался, но все равно мне кажется,
> что эти "готовые" игры и готовый код без правки не годятся.
Да, тут есть т.н. score inconsistence problem, из-за которой боты
часто вместо того чтобы соревноваться начинают кооперировать (этому
кстати тоже нужно еще научиться). Просто не забывайте, что эти игры
лишь примеры. Для реальных игр чемпионата проблема score inconsistence
не характерна.
Вообще, не надо в играх "разбираться". Вы должны думать не о
конкретных играх, а об обобщенном алгоритме обучения. У игр есть
проблемы, но во-первых все боты находятся в равных условиях, а во-
вторых игры можно и переписать.