Текстовая версия форума CASINOBOARD << полная версия страницы
Базар вокруг игры / Комп в помощь / Самое быстрое определение покерной комбинации
Страницы(9): [ «  <  1  2  3  4  5  6  7  8  9  >  »]
korovin
Re: Самое быстрое определение покерной комбинации [ID=24581] [ответ на 24521 ()]
Пт, 8 сентября 2006 00:01 [#]
Запись 2 байта - номер комбинации, а почему в оперативку не положиш? У меня 2 гига стоит, все влазит, только грузится долго.
YuDmAk
Re: Самое быстрое определение покерной комбинации [ID=24582] [ответ на 24521 ()]
Пт, 8 сентября 2006 00:17 [#]
все нормально, просто вариантов будет не 13^7 а поменьше, ведь комбинаций типа 'AAAAAxx' не существует, итого всего примерно 30 метров.

Я понял, что у тебя к каждой записи привязан ее статус (т.е. ее сила)
Но как по заданной комбинации ты формируешь адрес в памяти? Или деревом все сделано?
YuDmAk
Re: Самое быстрое определение покерной комбинации [ID=24583] [ответ на 24521 ()]
Пт, 8 сентября 2006 00:41 [#]
Все, я понял: это как 13-ричная система: переводим соответственно руку типа 'AAAAKKK' в десятиричную - и ее номер готов.
Причем соответствие взаимооднозначное. Угадал? У тебя также наверное.
grey
Re: Самое быстрое определение покерной комбинации [ID=24584] [ответ на 24521 ()]
Пт, 8 сентября 2006 04:17 [#]
Korovin писал
Запись 2 байта - номер комбинации, а почему в оперативку не положиш? У меня 2 гига стоит, все влазит, только грузится долго.
Цитата:
Давай так, во сколько раз будет быстрее твоего, такая и цена в $ ок?
Давай так, во сколько раз будет меньше памяти использовать, такая и цена в $ ок? Laughing
ёжик
Re: Самое быстрое определение покерной комбинации [ID=24585] [ответ на 24521 ()]
Сб, 9 сентября 2006 10:49 [#]
YuDmAk, может уже пора в личку переходить ... ?!
Fabrica
Re: Самое быстрое определение покерной комбинации [ID=24586] [ответ на 24521 ()]
Сб, 9 сентября 2006 11:34 [#]
А зачем иметь массив 52^5?
Достаточно иметь 13^5=371293 элементов. Имеем пятерку карт, разделяем отдельно на масти и номиналы. Перемножаем масти (их всего 4). У флешей произведение мастей всех 5 карт=1^5, 2^5, 3^5, 4^5. Если произведение не равно этим константам, значит не флеш. По номиналам определяем все кроме флешей, стритфлешей и роялей. Т.е. определяем нет игры, ТК, пара и т.д. как ячейка в массиве М(а[1],a[2],a[3],a[4],a[5]). За одно обращение к массиву и одно произведение 5 чисел определяем силу руки.
korovin
Re: Самое быстрое определение покерной комбинации [ID=24587] [ответ на 24521 ()]
Сб, 9 сентября 2006 11:59 [#]
Цитата:
А зачем иметь массив 52^5?
Я тоже так считал, раньше. Но теперь то реализация такого массива - не проблема. Если цкоь - максимальная скорость, почему нет?
Fabrica
Re: Самое быстрое определение покерной комбинации [ID=24588] [ответ на 24521 ()]
Сб, 9 сентября 2006 12:51 [#]
Если цель скорость, то конечно лучше сразу взять силу пятерки.
Но тогда можно с диска считывать не 52-массив, а 13-массив, и расширить его уже внутри программы на 52-массив, добавив все флеши в 13-массив. Тогда сократится время на загрузку массива. Или вообще переписать 13-массив в двоичном виде и подгрузить его в текст проги, и он будет ВСЕГДА сразу в проге Very Happy , а после загрузки уже расширить его. Smile
Хотя возможно проще считать массив с диска, чем проходить кучу циклов внутри программы. Very Happy
korovin
Re: Самое быстрое определение покерной комбинации [ID=24589] [ответ на 24521 ()]
Сб, 9 сентября 2006 13:11 [#]
Меня 5-карточные руки интересуют как частный случай, так-что я сторонник всеже 13^n массивов. Однако я имел переписку с человеком, профессионально считающим МО игр для казино, который использует именно 52^5 массив, а 6-7 карточные руки определяет за 6 и 21 обращение к этому массиву. Дальше раскрывать чужие секреты считаю некорректным, а свои идеи я уже сформулировал.
grey
Re: Самое быстрое определение покерной комбинации [ID=24590] [ответ на 24521 ()]
Вт, 12 сентября 2006 11:44 [#]
Korovin писал
я имел переписку с человеком, профессионально считающим МО игр для казино
Долго думал Smile IMHO профессионализм -- это не возможность получать деньги за свой труд (на поверку это просто умение или случай оказаться "в нужном месте и в нужное время"), а способность делать свое дело так, как мало кто может...
xRaven
Re: Самое быстрое определение покерной комбинации [ID=24591] [ответ на 24521 ()]
Вт, 12 сентября 2006 16:52 [#]
Цитата:
Долго думал IMHO профессионализм -- это не возможность получать деньги за свой труд (на поверку это просто умение или случай оказаться "в нужном месте и в нужное время"), а способность делать свое дело так, как мало кто может...
<div align="left">Рано или поздно до твоего уровня дорастут другие. Делать так, как мало кто может возможно только постоянно придумывая либо новые методы счета, либо сами обьекты этого счета(ИМХО Smile
С нынешним темпом развития техники потребность в программный оптимизации отпадает. Можно будет просчитывать полным перебором с приемлимой скоростью, техника позволит.
Надеюсь человечество придумает что-то ещё более сложное и гем..ое сегодняшним клубным и казиношным играм, оно это умеет Smile

Для определения статусности комбинации лично использую 52^5 и 13^(3-7) массива одновременно. К сожалению Дельфи не позволил создать 52^(5-6),чтобы позволило бы не вычленять масти вовсе</div>
grey
Re: Самое быстрое определение покерной комбинации [ID=24592] [ответ на 24521 ()]
Вт, 12 сентября 2006 17:30 [#]
Так ты и есть тот самый профессионал?
xRaven
Re: Самое быстрое определение покерной комбинации [ID=24593] [ответ на 24521 ()]
Вт, 12 сентября 2006 18:12 [#]
Вряд ли. Просто хорошо знаю тему. Есть люди более профессиональных чем я
KID
Re: Самое быстрое определение покерной комбинации [ID=24594] [ответ на 24521 ()]
Ср, 13 сентября 2006 15:50 [#]
YuDmAk писал пт, 08 сентября 2006 01:41
Все, я понял: это как 13-ричная система: переводим соответственно руку типа 'AAAAKKK' в десятиричную - и ее номер готов.
Причем соответствие взаимооднозначное. Угадал? У тебя также наверное.
А масти куда деть? Проще наверно по два разряда на карту использовать.
Blitz
Re: Самое быстрое определение покерной комбинации [ID=24661] [ответ на 24521 ()]
Пн, 25 сентября 2006 21:48 [#]
Sharky писал чт, 07 сентября 2006 18:33
Коровин где-то писал, что обмен 5 у него 2 сек на его супер компе. У меня все обмены и +1 карта -- 2,3 сек на моем компе с меньшей частотой в 2 раза. Запускал демку Блица, и засекал секундомером на мобилке его скорость перебора в районе 6-7 секунд против моих 2,3.
Шарки, а у тебя какая конфигурация копьютера? Такая скорость напоминает мне Р-III. Или ты имел ввиду тестовый точный движок? Так это не в счет, на то он и "тестовый"... Smile Сравнивать нужно с коммерческой версией, но боюсь, что опять начнется баян про "скорость" и "точность".

Какие, кстати, современные достижения по скорости обсчета "пятака"?

Блиц.
Sharky
Re: Самое быстрое определение покерной комбинации [ID=24662] [ответ на 24521 ()]
Пн, 25 сентября 2006 22:10 [#]
Blitz писал пн, 25 сентября 2006 21:48
Шарки, а у тебя какая конфигурация копьютера? Такая скорость напоминает мне Р-III. Или ты имел ввиду тестовый точный движок? Так это не в счет, на то он и "тестовый"... Smile Сравнивать нужно с коммерческой версией, но боюсь, что опять начнется баян про "скорость" и "точность".

Какие, кстати, современные достижения по скорости обсчета "пятака"?

Блиц.
AMD Athlon XP 2000+
1,67 ГГц, 512 МБ

Замерял тестовый точный для всех обменов.. в демке вроде нет выбора..

По достижениям скорости, все нужно мерить на одном компе...
Blitz
Re: Самое быстрое определение покерной комбинации [ID=24663] [ответ на 24521 ()]
Пн, 25 сентября 2006 22:31 [#]
Sharky писал вт, 26 сентября 2006 00:10
По достижениям скорости, все нужно мерить на одном компе...
Кто готов предоставить эталонный комп? Laughing

Блиц.
grey
Re: Самое быстрое определение покерной комбинации [ID=24664] [ответ на 24521 ()]
Вт, 26 сентября 2006 04:05 [#]
Sharky писал
По достижениям скорости, все нужно мерить на одном компе...
IMHO, скорость практически линейно зависит от тактовой частоты CPU, размер памяти не имеет значения. Ну если только вашей проге не требуется 2 гига мозгов...
Mariner
Re: Самое быстрое определение покерной комбинации [ID=24666] [ответ на 24521 ()]
Вт, 26 сентября 2006 05:05 [#]
Приветствую!

2 Blitz

Blitz писал вт, 26 сентября 2006 01:31
Sharky писал вт, 26 сентября 2006 00:10
По достижениям скорости, все нужно мерить на одном компе...
Кто готов предоставить эталонный комп? Laughing

Блиц.
Скоро должен прийтие сервер на Xeon. Вот на нем можно будет и померить. Smile
Sharky
Re: Самое быстрое определение покерной комбинации [ID=24667] [ответ на 24521 ()]
Вт, 26 сентября 2006 05:28 [#]
Grey писал вт, 26 сентября 2006 04:05
Sharky писал
По достижениям скорости, все нужно мерить на одном компе...
IMHO, скорость практически линейно зависит от тактовой частоты CPU, размер памяти не имеет значения. Ну если только вашей проге не требуется 2 гига мозгов...
У меня постоянно висят какие-то сервисы жрущие ресурсы в том числе процессорные, такие как фаервол, антивирус, БД и т.д. Плюс постоянно подключен к Lan, где постоянно шныряют броуткасты. Поэтому даже на таком же железе, но на другом компьютере скорость будет разниться. Поэтому для чистоты эксперимента нужно тестировать все проги на одной машине, а лучше на 2,3 и т.п. Только зачем это все и кому это нужно на самом деле?
Страницы(9): [ «  <  1  2  3  4  5  6  7  8  9  >  »]