Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 21.10.2011, 21:57   #1
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию Google AI Challenge Ants

Вчера началось интересное соревнование по программированию - AI Challenge, в этом году написанным игроками ботам предстоит играть в Ants.
Участникам соревнования предстоит реализовать алгоритм, который будет руководить колонией муравьев. На симметричной карте, состоящей из земли и воды (препятствия), каждому боту будут выделены один или несколько муравейников — места, в которых рождаются новые муравьи. Целью игры является захват и уничтожение муравейников противников при этом сохранение и защита своих. За уничтожение чужих муравейников начисляются очки, а за сдачу своего очки вычитаются.

Сайт соревнования http://aichallenge.org

Перевод на русский правил и спецификации игры:
http://habrahabr.ru/blogs/sport_programming/130979/
Хорошее описание игры:
http://habrahabr.ru/blogs/sport_programming/131262/

На русском много чего полезного можно почитать тут:
http://habrahabr.ru/blogs/sport_programming/130457/
http://habrahabr.ru/blogs/sport_programming/130946/
http://habrahabr.ru/blogs/sport_programming/130722/

ЗЫ ну и как же не похвастаться своим ботом:
http://ai-contest.com/profile.php?user=1234
__________________
Я здесь практически не появляюсь!, Skype - ikskor

Последний раз редактировалось xkor, 05.11.2011 в 20:36.
xkor вне форума   Ответить с цитированием
За это сообщение xkor нажился 6 спасибками от:
Старый 26.10.2011, 19:35   #51
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,224
Сказал Спасибо: 4
Имеет 229 спасибок в 182 сообщенях
SeregaZ пока неопределено
По умолчанию

и все равно массовый навал на муравейники противника хорошая стратегия. посмотри игры топового игрока в рейтинге. если он доработает защиту - то будет полный пэ а так проигрывает только в одном случае, если он толпой ломится давить муравейник, а он забит мурашами-хозяевами. они не могут сдвинутся, но и атакующие бестолку толпятся на расстоянии. в это время третий игрок благополучно берет базу топового игрока, так как там нет мурашей - они все бегут после рождения блокировать тот муравейник
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Старый 28.10.2011, 08:56   #52
Местный
 
Аватар для Pinko
 
Регистрация: 31.05.2011
Сообщений: 130
Сказал Спасибо: 287
Имеет 23 спасибок в 22 сообщенях
Pinko пока неопределено
По умолчанию

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

народная мудрость

"Если любишь в жизни риск - форматируй жесткий диск!"
Pinko вне форума   Ответить с цитированием
Старый 28.10.2011, 10:15   #53
Новичок
 
Аватар для Павел Плутахин
 
Регистрация: 28.10.2011
Сообщений: 5
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
Павел Плутахин пока неопределено
По умолчанию

SeregaZ, Спасибо за разъяснения с подключением php, других языков в принципе незнаю. Очень заинтересовался данным проектом, т.к. еще в детстве на "спектруме" писал алгоритмы для таких игр. Есть своя очень интересная стратегия, попробую реализовать. Для начала пытаюсь разобраться, какими коммандами из файла ants.php можно пользоваться.

issueOrder($aRow, $aCol, $direction) каманда на движение муравья в точке $aRow, $aCol по направлению $direction = ('n','e','s','w')
passable($nRow, $nCol) - проверка на препятствие(воды).
unoccupied($row, $col) - проверка на незанятость (в клетке земля, труп или еда)
destination($row, $col, $direction) - возвращает область видимости муровья в виде массива клеток. Зачем здесь направление $direction ?
distance($row1, $col1, $row2, $col2) - дистанция от одной точки до другой (как я понимаю учитано что поле замкнуто циклично)
direction($row1, $col1, $row2, $col2) - 2 направления для достижения 2й точки. (актуально для того что поле замкнуто циклично, и бывает лучше пройти сквозь стенку)

Массивы:
AIM - направления 'n','e','s','w'
RIGHT - Следующее направление при движении по часовой стрелке
LEFT - аналогино пред.
BEHIND - разворот на 180гр.

Если есть свои простые функции, просьба делиться, это очень удобно

