Регистрация
Регистрация Поиск Сообщество  
Важные объявления
Старый 06.07.2004, 08:05     TS Старый   #1 (permalink)
Участник
 
Регистрация: 11.06.2004
Адрес: Россия
Сообщений: 107
Отправить сообщение для BUGy с помощью ICQ
Приветствую всех.

Хотел бы рассмотреть в этой ветке способы расчёта МО и диспы.
У меня сразу возникло несколько вариантов: первое это считать перебором всех возможных вариантов со всеми возможными вскрышками С(52,5)*47, что обеспечивает полную сходимость, но очень долго, можно перебрать все варианты и для каждого сгенерировать случайную вскрышку, что тоже всё равно долго. Возможно случайная генерация раскладов и вскрышки, но можно ли при этом пользоваться встроенным ГСЧ в язык программирования, т.к. результат будет псевдослучаен (я программирую на VB6), или же нужно писать собственный. Далее есть ещё два варианта: брать МО каждой раздачи для получения среднего(сумму МО каждай раздачи поделить на число раздач) или же для каждого расклада находить оптимальное решение или задать линию игры заранее и генерировать купленные карты и оставшиеся карты диллеру ( симулировать сам игровой процесс).
Далее хотелось бы разобрать варианты расчёта дисперсии: посчитать МО игры, далее перебирая или генерируя расклады вычитать МО игры из МО расклада, и в последствии получить дисперсию, или же брать каждыё расклад в отдельности считать его МО и вычитать из результата каждого возможного исхода, таким образом получая дисперсию каждого расклада.

Будут ли отличатся результаты полученные разными способами? Все ли из них имеют право на жизнь, и какой наилучший?
Хотулось бы услышать ещё возможные варианты.
__________________
BUGy
BUGy вне форума      
Старый 06.07.2004, 12:37   #2 (permalink)
Бессмертный
 
Аватар для korovin
 
Регистрация: 13.02.2004
Адрес: Россия
Сообщений: 3,027
Я строю таблицу вероятости исхода одной раздачи: -4,-3,-1,0,1,2,3...

По этой таблице легко счтается и М и Д. Метод хорош для любой игры.

Если перебором долго, применяю комбинацию перебора карт руки и случайную генерацию остальных карт.
korovin вне форума      
Старый 07.07.2004, 04:43     TS Старый   #3 (permalink)
Участник
 
Регистрация: 11.06.2004
Адрес: Россия
Сообщений: 107
Отправить сообщение для BUGy с помощью ICQ
Приветствую Korovin.

Хотел бы спросить. Нельзя ли для оценки МО пробежаться по массиву комбинаций описанных в ветке ускорения расчёта. И если брать комбинации из файла, то по какому принципу их туда заносить.

>Я строю таблицу вероятости исхода одной раздачи: -4,-3,-1,0,1,2,3...

Как я понял в этот массив заносятся вероятности каждого исхода, потом каждая ячейка делится на число перебрпнных вариантов, потом перемножается каждый исход на свою вероятность и суммируя получаем М. Ну это в принципе тоже самое что и суммировать М для каждого расклада, только можно сразу ещё и Д посчитать.
__________________
BUGy
BUGy вне форума      
Старый 07.07.2004, 07:29   #4 (permalink)
Бессмертный
 
Аватар для korovin
 
Регистрация: 13.02.2004
Адрес: Россия
Сообщений: 3,027
Пример

//каре
for i1:=0 to 12 do
for i5:=0 to 12 do if i5<>i1 then begin n:=n+1;
ArShaf[n,1]:=i1*4+1; ArShaf[n,2]:=i1*4+2;
ArShaf[n,3]:=i1*4+3; ArShaf[n,4]:=i1*4+4;
ArShaf[n,5]:=i5*4+Random(4)+1;
ArShaf[n,0]:=1;
end;

//фулл
for i1:=0 to 12 do
for i4:=0 to 12 do if i4<>i1 then begin n:=n+1;
p3:=Random(4)+1; p2:=Random(6)+1;
ArShaf[n,1]:=i1*4+ArMst3[p3,1]; ArShaf[n,2]:=i1*4+ArMst3[p3,2];
ArShaf[n,3]:=i1*4+ArMst3[p3,3]; ArShaf[n,4]:=i4*4+ArMst2[p2,1];
ArShaf[n,5]:=i4*4+ArMst2[p2,2]; ArShaf[n,0]:=6;
end;

...

ArShaf[n,0] это вес комбинации/4
korovin вне форума      
Старый 08.07.2004, 03:05     TS Старый   #5 (permalink)
Участник
 
