Шахматы - как вообще?
Привет всем! Возникла необходимость познать как во всяких шахматных программах(прим. Cheesmaster) работает противник. Т.е. как компьютер играет в шахматы, как выбрать лучший ход, продумать все.. Примерный алгоритм подскажите хоть? =)
|
Ответ: Шахматы - как вообще?
вот почитай : http://artema.fopf.mipt.ru/ai/chessalg.html
А вообще гугл на фразе "алгоритм шахмат" выдает много чего по этой теме :) |
Ответ: Шахматы - как вообще?
Спс H@NON! =)
Конечно я первым делом в гугл сбегал, но там таких вещей начитался страшных, что решил пойти по пути меньшего сопротивления и спросить тут, вдруг че готовенькое покажут ;) |
Ответ: Шахматы - как вообще?
да все просто. чисто сам алгоритм создания поля и проверки ходов реализуется массивом и его перебором. т.е. есть поле(читай массив) 8х8
далее есть массив фигур, или тип, или я например из файла грузил (весьма удобно и реализовать можно не только шахматы, а вообще что угодно простым добавлеением файлов новых фигур) в этом файле (массиве) указываешь возможные ходы фигуры. в виде смещений по х и у. т.е. все варианты начиная от центра. т.е. для пешки например это будет всего одна кобинация(вперед(смещение по у на 1)) без учета первого хода, когда пешка может больше, чем на 1 сходить. ну эт уже детали. для слона, например, надо учитывать все возможные диагонали. т. е. от нижнего левого угла до правого верхнего и наоборот. и также другую диагональ сколько там вариантов сами считайте, мне лень. ну а потом все просто. проверяем циклом все эти комбинации убираем из них те, которые выходят за пределы поля и получаем массив допустимых ходов. когда ход сделан проверяем соответствует ли он этому массиву. в общем все просто. а вот ИИ... тут уже куда сложнее. ибо тут надо учитывать преоритетность ходов, ценность фигур, стратегию, тактику... |
Ответ: Шахматы - как вообще?
Цитата:
|
Ответ: Шахматы - как вообще?
ну ну... напишешь грамотный ИИ для шахмат я те памятник поставлю. =)
|
Ответ: Шахматы - как вообще?
avel, Просто смотря на сколько ходов вперёд просчитывать. Чем больше, тем сложнее будет обыграть ИИ, но и времени на рассчёты много потребуется, медленно думать будет.
|
Ответ: Шахматы - как вообще?
ну рассчет ходов это еще не все. если машина тупо выбирает наиболее удачый ход, то обыгрывается достаточно просто. всякими гамбитами и пр. так что тут все не так просто, как кажется...
|
Ответ: Шахматы - как вообще?
Сделать шахматы сетевыми.
Зачем рассчитывать алгоритм? Пускай приматы мозги напрягают хD |
Ответ: Шахматы - как вообще?
Ну вы даете
Программы для игры в шахматы разрабатывают гении ГОДАМИ Если вы задаете такие вопросы, то вам даже в шашки не научить комп играть (шахматное ИИ на 2 порядка сложнее шашечного) Это высший пилотаж алгоритмики и дается он немногим |
Ответ: Шахматы - как вообще?
tormoz, Ну я же говорю про элементарный ИИ, который просто будет просчитывать игровую ситуацию на несколько ходов вперёд и выбирать самую оптимистичную для себя ветвь развития событий =)
|
Ответ: Шахматы - как вообще?
Phantom_wc
а неелементарный чем отличается от того что ты описал ? разве что к нему базу дебютов и ендшпилей присойденяют |
Ответ: Шахматы - как вообще?
jimon, неэлементарный - это то, что имел ввиду tormoz, просто я хз какие аццкие алгоритмы он подразумевал. А вообще человеку проще играть в шахматы наверно потому, что человек видит ситуацию в целом и он не просчитывает все возможные ходы. Человек сразу видит какие ветки просчитывать не имеет смысла.
|
Ответ: Шахматы - как вообще?
откуда ты знаешь что в мозгах происходит? может и просчитывается каждый вариант, только незаметно.
|
Ответ: Шахматы - как вообще?
ну насчет того кому проще играть я даже и не знаю... ибо есть у меня одна программка, которую я пока еще ни разу не выиграл... =)
|
Часовой пояс GMT +4, время: 14:28. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot