Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.04;
Скачать: CL | DM;

Вниз

Хранение данных   Найти похожие ветки 

 
Rembo   (2007-01-14 15:01) [0]

Привет! Делаю игру (Bantumi, была в мобиле Nokia 3310) и решил попробывать сделать самообучающийся ии таким образом: если человек побеждает компьютер, то ходы человека записываються в файл (базовый ии включает в себя несколько простых проверок: "можно ли походить 2 раза", "можно ли украсть очки у противника" и т.д). В записи в файле представляют собой массив из 14 байт (12 байт - состояние игры, 13-ый - количество очков с которыми выиграл человек, 14 отвечает за сам ход), И столкнулся с проблемой: игровой стол представляет собой массив из 12 чисел 0..25. Всего возможных состояний 26^12, перемножив на 12 байт, получаеться что полный файл будет весить ~ОЧЕНЬ ОЧЕНЬ МНОГО TB. Собственно вопрос: как уменшить размер записи? Есть ли варианты? Или я пошел по неверному пути?


 
Rembo   (2007-01-14 15:07) [1]

Вот пришла в голову мысль: вместо того чтоб хранить весь массив 12 байт, делать из него хеш, получаеться 4 байта +2 : 30^12*6= бесконечность =(


 
Rembo   (2007-01-14 19:56) [2]

Мда, перенесли, а тут тем более никто не ответит!


 
ors_archangel ©   (2007-01-15 02:27) [3]

Оставляй только сколько-то хороших примеров - остальные - удаляешь, эволюция! - выживает сильнейший.
Сдеалть пакетную запись ходов: некоторое состояние - триггер: цепочка ходов, - не надо будет записывать состояние перед каждым ходом, но затрудняется поиск по примерам, хотя если цепочек много, то не страшно.
Обучать нейросеть, предсказывающую ход в зависимости от состояния на примерах, где человек победил, да и на примерах, где комп победил то же. Размер нейросети ограничить несложно, и она может находить сложные закономерности.
Реорганизовать хранение: вместо отображения состояние -> ход использовать сколько возможно ходов списков, в которых будут храниться состояния: состояния храним в сжатом виде, например сортируем их и почленно сжимаем RLE или ещё как-нибудь, даже zlib может хорошо сжимать: в надежде, что один и тот же ход происходит из похожих позиций, только в случае со сжатием поиск придётся дополнительно усложнять: разжатие там всякое и т.д.
Вообще, обычно (а вообще не знаю) делают функцию оценки позиции и просчитывают свои/чужие ходы в будущее по разным ветвям и выберают лучший путь, т.е. глубокий перебор возможных ходов для поиска максимально выйгрышного состояния - вообще ничего хранить не надо, хотя можно какие-нибудь интересные случаи и сохранить.



Страницы: 1 вся ветка

Текущий архив: 2007.02.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.082 c
1-1165779902
Phoroon
2006-12-10 22:45
2007.02.04
Collection и Thread


15-1168602653
Сергей И
2007-01-12 14:50
2007.02.04
У кого есть телефонный справочник через BDE


3-1163276025
_Ламер_
2006-11-11 23:13
2007.02.04
FROM .... JOIN .... = не догоняю


15-1168867763
IMHO
2007-01-15 16:29
2007.02.04
Спам vs. Антиспам


2-1169037394
vitv
2007-01-17 15:36
2007.02.04
Результат запроса