Шашки в России

Базы шашечных партий - Что должны показывать программы?

MiG - Фев 18, 2004 - 07:54 PM
Тема сообщения: 2150
Сергей Старцев: «Вообще то, это мой принципиальный подход - не "грузить" пользователя ненужными ему терминами и действиями - будь то размер хэш-таблицы, либо слияниями/разбиениями баз партий».



Полностью не согласен с таким подходом. Шашечная программа должна предоставлять пользователю полную информацию — скорость, глубину, размер/заполнение хэш-таблицы, работу с ЭБ и прочее.



Причем, чем полнее информация, тем лучше.



Конечно, если Вы позиционируете свою программу как решение начального или среднего уровня, то действительно, подробная информация необязательна. Но вот профессиональная шашечная программа просто ОБЯЗАНА как можно более подробно информировать пользователя обо всём, что с ней происходит в данный момент.



С уважением,

МиГ.[addsig]
plus600 - Фев 18, 2004 - 08:12 PM
Тема сообщения: 2151
Михаил, а Вы не путаете профеесионального программиста и профессионального шашиста? Вы всерьез считаете, что профессиональный шашист должен знать значения термина "хэш-таблица" и для чего она нужна? И много у Вас таких пользователей?

Глубина расчета - да нужна. Скорость? А что собственно она показывает? По мне - так это приятная "фенечка", не более того.

В конце концов давайте не будем фантазировать. Есть пользователи программ - вот пусть и выскажутся - что им нужно. (Хотя я свою позицю формирую именно из общения с ними)[addsig]
MiG - Фев 19, 2004 - 07:52 AM
Тема сообщения: 2153
Нет Сергей, я ничего не путаю.



Профессиональный шашист, использующий программу может и не знать, что такое хэш-таблица и как она работает. Но он должен знать следующее:



1. Хэш-таблица — один из критических сегментов программы.

2. Когда хэш-таблица полностью заполнена, дальнейший перебор почти бесполезен.



А в связи с этим он должен видеть размер хэш-таблицы и её состояние на данный момент.



Скорость — отнюдь не "фенечка". Когда скорость резко падает по сравнению с обычной, значит, что-то программу в данный момент "не устраивает". И пользователь тоже должен знать об этом факте.



С уважением,

МиГ.[addsig]
plus600 - Фев 19, 2004 - 08:05 AM
Тема сообщения: 2154
А я считаю, что негоже программисту перекладывать решение этих проблем на плечи пользователей и решаю их автоматически. Это называется "автоматизация"

Пример: в классических Жигулях есть ручка подсоса, и бедный автолюбитель ею регулирует обороты холостого хода. А в современных машинах (даже в Ладах) это делает автоматика. [addsig]
Alkand - Фев 19, 2004 - 08:27 AM
Тема сообщения: 2155
Quote:
Шашечная программа должна предоставлять пользователю полную информацию — скорость, глубину, размер/заполнение хэш-таблицы, работу с ЭБ и прочее. Причем, чем полнее информация, тем лучше.





Надеюсь, вы не поссоритесь



На всякий случай выскажу свое мнение.



Для начала, я бы отделил функции игровых прогамм от программ баз данных. Я отнюдь не против сочетания всего "в одном флаконе", но мне так проще сформулировать.



Скорее всего вы начали дискуссию об игровых П. Лично мне не важно видеть скорость и кол-во переборов. Если я уверен в полном переборе, то достаточно видеть глубину рассчета в ходах (полуходах). Также важно для точной оценки понимать, "добивает" ли программа до ЭБ. При этом считаем, что ЭБ ошибок не имеет и дает верную о окончательную оценку позиции.

Полезно иметь возможность сравнить оценки вариантов при рассчете и увидеть сильнейшую атаку или защиту. Понятно, что это - с точки зрения программы.

При оценке в начале и середине партии, когда программа не может вынести окончательного вердикта об оценке, хорошо бы видеть прогноз, за какое время будут посчитаны следующие полуходы. Быть может не стоит ждать, а ввести сильнейшее продолжение самому.

Что-то мог и позабыть, но то, что мне не важен размер и заполнение хэш-таблицы - это точно. Я и точного понятия о ней не имею



По программам баз партий я не могу дать оценки, приближенной к объективной oops: Я много работал с Чесс Ассистант и Чесс Бэйз и мне нравятся их интерфейсы. По-моему к ним близки и Дамбэйз с Авророй.



Надеюсь, свое веское слово скажет Александр Моисеев. У него бОльший опыт работы с шашечными программами. [addsig]
MiG - Фев 19, 2004 - 09:01 AM
Тема сообщения: 2156
Ух ты! Вот это да! А это как!?



Если, например, на машине пользователя запущены приложения, расходующие ресурсы, PLUS 600 эти приложения автоматически вырубает?



Или, если на диске места не хватает, PLUS 600 "чистит" его на свое усмотрение?



А если серьёзно, Сергей, то никакая автоматизация не заменит действий пользователя по оптимизации. (Вот, стихами заговорил )



Сравнение с машинами тут неуместно. Авто делают на заводах и их "конфигурация" для каждой модели известна заранее. Чего не скажешь о компьютерах



С уважением,

МиГ.



P. S. Против автоматизации ничего не имею. Без неё — никуда. Но и без "ручной" настройки часто не обойтись...[addsig]
plus600 - Фев 19, 2004 - 09:11 AM
Тема сообщения: 2157
Да нет ругаться и не собираемся.

Разумеется приложений не вырубаю и диск не чищу, но вот учитывать те параметры среды в которой Plus запускается - учитываю, также автоматически подстраиваю работу с базой окончаний, хэш-таблицей и многоми другими внутренностями.



