|
-58 / 18 / 0
Регистрация: 29.05.2013
Сообщений: 390
|
|
Теория игр- случайное число матов30.08.2013, 03:50. Показов 1453. Ответов 10
Метки нет (Все метки)
Может здесь есть специалисты или просто сообразительные люди. Проблема вот в чём- я придумал новый вид шахмат- рендомные шахматы, где фигуры делают рендомные ходы и придумал ряд задач на эту тему. Потом пришла в голову идея, что можно создать шахматную программу с которой можно реально играть. Идея очень проста- разыгрывается большое количество случайных партий и по количеству случайных матов определяется какой ход более оптимален. Скажем разыгрывается 10 000 партий. Один ход даёт скажем 1000 случайных матов, другой 800. Отсюда делаем вывод, что первый ход лучше и фиксируем именно его.
Далее я нашёл любителя писать шахматные программы ( причём не абы какого, а чья программа известна среди подобных любителей) . Провёл с ним переговоры, он обещал через неделю дать прогу и ... ПРОПАЛ ( хотя я знаю наверняка, что он появляется в сети). Через большое время нашёл другого подобного любителя ( причём как потом выяснил, его программа чемпион среди любителей). Произошло то же самое. Человек всё узнал и ... ПРОПАЛ. Разумеется у меня очень большие подозрения: 1. Что идею пытаются украсть. 2. Что идея крайне ценная. Но вот сейчас пришла в голову другая идея- если мой метод работает, то его можно использовать в любой другой сфере в теории игр. Но я эту область совсем не знаю. Может кто-то подскажет в каком направлении копать?
0
|
|
| 30.08.2013, 03:50 | |
|
Ответы с готовыми решениями:
10
Теория принятия решений Теория игр
|
| 30.08.2013, 05:25 | ||
|
большинство просто "рандомных" партий в шахматы окончится вничью, как ни странно, из-за правила 3х повторений, или 50ти ходов без прогресса. раз уж вы поместили этот пост в теорию вероятностей, посчитайте хотябы примерное количество возможных партий. даже если предположить что ходы будут не совсем рандомными (что вообще-то нельзя делать, в задаче глобальной оптимизации), рано или поздно на доске останется небольшое количество фигур, которые будут ходить туда сюда.
кроме того, представьте себе, что всю партию один из игроков был с перевесом +20, а потом бац и отдал ферзя "по рандому" (даже если вы научите компьютер ставить мат в пару-тройку ходов... ну ладно, возьмем научные работы по просчету форсированных вариантов, и научим ставить мат аж в 20 ходов, но ведь в большинстве случаев отдадут его где нибудь в относительно спокойном мителльшпиле, или даже в эншпиле аля R,Q vs R, без форсированного мата). Вообщем, скажу сразу что идея не нова. На этом основан нейросетевой анализ в теории игр, так что вы зря так довольны. В действиетльности количество вариантов так же велико, как если бы вы просто начали применять их все подряд, и перебирать все возможные ходы. Этого же не делают, в большинстве позиций. Могут оставить 6-10 возможных ходов, и просчитать по форсированной схеме. Не найдя чего-то полезного, или явного выйгрыша, применяют более глубокий анализ. А вообще, исходя из количества возможных вариантов для просчета, все ваши знакомые просто зависли И отвиснут так примерно, только когда еще вселенная раз эдак 10^1000000 раз переродится, и вернется в текущее состояние![]() Вообще, немного усовершенствую вашу идею, чтобы вы примерно поняли что делается, когда речь идет о нейронных сетях. Возьмем базу гроссмейстеров, составим дерево решений. каждое состояние доски -- один нейрон. коэффициент связи bi в перцептроне, и если это решение привело в конечном итоге к победе, то увеличивается этот коэффициент bi, если нет, уменьшается. Такую сеть можно будет составлять довольно быстро и дополнять, и при этом вы получите вполне приемлимые результаты: по крайней мере у вас не будет совсем глупых и бессмысленных ходов. Далее, можно подключить небольшой анализатор позиции, ввести некоторые коэффициенты для оценки и так далее. тогда быть может вы получите что-то, играющее с рейтингом 2400-2500. Далее, можно ввести что-то типа аппарата баесовых сетей для приведения неизвестных состояний к наиболее вероятно близкому теоретическому, и выбирать наилучший ход по ней. Впрочем, я почти уверен, что примерно такие идеи как раз и реализованы в той же рыбке, крафте, фрице и прочих (что там сейчас популярно?) Чтобы придумать действительно что-то новое, прочитайте о том, что уже придумало в данной области -- вероятно, оно вдохновит вас на новые открытия ![]() Добавлено через 4 минуты ПС. начните с работ ботвинника, если найдете. там основы и самое простое. я кажется, встречал в какой-то его книге
0
|
||
|
-58 / 18 / 0
Регистрация: 29.05.2013
Сообщений: 390
|
|
| 30.08.2013, 12:51 [ТС] | |
|
А вообще, исходя из количества возможных вариантов для просчета, все ваши знакомые просто зависли И отвиснут так примерно, только когда еще вселенная раз эдак 10^1000000 раз переродится, и вернется в текущее состояние
Вообще же, насколько я разбираюсь в программировании, такая программа пишется за пару часов. Что случилось с программистами не ясно до конца. Ну сказали бы, что программа нерабочая и никаких бы проблем не было. Правда есть вариант, что люди начали комбинировать методы и что-то исследовать и на чём-то там зациклились. Но вообще в любом случае странно, что люди пропали. Самое разумное объяснение- что это как-то связано с воровством. Относительно других вариантов, скажем посадить гроссмейстеров, то не ясно куда их сажать и зачем. Насколько я знаю в программах коммерческих используются огромные базы игр гроссмейстеров. Относительно новизны метода, то я думаю любители должны бы знать какие методы есть и если бы мой метод использовался, то они бы так и сказали... .
0
|
|
| 30.08.2013, 14:39 | |
|
Не по теме: И почему мании величия часто сопутствует мания преследования? :pardon:
0
|
|
| 30.08.2013, 14:43 | |||||||||
|
Подумайте. Разработчику нужно, как минимум:
Не по теме: хотя даже в самом простейшем варианте, имхо, наврядли вы ее напишите быстрее чем за неделю. В сааааамом простом, без учета тонкостей, и скорее всего она тупо будет виснуть при любом запуске Не по теме: такие тоже иногда бывают, поверьте, правда, довольно редко, но их все равно нужно отсеять по каким-то критериям. У того же Ботвинника было пару партий с комментами "и тут я понял, что мой противник решил мне зевнуть фигуру..." и на 10-15 ходу сдался. А базы есть, разумеется, о чем я собственно и говорю. Они огромны, там партий -- начиная с Филидора, и заканчивая Анандом, Топаловым, Каспаровым, и др. И ежу ясно, что рыбки с фрицами их юзают по самое небалуйся, вопрос лишь в том, как правильно их использовать. Для этого я вам и предлагаю почитать публикации на эту тему. Я не имею понятия, почему ваши знакомые вам не отвечают. но если они не совсем дураки, я не думаю, что они всерьез заняты подобной идеей. Обычно, все таки те, кто писал движок, должны разбираться в комбинаторике и представлять количество вариантов... А про то, что они зависли -- так я пошутил ![]() В конце концов, если вы разбираетесь в программировании, и уверены, что можно написать за пару часов, зачем с кем-то было делиться этой идеей? взяли бы да написали. я представляю, сколько это потребует работы, а также понимаю, что в таком варианте это бесполезно. У меня у самого были когда-то подобные идеи, когда я занимался шахматами. Но, кажется, уже тогда я понимал, что бесполезно пытаться решить именно таким образом. Кажется, эту тему затрагивал еще Перельман (не, не тот, что Григорий. тот был Яков ) в "Занимательной алгебре" Не по теме: очень классная книжка, и легко читается, кстати, рекомендую! :) вот, кстати, если не верите, пожалуй Перельман говорил примерно об этом: http://ru.wikipedia.org/wiki/%... 0%BD%D0%B0 Однако, 10^120 это крошечная часть того, что получится после 40х ходов, в эндшпиле, там может быть огромное количество простых повторений. И программа, работающая рандомно, по сути будет вычислять, идти лишь по одному из этих путей... Может я и переборщил с 10^100000, но наврядли там будет меньше 10^1000. ну и в любом случае, я как-то задумывался и подсчитывал, за сколько смогут написать "обезьяны" из известной проблемы, если бы они были электронами, печатали бы со скоростью света, распространенные по всему объему Вселенной (погуглил и выбрал самое большое число, которое нашел), один из томов Войны и мира. Оказалось, что то около 10^50 раз должна переродиться Вселенная (ну всмысле, нашел, сколько она должна существовать, и поделил полученное время на вот это число). Если интересно, операции выполнял над длинными числами, получил даже вполне себе точный результат но вы хотябы можете представить себе время, на 10 триллионов перерождений вселенной? ок, тогда умножьте это на 10^40 и получите примерно то, что получил я...Вообщем, экспоненциальные задачи -- они экспоненциальные. А ваш алгоритм я не представляю, как можно аппроксимировать, чтобы получить приблизительные результаты. Имхо, получится просто громаднейшее число наикривейших партий, на каждом ходу каждый из соперников 50/50 примерно будет что-то зевать... Если даже взять 10^100 партий, и представить что в одну секунду обрабатывалось бы 3e8 партий, то получите что-то типа:
Разве это недостаточно большие числа, чтобы даже и не пробовать решать эту задачу вот так вот в лоб? Не? Ну дерзайте, удачи!
0
|
|||||||||
| 30.08.2013, 14:49 | |
|
Не по теме: NEbO, не тратьте зря время - посмотрите темы ТС.
1
|
|
| 30.08.2013, 15:09 | ||
|
Не по теме:
Впрочем, пожалуй, это имеет мало общего с тем, о чем говорит ТС... проведя какую то рандомную партию, если бы получилось сделать какие-то выводы, возможно, получится применить генетический алгоритм, например. Ведь по сути это задача глобальной оптимизации... Я более менее отдаленно себе представляю лишь генетику и нейронки, первый реализовывал программно (ну на диофантовых уравнениях, конечно:-[ ), второй представляю себе вот на уровне того, что описал выше... вообще, вероятно, тут подойдет метод роя, кажется, из картинок, которые я себе представляю про муравьев, он будет более подходящим... Кажется, там тоже начинается с рандома... эх, жаль что упустил столько времени и занимался только компьютерами:) надо было еще подтягивать знания по математике:) очень интересные эти, методы глобальной оптимизации. Добавлено через 7 минут
0
|
||
| 30.08.2013, 15:18 | |
|
В шахматных программах ключевые элементы: оценка позиции (алгоритмы+база партий), просмотр на определенную глубину с учетом полученных позиций и полный перебор (в окончаниях). В случайной игре один зевнет ладью, другой ферзя и "жертва ладьи" будет считаться лучшим ходом
.
0
|
|
| 30.08.2013, 15:28 | |||
|
Не по теме: впрочем, поэтому, наверное, их и не любил, потому что считать много надо, и поэтому так до кмс-а и не дотянул:) Добавлено через 3 минуты из шахмат то главное все правила знать, ну и основные моменты, так по мелочи... мне так почему-то кажется)
0
|
|||
|
-58 / 18 / 0
Регистрация: 29.05.2013
Сообщений: 390
|
|
| 30.08.2013, 16:41 [ТС] | |
|
NEbO
Вы видно не совсем в курсе. Я тоже не в курсе, но знаю, что в программировании есть команда chess, где всё это реализуется в смысле правил. То есть всё уже есть, надо лишь реализовать алгоритм. Что же касается времени, то я говорил о специалистах. Один специалист написал подобное очень очень быстро. И эта программа у меня есть. Она просто разыгрывает случайные партии и определяет количество матов и патов. В принципе эта программа меня и подтолкнула, чтобы сделать играющую программу. Лично я программировал очень очень давно и весьма простые вещи, но я имею представление о сложности задач и сколько может уйти времени. Так что Ваше объяснение почему не ответили шахматные программисты совершенно не ясно. Ну что им стоило сказать, что идея не работающая? Единственная там серьёзная проблема в самом рендоме, так как обычный рендом работает крайне медленно для решения подобных задач, но есть рендомы сделанные специально для шахмат, они работают очень очень быстро. Кстати, я в той программе, которая у меня есть сделал небольшие проверки. Скажем убирал ладью белых из начальной позиции и проверял как изменится количество случайных матов. И оно меняется( уменьшается). . Так что идея ( но это и понятно в принципе), с этой точки зрения вполне рабочая. Если хотите, я дам Вам эту программу, сами поиграете и определите. Но ещё раз повторю - там рендом крайне медленный. 10000 партий разыгрывается за 4 часа. А проограммист , который взялся за решение этой задачи сказал, что его рендом разыграет такое количество за секунду.
0
|
|
| 30.08.2013, 17:48 | |
|
Lois, у меня нет слов
![]() странно только, что в вашем программировании нет команды, генерирующей очень быстрые программы для любых шахматных вычислений
0
|
|
| 30.08.2013, 17:48 | |
|
Помогаю со студенческими работами здесь
11
Теория игр
Теория игр Теория игр Теория Игр Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|