Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.01.2012, 05:18
Аспирант
Посмотреть профиль Найти все сообщения от Даша Соколова
 
Регистрация: 18.01.2012
Сообщений: 58

ИИ для крестиков нолоков
Я искала в поиске и нашла пару статей. но там ни чего не понятно. Кто нибудь уже писал это на javascript?
Ответить с цитированием
  #2 (permalink)  
Старый 20.01.2012, 06:49
Аватар для Tim
Tim Tim вне форума
Профессор
Отправить личное сообщение для Tim Посмотреть профиль Найти все сообщения от Tim
 
Регистрация: 05.06.2009
Сообщений: 1,703

Было дело. Исходники не сохранились, года 4 уже прошло. Там комбинаций то не оч много. Самая интересная это:

- - - | - - - | x - - | x - - | x - x
- x - | o x - | o x - | o x - | o x -
- - - | - - - | - - - | - - o | - - o

Мой алгоритм следил за ситуацией и если возможно пытался сделать такую вилку. Ес-но не допускал ставить себя в подобные ситуации. Выиграть у него было не возможно, и он мне быстро наскучил. В крестиках-ноликах вообще тока 2 способа выиграть. 1: вилка, 2: противник откровенно тупанул (впрочем вилка это тоже этот-же способ).

Я имею ввиду классический вариант с полем 3х3. С большим полем я думаю опять всё сведётся с нескольким способам ставить вилку и всё.
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)

Последний раз редактировалось Tim, 20.01.2012 в 07:16.
Ответить с цитированием
  #3 (permalink)  
Старый 20.01.2012, 15:38
Профессор
Отправить личное сообщение для with-love-from-siberia Посмотреть профиль Найти все сообщения от with-love-from-siberia
 
Регистрация: 14.12.2009
Сообщений: 155

ИИ - искусственный интеллект? Для крестиков-ноликов? Для этой игры достаточно знать выигрышную стратегии. В данном случае выигрышная стратегия первого игрока - занять центр. Задача второго игрока - занять углы.
Ответить с цитированием
  #4 (permalink)  
Старый 22.01.2012, 13:16
Профессор
Отправить личное сообщение для alexan0308 Посмотреть профиль Найти все сообщения от alexan0308
 
Регистрация: 11.04.2011
Сообщений: 207

Сообщение от Tim Посмотреть сообщение
Мой алгоритм следил за ситуацией и пытался сделать такую вилку. Выиграть у него было не возможно.
Попроще алгоритм для ИИ можно сделать наверно так:
1. Перед каждым ходом ИИ проверяет, нет ли угрозы (два идущие подряд крестика противника).
2. Если угроза есть, закрывает. Если угрозы нет, рандом на свободное место.

Тогда комп можно выиграть, и комп не выглядит совсем уж тупым... И реализовать легко....
Ответить с цитированием
  #5 (permalink)  
Старый 22.01.2012, 13:54
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от alexan0308 Посмотреть сообщение
Попроще алгоритм для ИИ можно сделать наверно так:
1. Перед каждым ходом ИИ проверяет, нет ли угрозы (два идущие подряд крестика противника).
2. Если угроза есть, закрывает. Если угрозы нет, рандом на свободное место.

Тогда комп можно выиграть, и комп не выглядит совсем уж тупым... И реализовать легко....
рандом на свободное место :/

вообще, алгоритм есть на википедии. вам осталось только это описать в коде.
Ответить с цитированием
  #6 (permalink)  
Старый 24.01.2012, 12:09
Профессор
Отправить личное сообщение для alexan0308 Посмотреть профиль Найти все сообщения от alexan0308
 
Регистрация: 11.04.2011
Сообщений: 207

Действительно, "Лучшее" - враг "хорошего". Я просто предложил легко реализуемый алгоритм.
Ответить с цитированием
  #7 (permalink)  
Старый 24.01.2012, 14:42
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

И почему с этой бедной игрой у людей всегда такие сложности?
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #8 (permalink)  
Старый 24.01.2012, 16:27
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от alexan0308 Посмотреть сообщение
Действительно, "Лучшее" - враг "хорошего". Я просто предложил легко реализуемый алгоритм.
действительно другой вариант фразы - Perfection kills.
Ответить с цитированием
  #9 (permalink)  
Старый 24.01.2012, 21:49
Аспирант
Посмотреть профиль Найти все сообщения от Даша Соколова
 
Регистрация: 18.01.2012
Сообщений: 58

Сообщение от trikadin Посмотреть сообщение
И почему с этой бедной игрой у людей всегда такие сложности?
С игрой сложностей нет, просто решила попробовать написать первый алгоритм принимающий решения в зависимости от среды.
Ответить с цитированием
  #10 (permalink)  
Старый 24.01.2012, 21:54
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от Даша Соколова
С игрой сложностей нет, просто решила попробовать написать первый алгоритм принимающий решения в зависимости от среды.
Это как? Если комп слабый - алгоритм расстраивается и проигрывает?
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
HTA-приложение для радио Pianorama Magneto Ваши сайты и скрипты 42 22.01.2012 08:34
Новая система управления сайтом Scripto CMS deepslam Ваши сайты и скрипты 38 31.01.2011 14:55
Модуль для работы с модулями JSprog Ваши сайты и скрипты 29 02.09.2009 13:31