И мне кажется, Александр высказался как пользователь очень по существу. И, по результатам общения на последнем матче, я уже добавил окошко с цепочками двух лучших (с т.з. программы) ходами - пока это "полускрытый" режим - Ctrl-4.

Повторюсь, собственно именно от высказанных потребностей пользователей я и иду (что-то еще никто меня не просил показывать размер и степень использования хэша транспозиционной матрицы )[addsig]
MiG - Фев 19, 2004 - 09:54 AM
Тема сообщения: 2158
Александр Борисович,



исходя из Вашего пожелания "видеть прогноз, за какое время будут посчитаны следующие полуходы. Быть может не стоит ждать..." как раз делаем вывод, что для Вас важно видеть размер и заполнение хэш-таблицы.



Тут все довольно просто: если Вы увидели, что хэш заполнился, а программа ведет перебор на большой глубине, то окончания перебора (текущей итерации) можно не ждать.



И т. д., таких пунктов можно набрать довольно много. Тут, по-моему, всё ясно — чтобы работать с игровой программой максимально эффективно, нужно видеть и понимать, что с ней происходит



С уважением,

МиГ.



P. S. С Сергеем мы не поссоримся , так как всегда спорим корректно и по делу. [addsig]
plus600 - Фев 19, 2004 - 10:01 AM
Тема сообщения: 2159
Однако, Михаил могу подкинуть идею - как раз достаточно просто оптимизировать использование хэш-таблица так, чтобы она НИКОГДА не заполнялась до конца в процессе счета. [addsig]
MiG - Фев 19, 2004 - 10:11 AM
Тема сообщения: 2160
Quote:
Разумеется приложений не вырубаю и диск не чищу, но вот учитывать те параметры среды в которой Plus запускается - учитываю, также автоматически подстраиваю работу с базой окончаний, хэш-таблицей и многоми другими внутренностями





А если ресурсов для оптимальной работы не хватает, PLUS 600 сообщает как-то об этом пользователю?



Quote:
я уже добавил окошко с цепочками двух лучших (с т.з. программы) ходами





Сергей, а почему не полностью лучший вариант (best line)?



С уважением,

МиГ.[addsig]
plus600 - Фев 19, 2004 - 10:11 AM
Тема сообщения: 2161
1. А что значит для оптимальной работы? Под каждые условия программа подстраивается в разумных пределах и это будет оптимальная работа программы в текущих условиях. Если ресурсов совсем не хватит, то так и скажет.

2. Так эта цопочка и есть best line, только для двух вариантов.[addsig]
MiG - Фев 19, 2004 - 10:13 AM
Тема сообщения: 2162
Quote:
Однако, Михаил могу подкинуть идею - как раз достаточно просто оптимизировать использование хэш-таблица так, чтобы она НИКОГДА не заполнялась до конца в процессе счета.





Это как? Чтобы не заполнялась физически или логически?



С уважением,

МиГ. [addsig]
plus600 - Фев 19, 2004 - 10:17 AM
Тема сообщения: 2163
Не понял вопроса. А "логически" это как? Я имел ввиду, сделать так, чтобы не возникала ситуация с исчерпанием ее при расчете.[addsig]
MiG - Фев 19, 2004 - 10:22 AM
Тема сообщения: 2165
Quote:
1. А что значит для оптимальной работы? Под каждые условия программа подстраивается в разумных пределах и это будет оптимальная работа программы в текущих условиях. Если ресурсов совсем не хватит, то так и скажет.





Оптимальная работа — это когда программа выдает максимум того, на что она способна. А подстроиться, к примеру, можно и под Пентиум-90 с 16 Mb ОЗУ. И программа будет играть, что-то видеть и т. п.



Но не этого, выражаясь советским речекряком, ждут от нас "товарищи профессиональные шашисты" Подчеркиваю, профессиональные, так как глубокая оптимизация шашечных программ прежде всего нужна профессионалам.



Quote:
2. Так эта цопочка и есть best line, только для двух вариантов.






Да, понял и уже посмотрел



Quote:
Я имел ввиду, сделать так, чтобы не возникала ситуация с исчерпанием ее при расчете.





А как такое возможно? Что такое "нескончаемая" хэш-таблица



И ещё, Сергей. Наша дискуссия пробудила во мне желание поюзать новую версию PLUS 600. Что я и сделал. И есть некоторые вопросы.



1. PLUS 600 показывает количество обработанных позиций так: 31 455K Что означает это число?



2. Что означает число "скорость"? Количество позиций в секунду?



3. Какой объём оперативной памяти нужен PLUS 600 для оптимального перебора?



4. Почему длина цепочек лучших вариантов получается меньше, глубины перебора, а сами цепочки разной длины?



Буду благодарен, если разъясните.



С уважением,

МиГ.[addsig]
plus600 - Фев 19, 2004 - 10:30 AM
Тема сообщения: 2166
Оптимальная работа — это когда программа выдает максимум того, на что она способна на данном компьютере в данный момент. Наверное более корректно использовать термин "максимизация"?

Хэш-таблица, разумеется не моежт быть нескончаемой, вот алгоритм ее использования может быть разным.

1. 31 445К - К значит "кило-позиций" (то есть 31 миллион), если подожать то будут и "мега-позиции" (миллионы)

2. Да

3. 2Гб. Больше использовать не умею. А для оптимального еще лучше процессор побыстрее.

4. Пока чисто технические сложности. Если для лучшего варианта их можно побороть (правда не уерен, что нужна вся цепочка, может хватит того что есть?), то для второго вряд ли это возможно из-за сути перебора.

[addsig]
Время в формате GMT + 3
PNphpBB2 © 2003-2007