Вопросы:
Я лишь двигаю муровьями? или нужно давать еще команды сьесть, напасть? Если нет таких команд, в какой последовательности идет определение, ем я или воюю
Для чего массивы $myAnts, $enemyAnts, $deadAnts, $food - это я так понимаю все что видять все мои мураши?
Как найти муравейник свой, чужой. Где их данные

Последний раз редактировалось Павел Плутахин, 28.10.2011 в 11:02.
Павел Плутахин вне форума   Ответить с цитированием
Старый 28.10.2011, 14:59   #54
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,224
Сказал Спасибо: 4
Имеет 229 спасибок в 182 сообщенях
SeregaZ пока неопределено
По умолчанию

движения мураша достаточно. съедание происходит автоматически, как только муравейка встал рядом с едой. аналогично происходит с убийством другого мураша. увидел чужого, или сваливаешь, или атакуешь, просто бежишь на него. умирают вроде как оба при этом...
муравейник искать только бродя по карте, пока хоть один из твоих мурашей не засекет муравейник. тогда координаты становятся известны "системе", и уже можно что-то думать - атаковать, или заблочить, или еще чо-то
массивы эти видимо содержут в себе данные о твоих мурашах, о увиденных мурашах противника (я не думаю что там инфа обо всех мурашах противника, иначе смысл от "тумана войны", ограниченного зрением муравейки), $deadAnts этот массив видимо служит для "вычитания" мертвых из массива живых, дабы система не продолжала слать команды мертвому мурашу. или может это остаток кода, от отброшенного функционала по отображению мертвых тел муравьев.
$food ну тут все понятно. массив еды знать бы еще - там видно всю еду, или только ту, что в пределах видимости муравьев? если предположить что видно всю еду, а с учетом того, что еда "рожается" симметрично, то сравнивая координаты еды с координатами своего муравейника - можно вычислить координаты чужого муравейника
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Старый 28.10.2011, 15:26   #55
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Цитата:
Сообщение от SeregaZ Посмотреть сообщение
знать бы еще - там видно всю еду, или только ту, что в пределах видимости муравьев?
естесно только та что видно, ты вообще по ссылкам ходил которые я на кидал, там это всё расписано...
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 28.10.2011, 15:34   #56
Новичок
 
Аватар для Павел Плутахин
 
Регистрация: 28.10.2011
Сообщений: 5
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
Павел Плутахин пока неопределено
По умолчанию

Цитата:
Сообщение от SeregaZ Посмотреть сообщение
пока хоть один из твоих мурашей не засекет муравейник
я так понимаю это отследить можно по появлению "мураша из воздуха".
Свои hill-ы можно найти при старте игры по позициям стартовых мурашей.
Павел Плутахин вне форума   Ответить с цитированием
Старый 28.10.2011, 15:41   #57
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Павел Плутахин, вообще то от сервера приходит команда
Код:
h row col owner                      # муравейник строка столбец владелец
и это расписано в спецификации игры на офф сайте и её переводе по первой ссылке на хабр из первого поста этой темы...
правда стандартные боты и заготовки для ботов на разных языках писались когда муравейников ещё не было, так что их "движки" эту команду игнорируют
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 28.10.2011, 15:42   #58
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,224
Сказал Спасибо: 4
Имеет 229 спасибок в 182 сообщенях
SeregaZ пока неопределено
По умолчанию

не не не не из воздуха. там у муравейника есть свой код
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Старый 28.10.2011, 15:45   #59
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

И вообще народ, кончайте строить предположения, почитайте статьи, там уже всё расписано и обсосано...
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 28.10.2011, 15:51   #60
Местный
 
Аватар для SeregaZ
 
Регистрация: 16.08.2009
Сообщений: 1,224
Сказал Спасибо: 4
Имеет 229 спасибок в 182 сообщенях
SeregaZ пока неопределено
По умолчанию

читал. только меня смутил тот лог файл, что создается во временной папке. он правда по сути для третьего лица, который все видит - тем не менее там список еды, которая уже была на момент старта игры, в самом начале, и у них там появление на 0 ходе. вот я и подумал, что этот начальный список координат доступен сразу полностью, а не только в пределах видимости. в пользу этого еще говорит наблюдение за играми, когда муравей, практически после старта - осмысленно бежит за едой далеко за пределами своей видимости.
__________________
хочу картинку в подпись!
SeregaZ вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:48.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!