Предназначение программы.
Программа предназначена для решения преферансных задач. Она не играет в преферанс.
Зато поможет Вам в освоении его приемов, что будет полезно для реальных игр.
Программа решает задачи только на открытых картах, но это не уменьшает их ценность. Расчет расклада осуществляется практически мгновенно.
Для запуска программы необходимо иметь разрешение экрана не менее чем 800 на 600
точек и 1 Мегабайт оперативной памяти.
Screenshot программы, пример задачи.
Это одна из задач, на которых отлаживалась программа. Она носит название мизер Ласкера,
но не потому, что Ласкер играл этот мизер, а потому, что смог поймать его. Север играет
мизер, ходит запад. Попробуйте решить задачу, а уж потом
обратитесь к помощи компьютера. А если Вы профессионал, то скажите сколько взяток при
оптимальной игре берет север.
Самостоятельно решить я эту задачу не смог.
Комплект поставки.
Комлект поставки (zip-архив) включает в себя
Установка задачи.
Для начала установки новой задачи выберите из меню "Файл" опцию "новая задача" или нажмите Ctrl+N
Соответсвующая опция меню дублируется на панели инструментов.
После того как Вы быбрали опцию новая задача - все карты находятся в сносе. Для того чтобы отдать карту игроку север,
подведите мышь к нужной карте и тащите ее к игроку север, после этого отпустите мышь.
Также есть возможность вернуть карты в снос.
Примечание 1.
После установки задачи все игроки должны иметь одинаковое число карт (и неравное нулю).
Для удобства пользователя под каждой кнопкой указано сколько он имеет карт.
Примечание 2.
После нажатия на кнопку "Найти лучший ход" все параметры блокируются. Для разблокировки их
используйте кнопку "Новая задача".
Программа поставляется с задачами, на которых она отлаживалась.
Сохранение задачи в формате html.
Понравившуюся вам задачу можно сохранить в формате html. Эта опция находится в подменю файл. Если хотите перенести сохраненные задачи на свою страницу не забудьте скопировать файлы с картинками мастей. После сохранение задачи атоматически просматривается в Internet Explorer
Примечание. Для того чтобы использовать эти задачи, а также задачи сохраненные решателем на своих страницах скопируйте к себе файлы с картинками мастей: s.gif c.gif d.gif h.gif
Пример сохраненной задачи.
|
|
|
|
Разбор мизера Ласкера.
Если Вы не знаете, что такое мизер Ласкера, то обратитесь к разделу -
Screenshot программы, пример задачи.
Я специально написал этот раздел, чтобы предостеречь себя от писем, заявляющих, что моя
программа играет неоптимально в мизере Ласкера.
Эту задачу, впрочем как и все другие, я нашел в рунете. Мне нужно было знать точно
сколько взяток берет заказавший такой мизер. И на одном из сайтов (сейчас не помню где)
я нашел "решение " показывающее, что мизерист берет три взятки. Приведу его.
Запад ходит три раза в бубну, на что север проносит свои три бубны и восток сносит бубну и
две червы. После этого запад ходит в десятку бубей.
Теперь очень веселая ситуация. Запад позволяет северу закрыть одну из дырок.
Допустим север снесет 8 пик, тогда восток снесет туза треф, после чего запад два раза ходит
в черву и запад проносит еще две трефы. После чего запад выходит в короля треф и восток сносит
последнюю трефу, далее север берет три взятки.
Аналогичная ситуация, если север пронес бы 8 треф.
Вот такое я нашел решение в инете.
Но может возникнуть вопрос. А что будет если север пронесет черву? Это второй прикол. Мизеристу дают закрыть дырку, а
он не хочет ее закрывать. Но это и есть оптимальный ход! В этом случае север берет только две!!! взятки.
Ссылки.
К сожалению найти хорошие задачи в рунете трудно, мне пришлось потрудиться. Все началось с
задачи Анатолия Барбакару. Она мне очень понравилась, потому что я не смог ее решить.
До этого времени я думал, что преферанс достаточно прост - надо только иметь немного опыта.
Это и послужило толчком для создания программы.
В связи с этим дам нескольк ссылок на преферансные задачи.
http://www.review.pref.ru/books/articles/003.html
http://www.review.pref.ru/books/lashmanov/012.html
Здесь на мой взгляд содержется достаточно слабые задачки для начинающих (к мизеру Ласкера
это не относится :) )
http://mpage.portal.ru/max/pref/puzzles.htm
Пожелания, просьбы, замечания...
Эта программа была написана Алексеем Словесновым в 2002 году.
Все вопросы, замечания, пожелания и так далее можете присылать мне.
Email: slovesnov@smtp.ru
Мне бы очень хотелось работать в российской и/или западной фирме и заниматься разработкой
логических игр. Если кто-нибудь хочет писать вместе со мной логические игры -
присоединяйтесь.
Хотелось бы создать группу программистов, пишущих логические игры.
Пожалуйста присылайте мне публикации о моих программах если увидите их в периодической печати.
История версий.
Версия 1.0 7 мая 2002.
Версия 1.1 20 мая 2002. Расчет ускорен на 15%, изменена установка задачи.
Версия 2.0 1 июня 2002. Сильно ускорен расчет, улучшено внутренее представление расклада (раньше в виде массива, теперь в виде двусвязного списка),
добавлены две новые задачи "Задача Галактинова" и
"Сложный расклад", удалено хеширование.
Версия 2.1 7 июня 2002. Кажется идеи уже иссякли (пока :) ) улучшен help. Добавлены отсечения двух видов (нижние слои и усечение интервала alpha beta). Добавлено описание логики пограммы.
Версия 2.2 25 июня 2002. Улучшен инверсный перебор, в связи с этим счет сильно ускорился в очередной раз. Добавлено сохранение расклада в формате html. Сильно переделан раздел задачи. Мизер Ласкера пока не сдается.
Версия 3.0 13 июля 2002. Немного улучшен перебор по козырям и когда нет подходяшей масти. Добавлено хеширование (вот это уже существенно), теперь программе требуется 1 МБ оперативной памяти. Добавлено сохранение расклада в html без картинок, немного улучшено сохранение задач в html. Похоже что это последняя версия. Начата работа над решателем задач по бриджу.
Сравнительная таблица времени расчета расклада (в секундах).
задача | В 1.1 | В 2.0 | В 2.1 | В 2.2 | В 3.0 |
---|---|---|---|---|---|
Барбакару. | 14.68 | 2.07 | 0.93 | 0.07 | 0.00 |
Мизер Ковалевской. | 4.75 | 2.47 | 1.18 | 0.64 | 0.01 |
Мизер Ласкера. | 24.19 | 13.7 | 4.92 | 3.87 | 0.03 |
Задача Галактинова. | 32.35 | 6.3 | 2.81 | 0.71 | 0.04 |
Сложный расклад. | 501.3 | 17.74 | 2.31 | 0.18 | 0.03 |