![]() |
|
![]() ![]() ![]() |
|
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
Хочу, чтобы мне программист написал прогу, которая делала бы ходы с помощью генератора псевдослучайных чисел ( рендома).
Возможно ли просчитать скажем вот такую задачу- какое количество минимальное белых коней надо иметь, чтобы программа делая ходы рендомно и за белых и за чёрных, поставила бы мат за минимальное количество ходов. Также как вычислить расположение этих коней на доске ? |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Один конь, один ход. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
||||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Возможно. В принципе, задача не очень высокой сложности.
Но! Рандомный алгоритм весьма ресурсоемок. Если нужно то чем больше у Вас на доске фигур, тем больше рандомных вариантов ходов придется рассматривать. Поэтому Вы быстро упретесь в невозможность просчитать на обычном компьютере, а еще увеличивая число фигур - и на самом суперкомпьютере, хранящемся где-то в подвалах НАСА или Сколково ![]() Поэтому Вам придется смириться с решениями не идеальными, а "лучше остальных, выпавших рандомно за разумный промежуток времени". Добавлено через 1 минуту и 2 секунды Зы, в детстве я знал правила шахмат. Помнится один конь (при короле, естественно) против короля это не мат, а ничья ![]() -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
А Вы знаете скорость работы рендома ? Мне написали прогу цветомузыкальную, она выдаёт 512 нот в секунду с помощью рендома. Можно как-то прикинуть количество ходов в задаче? Хотя бы порядок? |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
В таком случае минимальное решение = чёрный король, 55 белых коней и мат в 1 ход. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Ну рандомный выбор с частотой 512 герц - совсем скромная задача. Но, конечно, чуть быстрее, чем механический калькулятор Феликс ![]() Проблема не в скорости генерации рандомных ходов. Проблема в том, что с каждой новой фигурой на доске число возможных вариантов развития событий увеличивается лавинообразно. Поэтому, чтобы случайным образом найти идеальный (или хотя бы очень бы очень близкий к идеальному) вариант, придется лавинообразно увеличивать время работы программы. Кстати, у Вас что-то завязано на тупой рандомный метод и есть какие-то причины его придерживаться? Есть ведь гораздо более эффективные подходы. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
Рендомный метод не тупой. Надо просто знать что это очень глубоко. Вот исследования в Принстоне http://www.psyleron.com/robot.aspx |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
||||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Логика. Просто постройте это решение, и поймёте, что ни убрать белого коня, ни заменить его на чёрного - невозможно.
Сомневаетесь? предложите своё решение. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
я не понял, откуда взялась идея замены белых коней на чёрных. Об этом речь вообще не шла. Хорошо, пускай будет так. Тогда немного более сложно- чёрный король ходит первым. Цель та же, поставить ему мат. |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Ну просто потому что место чёрного короля определено, снятие белого коня порождает возможность сделать не-матующий код - остаётся только замена. Задача не решается. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
а кто определил место чёрного короля ? Я сейчас пришёл к выводу, что Ваш ответ неверен. Минимальное число коней для мата в 1 ход- 62 На h8 стоит чёрный король, на a1 белый конь. Они движутся с помощью рендома. Сколько должно быть среднее число ходов, чтобы король гарантировано съел коня? |
|||
|
||||
Akina |
|
||||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
55 меньше, чем 62. Так что вывод одного тут присутствующего оратора - неверен.
Квадратный корень из бесконечности. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
||||
|
|||||
Lois |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 19.5.2013 Репутация: нет Всего: нет |
можете показать позицию? Я немного ошибся не 62, а 61. Добавлено через 1 минуту и 35 секунд можно пояснить ход вычисления? Добавлено через 12 минут и 18 секунд Я гляжу , Вы неплохо разбираетесь в математике. Не хотите принять участие в моём проекте? http://forum.vingrad.ru/forum/act-ST/f-193...4/unread-1.html |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |