| Здравствуйте, гость | Правила · Помощь |
Все темы | | | |
| » Теория. Алгоритм распасовки. | | | |
|
|
||||||
И что? Ты сделал предложение, и Меф сделал предложение. Твоё я отверг. А предложение Мефа я принял, выдвинув условия этого принятия. Там и прозвучало среди прочего: "... они должны идти подряд, как они игрались. Ибо "этюдных" случаев можно насобирать..." Тебя в нашем с ним "мероприятии" вообще нет. Еще скажи, что если бы не ты, я не догадался бы это упомянуть. ) |
||||||
|
|
||||||
И снова - только справедливости для. Пускай первое предложение за "сдачи подряд" не мое. Ну, так вот оно:
А твое - вот оно, почти следующее:
Мы же и квалифицированные читатели понимаем, для чего в этом эксперименте сдачи должны идти подряд - чтобы получить последовательность случайных рук и исключить их "сознательный выбор" постановщиком задания, который может вольно или невольно сказаться на результате эксперимента. -------------------- С уважением, А.Малышев |
||||||
|
» 11/03/2013, 09:19, isabsent
|
|
Уважаемое сообщество!
Пишу приложение, вычисляющее решение преферансных задач. Часть его выложена на Android Market (Preferans Studio) - пока без распасов и в несколько усеченном варианте, чтобы работало на слабых в вычислительном плане гаджетах. Для теста алгоритма решения задачи распасов, очень нужна ссылка, где бы анализировался этюд (возможно, что не очень сложный) с первого хода на основе вероятностей раскладов карт противников. Может кто-то знает где это можно найти или сам может его написать? Ниже я привожу расчет первого примера Morozko на сайте pref-review ("Принятие решения на 8-м ходу"). Хотелось бы услышать критику с точки зрения игровой практики. В квадратных скобках напротив каждого возможного хода игрока приведены три числа, оценивающие количество взяток каждого игрока с точки зрения ходящего в порядке [Player, First, Second]. Ходящий выбирает тот ход, который соответствует минимальному количеству его собственных взяток. First move - Player Prikup: ♠K, ♠7 ************************ Trick #1 ******** Player: ♠ 9, ♣ J,9,8, ♦ A,9, ♥ A,K,10,9, First: ♠ Q,J,8, ♣ A,Q, ♦ K,Q,10,7, ♥ 8, Second: ♠ A,10, ♣ K,10,7, ♦ J,8, ♥ Q,J,7, Computer moves as Player ♠9 ♠Q: [1,97, 5,67, 2,36] ♠8: [2,25, 5,34, 2,41] Computer moves as First ♠8 ♠A: [3,46, 4,26, 2,28] ♠10:[3,09, 3,81, 3,10] Computer moves as Second ♠A Tricks: [0, 0, 1] ************************ Trick #2 ******** Player: ♠ ♣ J,9,8, ♦ A,9, ♥ A,K,10,9, First: ♠ Q,J, ♣ A,Q, ♦ K,Q,10,7, ♥ 8, Second: ♠ 10, ♣ K,10,7, ♦ J,8, ♥ Q,J,7, ♦A: [1,63, 3,86, 4,50] ♣J: [2,22, 3,64, 4,13] ♥A: [2,53, 3,25, 4,22] ♥10:[2,85, 3,11, 4,04] ♦9: [2,26, 3,50, 4,24] ♣9: [2,31, 3,62, 4,07] Computer moves as Player ♦A Computer moves as First ♠Q Computer moves as Second ♠10 Tricks: [0, 1, 1] ************************ Trick #3 ******** Player: ♠ ♣ J,9,8, ♦ 9, ♥ A,K,10,9, First: ♠ J, ♣ A,Q, ♦ K,Q,10,7, ♥ 8, Second: ♠ ♣ K,10,7, ♦ J,8, ♥ Q,J,7, ♣J: [2,70, 3,68, 3,63] ♥A: [2,54, 3,74, 3,72] ♥10:[2,66, 3,74, 3,61] ♦9: [2,08, 3,95, 3,97] ♣9: [2,71, 3,69, 3,60] Computer moves as Player ♦9 ♦7: [1,68, 6,27, 2,06] ♦K: [2,89, 4,08, 3,03] ♦10:[2,05, 5,26, 2,70] Computer moves as First ♦K ♦8: [2,61, 4,92, 2,48] ♦J: [2,69, 5,28, 2,03] Computer moves as Second ♦J Tricks: [0, 2, 1] ************************ Trick #4 ******** Player: ♠ ♣ J,9,8, ♦ ♥ A,K,10,9, First: ♠ J, ♣ A,Q, ♦ Q,10,7, ♥ 8, Second: ♠ ♣ K,10,7, ♦ 8, ♥ Q,J,7, ♣Q: [1,74, 5,50, 2,76] ♦7: [1,30, 6,41, 2,29] ♠J: [1,94, 4,99, 3,08] ♥8: [0,62, 7,68, 1,70] ♦Q: [1,33, 6,13, 2,55] ♣A: [2,53, 3,97, 3,50] Computer moves as First ♣A ♣7: [1,88, 5,30, 2,83] ♣K: [1,87, 6,50, 1,63] ♣10:[1,90, 5,90, 2,20] Computer moves as Second ♣K ♣J: [1,90, 4,67, 3,44] ♣9: [1,94, 4,72, 3,34] Computer moves as Player ♣J Tricks: [0, 3, 1] ************************ Trick #5 ******** Player: ♠ ♣ 9,8, ♦ ♥ A,K,10,9, First: ♠ J, ♣ Q, ♦ Q,10,7, ♥ 8, Second: ♠ ♣ 10,7, ♦ 8, ♥ Q,J,7, ♣Q: [2,28, 4,00, 3,72] ♦7: [1,02, 6,75, 2,23] ♠J: [1,78, 4,99, 3,23] ♥8: [0,57, 7,78, 1,65] ♦Q: [1,22, 6,11, 2,67] Computer moves as First ♣Q ♣7: [1,73, 5,81, 2,46] ♣10:[1,68, 6,84, 1,49] Computer moves as Second ♣10 Computer moves as Player ♣9 Tricks: [0, 4, 1] ************************ Trick #6 ******** Player: ♠ ♣ 8, ♦ ♥ A,K,10,9, First: ♠ J, ♣ ♦ Q,10,7, ♥ 8, Second: ♠ ♣ 7, ♦ 8, ♥ Q,J,7, ♦7: [2,50, 4,00, 3,50] ♠J: [1,87, 5,00, 3,13] ♥8: [2,33, 4,00, 3,67] ♦Q: [1,32, 6,00, 2,68] Computer moves as First ♦7 Computer moves as Second ♦8 ♥A: [1,80, 5,07, 3,13] ♥10:[2,42, 4,64, 2,94] ♣8: [1,37, 5,36, 3,27] Computer moves as Player ♣8 Tricks: [0, 4, 2] ************************ Trick #7 ******** Player: ♠ ♣ ♦ ♥ A,K,10,9, First: ♠ J, ♣ ♦ Q,10, ♥ 8, Second: ♠ ♣ 7, ♦ ♥ Q,J,7, ♥7: [0,20, 7,20, 2,60] ♣7: [0,80, 5,20, 4,00] ♥Q: [1,20, 5,60, 3,20] Computer moves as Second ♥7 ♥A: [1,64, 4,86, 3,50] ♥10:[0,83, 5,87, 3,30] Computer moves as Player ♥10 Computer moves as First ♥8 Tricks: [1, 4, 2] ************************ Trick #8 ******** Player: ♠ ♣ ♦ ♥ A,K,9, First: ♠ J, ♣ ♦ Q,10, ♥ Second: ♠ ♣ 7, ♦ ♥ Q,J, ♥A: [3,20, 4,40, 2,40] ♥9: [1,70, 5,15, 3,15] Computer moves as Player ♥9 ♠J: [2,20, 4,00, 3,80] ♦Q: [2,20, 4,00, 3,80] Computer moves as First ♠J Computer moves as Second ♥Q Tricks: [1, 4, 3] ************************ Trick #9 ******** Player: ♠ ♣ ♦ ♥ A,K, First: ♠ ♣ ♦ Q,10, ♥ Second: ♠ ♣ 7, ♦ ♥ J, ♣7: [2,00, 4,00, 4,00] ♥J: [3,00, 4,00, 3,00] Computer moves as Second ♥J Computer moves as Player ♥A Computer moves as First ♦Q Tricks: [2, 4, 3] ************************ Trick #10 ******** Player: ♠ ♣ ♦ ♥ K, First: ♠ ♣ ♦ 10, ♥ Second: ♠ ♣ 7, ♦ ♥ Computer moves as Player ♥K Computer moves as First ♦10 Computer moves as Second ♣7 ************************************** Tricks: [3, 4, 3] Особенно интересен выбор Player'ом первого хода в третьей взятке. У Morozko он делает ход ♥10(2,66). Как его можно мотивировать? По моим расчетам этот ход не лучше чем ♥A(2,54), ♣J(2,70) или ♣9(2,71) и существенно хуже чем ход ♦9(2,08). P.S. Точность расчета ограничена вычислительной мощностью двухпроцессорного i5 и вряд ли больше чем первая цифра после запятой. Вторая цифра после запятой приведена просто для справки. Это сообщение отредактировал isabsent - 11/03/2013, 09:35 |
|
» 11/03/2013, 11:44, Morozko_prr
|
||
Вот тут походу явная ошибка у Вашего алгоритма: Ход Тч априори НЕ может быть лучше хода 10ч (по критерию "общее количество взяток" --- Для тех, кто плохо вникает в суть написанного мною, поясняю: 1)Я никогда не утверждал, что ход 10ч лучший, однако я считаю, что ход Тч гораздо хуже его. Опять же я сомневаюсь, что 9тр, по мнению Вашего алгоритма, есть самый плохой ход. Как следствие полагаю, что Ваш алгоритм оценки ходов на распасах нуждается в СУЩЕСТВЕННОЙ корректировке. 2)Моя откуда и был взят в.у. пример не про то, как надо В ПРИНЦИПЕ разыгрывать распасы (этот материал у других авторов имеется, в частности, у Сашуна в его ), а про то как надо правильно (и однозначно) ходить в ситуации т.н. ключевого хода и с этой целью рассказывается и показывается на 60-ти примиерах как можно вычислить расклады карт у оппов, для принятия правильного решения. PS Мне особенно интересно мнение Байкера по оптимальному 3-му ходу в в.у. примере. Это сообщение отредактировал Morozko_prr - 11/03/2013, 11:52 -------------------- Мои статьи можно почитать на сайте "Преф-Ревю" |
||
|
|
||||||
Я должен еще раз подчеркнуть, что уровень точности, с которым я могу посчитать (за разумное время), не позволяет мне сказать какой из ходов ♥10(2,66), ♥A(2,54), ♣J(2,70) и ♣9(2,71) является более оптимальным. Единственное, что я более или менее точно вижу, это то, что все эти ходы менее предпочтительны чем ♦9(2,08). Цель моего вопроса - понять так ли это с точки зрения людей с большим игровым опытом.
Я хорошо вникаю Мой алгоритм нуждается в корректировке безусловно - я с этой целью и пришёл на форум. Если бы я понял, почему ♦9 не является оптимальным ходом в данной ситуации, то я бы нашёл и то место в моём алгоритме, которое нуждается в корректировке.
Я абсолютно не критикую Вашу статью. Более того - благодарен, что Вы её разместили на сайте. Просто взял из нее пример для теста - в надежде, что многие из здесь пишущих её читали, разбирали этот пример и могут сказать не вдаваясь в сложные вычисления является ли ♦9 оптимальным ходом или нет. Это сообщение отредактировал isabsent - 11/03/2013, 12:32 |
||||||
|
» 11/03/2013, 13:22, Morozko_prr
|
|
2 isabsent
"Я должен еще раз подчеркнуть, что уровень точности, с которым я могу посчитать (за разумное время), не позволяет мне сказать какой из ходов ♥10(2,66), ♥A(2,54), ♣J(2,70) и ♣9(2,71) является более оптимальным. Единственное, что я более или менее точно вижу, это то, что все эти ходы менее предпочтительны чем ♦9(2,08). Цель моего вопроса - понять так ли это с точки зрения людей с большим игровым опытом." --- Уровень точности (тысячные после запятой) - дело второстепенное. Ваш алгоритм должен в итоге УМЕТЬ находить лучший ход из ВСЕХ возможных, а пока этот самый алгоритм у Вас должным образом НЕ отлажен если заведомо самый худший ход (Тч) вместо 5-го места занимает почетное 2-е. Чтобы не быть голословным мой ряд оптимальности в.у. 5-ки ходов такой: 10ч-9т-9б-Вт-Тч. Вот мои аргументы почему я лично НЕ считаю 9б лучшим ходом: 1) он не является гарантированной отдачей в ситуации 7-8 на разных руках у оппов; 2а) при этом ходе карта 1-й руки СРАЗУ становится слишком "сильно читаемой" для оппов: пика 1 (9) бубна 2 (Т9) Несложно догадаться, что трефа/черва у нас - 4/3 (3/4)(при этом расклад 5/2(2/5) исключаем, поскольку у нас нет хозяйки в масти 5-ти карт и одновременно отсутствует НАДЕЖНЫЙ перехват в масти 2-ки. 2б)Как только оппы проведут это несложный анализ после хода 9б 1-й руки они быстро доберут 2 трефы и отдадутся в 7т (возможно через переход-прием в черве). "Мой алгоритм нуждается в корректировке безусловно - я с этой целью и пришёл на форум. Если бы я понял, почему ♦9 не является оптимальным ходом в данной ситуации, то я бы нашёл и то место в моём алгоритме, которое нуждается в корректировке." --- Попробуйте голосование здесь на форуме устроить на самый оптимальный 3-й ход 1-й руки. Посмотрим что скажет преф-общественность... Это сообщение отредактировал Morozko_prr - 11/03/2013, 13:28 -------------------- Мои статьи можно почитать на сайте "Преф-Ревю" |
|
|
|
Я сходу не понял (а вникать недосуг): оптимальный ход исчисляется исходя из знаний всего расклада (всех рук) или из тех знаний, что имеет 1 рука в реальной игре (не видя расклада)? Ибо если первое, то "это не ко мне" (мне это не интересно). Если второе (первая рука играет против всех возможных раскладов и пока не знает, какой именно ей выпал), то:
- очень маловероятно, что оптимальный первый ход после вскрытия первой руки = 9 бубен. Сейчас это (93 бланк) - неизвестный тип масти (отдача или своя), но остальные масти требуют разыгрывания, а рука в целом такова, что как раз не требует отбора своей, если 93 таки своя. Короче, по моему алгоритму - ходить надо или в трефу, или в черву. Тут снова надо вникать в дебри - случай сложный и различия вариантов, видимо, незначительные, - но по "первому впечатлению" и за столом (я сам, скорее всего) сыграл бы таки в трефу, 9, на которую указывают "дополнительные показатели". То, что ход 92 хуже В2 (пусть и на сотую), думаю, косяк. Ну, и ходить в Т4 вместо 14 (например) - это только если изначально "висеть на люстре" и видеть весь расклад. А с места первой руки такая игра в данном случае не из чего не вытекает, и в общем случае является ошибкой. |
|
|
||||||
Не соглашусь, так как из-за недостаточного уровня точности в следующем расчете того же самого расклада я легко могу получить, что ♥A и ♥10 меняются местами. Однако же ни один из 20 расчетов не убрал ♦9 из первой по оптимальности позиции.
Именно это и происходит - First перехватывает бубной эту девятку, добирает две трефы и отдается на шестой взятке в ♦7(4,00) или ♥8(4,00) - для него тут уже расклад полностью ясен и его взяток больше нет.
Хотелось бы увидеть расчет вероятностей этой интуитивной оценки или какого-то более простого этюда. Это возмножно? P.S. Мой алгоритм не совсем плохой Это сообщение отредактировал isabsent - 11/03/2013, 14:33 |
||||||
|
» 11/03/2013, 14:15, isabsent
|
||||
Только из тех знаний, что имеет первая рука в реальной игре.
Не могли бы Вы придумать более простой случай (или упростить этот), чтобы его реально было бы посчитать руками и потом сравнить с результатом работы алгоритма? Это сообщение отредактировал isabsent - 11/03/2013, 14:20 |
||||
Все темы | | | |
« Предыдущая тема | Перечень тем | »
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
0 Пользователей:
