Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!

Боты Сапёра / ИИ - Как пройти игру

  • Мы начинаем создание Искусственного Интеллекта для игры Сапёр,
    для чего нам потребуется несколько этапов.
    1. Описание и понимание идеи алгоритма.
    2. Ручная проработка алгоритма на практике.
    3. Создание класса для логики ИИ.
    4. Внедрение его в наш проект для тестирования.
    5. Создание бота для чужой игры Сапёр.
  • Дата отправки отчёта: 13 сентября 2016 г.
  • Задание выполнено: за 10 мин.
  • Чему научился: повторение пройденного материала
  • Что было сложным: найти время
  • Комментарии: по поводу внутри игрового алгоритма: пробегать по всему полю в поиске цифр, если нашли клетку с цифрой, то считаем сколько вокруг неё флажков и не открытых клеток, потом отнимаем от этой цифры количество флажков и если это равно 0, то кликаем по цифре, если же не равно 0, смотрим сравниваем полученное число с количеством не открытых клеток, если оно совпало, то ставим флажки на неоткрытых клетках вокруг цифры и так до тех пор, пока не кончатся клетки для обработки подобным образом.

    по поводу считывания данных с чужого сапёра, вариантов несколько, самый простой это анализ клеток поля по цвету который присутствует в них. обычно в сапёрах цифры разноцветные, если же такой способ сложен, можно использовать матрицы пикселов для сравнения типо топологии клеток, подобный способ проблем обычно не имеет, есть ещё один способ, написать хук код, чтобы внедрится в код приложения и получить доступ к массиву данных а там уже дело техники =)
  • Оценка видео-уроку:
Отчёт от 10558 за Боты Сапёра / ИИ - Как пройти игру




Оцени работу

 
Сохранить страницу:

7119. Новопашин Владимир
Новопашин Владимир
ответить
→  Иван Воронин  # Сапёр на C# / Как сделать бота / 2016-09-14 06:38

ZX Spectrumненько!



Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Трудности: Ответить на вопросы.
Алгоритм ии словами? Эм..... ума не приложу. (Есть конечно методы разгадывания, может как-то использовать их для создания ИИ... например здесь https://www.slideshare.net/danielma33/mine-sweeper-mastered ) Считывать цифры - честно не знаю как... Есть конечно методы анализа картинки, и защита от них (каптча), но я от них далёк. Проще всего, полагаю, считывать цвет цифры.
Научился: Когда-то я достаточно хорошо играл в "Сапер", и мой личный рекорд на маленькой карте с 10-ю бомбами - 3 секунды. Среднее время - 7-9 сек.
Трудности: У меня нет четкого представления об алгоритме. Пройти Сапер гораздо легче, чем объяснить как именно это надо делать. Как правило, я начинал с открытия 4 углов. Если и попадалась бомба, то на ранней стадии игры. В отношении алгоритма - сначала необходимо осуществлять перебор и анализ всех приоткрытых клеток и помечать флажков те места, в которых точно есть бомбы. В том случае, если число флажков рядом с клеткой совпадает с числом в самой клетке - открываем все остальные соседние клетки и двигаемся вперед.