Регистрация: 11.06.2004
Адрес: Россия
Сообщений: 107
Отправить сообщение для BUGy с помощью ICQ
Никак не пойму как можно воспользоваться полученным массивом, но как я понял что для каждой комбинации составляется подобный.
И i1 здесь ранг каре и тройной в фуле, а i5 и i4 ранг остального. Тогда я даже не представляю как посчитать массив для комбинаций которые требуется усилять, и для без игры придётся считать массив для разных заманух.
__________________
BUGy
BUGy вне форума      
Старый 08.07.2004, 07:21   #6 (permalink)
Бессмертный
 
Аватар для korovin
 
Регистрация: 13.02.2004
Адрес: Россия
Сообщений: 3,027
//Прочее
for i1:=4 to 12 do
for i2:=3 to i1-1 do
for i3:=2 to i2-1 do
for i4:=1 to i3-1 do
for i5:=0 to i4-1 do begin n:=n+1;
p1:=Random(4)+1;
ArShaf[n,1]:=i1*4+p1; ArShaf[n,2]:=i2*4+p1;
ArShaf[n,3]:=i3*4+p1; ArShaf[n,4]:=i4*4+p1;
ArShaf[n,5]:=i5*4+p1; ArShaf[n,0]:=1; n:=n+1;

p2:=p1; p3:=p1; p4:=p1; p5:=p1;
while (p1=p2) and (p1=p3) and (p1=p4) and (p1=p5) do begin
p2:=Random(4)+1; p3:=Random(4)+1; p4:=Random(4)+1; p5:=Random(4)+1;
end;

ArShaf[n,1]:=i1*4+p1; ArShaf[n,2]:=i2*4+p2;
ArShaf[n,3]:=i3*4+p3; ArShaf[n,4]:=i4*4+p4;
ArShaf[n,5]:=i5*4+p5; ArShaf[n,0]:=255;
end;

Отдельно одномастные, отдельно все остальные. Заманухи на стрит описаны полностью, на флеш формируются среднестантистически из за случайной генерации мастей.

Мой цикл не описывает строго сжатие мастей, но практика показала что 30-50 циклов достаточно для оценки МО на любом боксе, а это 200-300 тысяч сдач всего.
korovin вне форума      
Старый 08.07.2004, 13:01   #7 (permalink)
Интересующийся
 
Регистрация: 20.03.2004
Адрес: Москва
Сообщений: 75
Раздаю карты себе и дилеру, меняю, если нужно и смотрю, что получилось. Использую встроенный генератор случайных чисел и не вижу причин ему не доверять. Делаю именно так потому, что моя программа оценки позиции не дает абсолютно точного МО, но при этом в выборе ходов практически не ошибается.
[Зарегистрироваться?]

Ivan вне форума      
Старый 09.07.2004, 01:10     TS Старый   #8 (permalink)
Участник
 
Регистрация: 11.06.2004
Адрес: Россия
Сообщений: 107
Отправить сообщение для BUGy с помощью ICQ
Ivan, но ведь для принятия решения ты считаеш МО расклада, зачем симулировать игру. Ведь грубо говоря раздав себе большое число раз один и тот же расклад и следуя каждый раз оптимальному решению ты безисходно выйдеш на МО этого самого расклада. А следовательно суммируя каждый раз МО а не частный случай какого-то случайного расклада ты гораздо быстрее получишь сходимость.
Насчёт встроенного ГСЧ, он же получает каждое последующее число отталкиваясь от предидущего по какому-то закону, и я бы ему не доверил раздачу в комплексе.
__________________
BUGy
BUGy вне форума      
Старый 11.07.2004, 07:41   #9 (permalink)
Интересующийся
 
Регистрация: 20.03.2004
Адрес: Москва
Сообщений: 75
МО одного расклада я считаю только для того, чтобы определить правильный ход. А это во многих случаях можно сделать и не зная точного МО расклада.
Встроенный ГСЧ можно модернизировать, если периодически (скажем раз в мин.) инициализировать его числом, зависящим от времени.
Ivan вне форума      

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расчет аутов dedmorozov Многостоловые турниры 2 27.03.2012 15:15
расчет видеопокера atayants Программное обеспечение 2 16.03.2011 14:52
расчет видеопокера atayants Покер софт 0 22.12.2010 13:45
Расчет EV _PaFF86_ Вопросы от новичков 1 19.12.2009 22:19



Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.

Быстрый переход
Правила форумов CGM Контакты Справка Обратная связь CGM.ru Архив Вверх Главная
 
Использование материалов сайта разрешено только при наличии активной ссылки на источник.
Все права на картинки и тексты принадлежат Информационному агентству CGM и их ПАРТНЕРАМ. Политика конфидециальности
CGM.ru на Youtube CGM.ru на Google+ CGM.ru в Twitter CGM.ru на Facebook CGM.ru в vKontakte CGM.ru в Instagram

В сотрудничестве с Pokeroff.ru
Текущее время: 17:53. Часовой пояс GMT +3.
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot