|
|
|
|
Рейтинг 4.86/7:
|
|
11 / 11 / 0
Регистрация: 17.01.2013
Сообщений: 504
|
|
Научить компьютер играть в дурака27.06.2024, 09:43. Показов 3486. Ответов 24
Метки нет (Все метки)
задача такая, научить компьютер играть в дурака, собираюсь решить её с помощью генетического алгоритма и нейросети.
Если с ГА проблем пока не возникает, то с нейросетью явный затык. Не могу понять какие данные она должна принимать и какие возвращать. Допустим я её буду передавать текущее состояние, т.е. карты находящиеся на столе и у меня на руках, а так же в отбое и козырь. но возникает проблема с тем что в процессе игры не всегда нужно отбиваться или атаковать, иногда нужно нажать бито, иногда сделать перевод, иногда взять, а если всё таки нужно отбиваться, но нужно понять какую карту отбивать. отсюда собственно вопрос, как лучше организовать структуру нейросети?
0
|
|
| 27.06.2024, 09:43 | |
|
Ответы с готовыми решениями:
24
Крестики Нолики 4x4: как научить компьютер "играть" Как научить сборную России играть в футбол? Хочу научить компьютер говорить на C#, а он ошибку выдает! |
|
11 / 11 / 0
Регистрация: 17.01.2013
Сообщений: 504
|
|
| 03.07.2024, 17:24 [ТС] | |
|
Mikhaylo, мы же знаем сколько карт в колоде, вот и будем считать каждый нейрон отдельной картой, а отправлять в него будем текущее состояние карты (у кого на руках, в колоде или на столе), а на выходе каждому нейрону присваиваем действие, я прикинул, их всего 5 или 6 получается
back propagation применим, если у нас есть выборка, на которой можно учиться, в нашем случае если создавать выборку из всех возможных ходов, то она будет огромная, да и если она у нас будет, то нам и нейронка не нужна, просто отсеиваем выигрышные ходы
0
|
|
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
|
| 03.07.2024, 20:45 | |
|
Ладно, коли тут собрались люди, любящие щелкать орешки...
Давайте договоримся, для простоты рассматриваем игру в простого дурака без переводов, 36 карт. У нас есть 5 массивов карт: A - карты на руках, B - карты у соперника на руках, C - колода, D - игровое поле, E - сброс. A - полностью известный. B - обычно неизвестный, но некоторые карты могут "спалиться", когда соперник забирает их. C - известна козырная карта, которая рубашкой вверх. D - все карты открыты. E - все карты известны. Соответственно, помимо нейросетей должны использоваться обычные несложные алгоритмы, которые отслеживают перемещение карт по массивам, иначе задача не формулируется как следует. А учить ИИ, что в результате некоего действия карта X перешла из массива D в массив E - это слишком утомительное и ненужное обучение правилам игры через веса. Наличие или отсутствие карты - это 0 или 1, если карта неизвестна, то 0,5 - это нормальный подход для нейронки. Помимо этого: 1. Нужно вычислить неизвестные карты 2. Нужно оценить действия соперника, учесть его знания карт массива A. Короче, тут еще куча работы до выхода MVP.
0
|
|
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
||
| 04.07.2024, 07:53 | ||
|
Вы начните уже собирать данные для обучения. Надо, чтобы кто-то сыграл 10000 партий. https://youtu.be/Ct2Jx0UwcGE
0
|
||
|
148 / 111 / 37
Регистрация: 28.11.2013
Сообщений: 383
|
|
| 04.07.2024, 21:51 | |
|
Можно использовать lstm нейросеть, она немного ресурсов занимает, вот пример обучения игре в змейку за 100 итераций youtube. Вот пример использования обученной нейросети для обучения игры в марио youtube2.
Итак, какой-бы алгоритм вы не выбрали, Вам нужно сначала получить данные из игры, желательно в виде цифр (ответ агенту). Начните с отладки работы с игрой. На это у вас уйдет прилично времени. Научитесь передавать данные в игру и получать ответ, желательно в виде цифр. Сведите к минимуму количество команд. А после этого уже выбирайте алгоритмы - нейросети, генетический алгоритм и т.д.
0
|
|
|
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,820
|
|
| 05.07.2024, 09:02 | |
|
Самое главное, не предаваться иллюзии, что все просто: типа скормил нейросети массивы и все заработало.
По моей ссылке на Ютуб есть реализация, и там не самые лучшие решения по интеграции нейросети к игроку. Нужно попробовать что-то сделать, чтобы понять свои слабости. А иначе мы имеем только шапкозакидательский трёп.
0
|
|
| 05.07.2024, 09:02 | |
|
Sonoff как научить его включать и выключать компьютер? Возвести 11^100 (метод:научить компьютер умножать столбиком) Учим компьютер играть в Гомоку (пять в ряд) Учим компьютер играть в Гомоку (пять в ряд) Прошу научить меня. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|