Наш новый движок Strelka!!!

Тема в разделе "Машинное отделение", создана пользователем SDChess, 5 май 2007.

  1. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    А мне мой вариант больше нравится. Твой не передает всех эмоциональных оттенков. :p
  2. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Какая разница - шашки или шахматы. Суть и там, и там - одна и та же.

    В шахматах ход задавать проще - в одной 16-битной переменной умещается. Это очень важно для нового алгоритма - там списки ходов надо в памяти хранить для экономии в скорости. А в шашках - для каждого хода надо до 12 клеток запоминать - не удобно.
  3. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    В шашках тоже можно придумать формат близкий к 2 байтам на ход.
  4. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Похоже, можно начинать собирать коллекцию клонов Стрелки. Недавно появилась некая "Rybka 1.0 beta 2", автор - Васик Райлих. Теперь - какой-то Scofield 3(Panama), автор - Ben Lau.

    Господа даже не утруждают себя что-то изменить в программе - просто меняют название и автора, компилируют и выпускают. Делать им что-ли нечего?
  5. VolMike Учаcтник

    • Участник
    Рег.:
    21.08.2007
    Сообщения:
    112
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Провоцируют.
  6. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
  7. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Кстати, VolMike.

    Помнится осенью Вы неплохо тестировали предыдущую версию Стрелки. Причем - под Ареной, что для меня очень удобно (там PGN интереснее).

    Нет желания повторить тесты с новой версией? Было бы очень хорошо.
  8. MS Михаил Семионенков

    • Команда форума
    Рег.:
    11.02.2006
    Сообщения:
    6.542
    Симпатии:
    3.361
    Репутация:
    175
    Оффлайн
    "Дорогой Ватсон, я всегда Вам об этом говорил" :)
    Жаль, закопался совсем...
  9. VolMike Учаcтник

    • Участник
    Рег.:
    21.08.2007
    Сообщения:
    112
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Сейчас у меня не так много выч. ресурсов, но, думаю, 1 комп выделить удасться.
    Начну с понедельника.
  10. ChessTerminator75 Андрей

    • Участник
    Рег.:
    22.05.2007
    Сообщения:
    121
    Симпатии:
    0
    Репутация:
    0
    Адрес:
    Челябинск
    Оффлайн
    Интересная информация в файле "Zappa Mexico II Release Notes.txt"
    Хотел бы выделить следующий фрагмент:

    3. Strelka
    Since this release comes immediately after the release of the
    Strelka source code, I assume that there will be a hue and cry from
    the unwashed masses about how I am pirating the intellectual
    property of Vasik Rajlich. Let me just immediately say that there
    are simply no new ideas in Strelka anyway; my shock at reading the
    Strelka source code was not generated by the brilliancies contained
    therein but by the lack thereof. Looking at Strelka finally
    convinced me to do some things that everyone else has done for a
    long time (like futility pruning), and to clean up my code a bit
    since I had always been developing in "crunch" mode. I did not add
    any eval terms from Strelka (my view being that Zappa's eval is way
    better than Strelka's anyway) and I also did not do the crazy
    futility pruning where it drops into the qsearch at depth 3. In
    summary, Strelka was more a source of motivation than chess ideas.
    Of course, you will just have to take my word for it until some
    enterprising Russian hacker disassembles Zappa :)

    (у кого более менее нормальный переводчик переведите пожалуйста :)

    Я предлагаю прислушаться к тому что Anthony Cozzie пишет о Стрелке (особенно о ..the crazy futility prunin).

    Конечно грустно что даже автору самого сильного движка в мире приходится оправдываться.
    Повторю что по моему это совершенно не нормально.

    Ну и конечно обратил внимание что в конце Cozzie пишет:
    "Конечно вам придется поверить мне на слово до тех пор пока какой нибудь
    инициативный хакер из России не дизассемблирует Заппу :)"
  11. klf Заслуженный

    • Заслуженный
    • Участник
    Рег.:
    06.12.2006
    Сообщения:
    918
    Симпатии:
    6
    Репутация:
    0
    Адрес:
    Москва
    Оффлайн
    автопепревод

    3. Strelka Начиная с этого релиза, вышедшего немедленно после выпуска исходного кода Strelka, я предполагаю, что будет оглушительный шум от помоев о том, как я граблю интеллектуальную собственность Vasik Rajlich. Позвольте мне только немедленно сказать, что так или иначе, просто нет никаких новых идей в Strelka; мой шок при чтении исходного кода Strelka не был произведен блесками, содержавшимися там, но нехваткой этого. Просмотр Strelka наконец убедил меня делать некоторые вещи, которые все остальные сделали в течение долгого времени (как сокращение тщетности), и немного вычистить мой код, так как я всегда развивался в способе "хруста". Я не добавил никаких сроков оценки от Strelka (мой взгляд, являющийся, что оценка Заппы - так или иначе лучше, чем у Стрелка), и я также не делал сумасшедшего сокращения тщетности, где это заскочит в qsearch в глубине 3.
    В резюме, Стрелка была больше источником побуждения, чем шахматные идеи. Конечно, Вы будете только иметь мое честное слово, пока какой-нибудь инициативный российский хакер не дисассемблирует Заппу
  12. ChessTerminator75 Андрей

    • Участник
    Рег.:
    22.05.2007
    Сообщения:
    121
    Симпатии:
    0
    Репутация:
    0
    Адрес:
    Челябинск
    Оффлайн
    "оглушительный шум от помоев"
    хорошо сказано :D
  13. krey Михаил Кройтор

    • Команда форума
    Рег.:
    10.04.2006
    Сообщения:
    3.709
    Симпатии:
    50
    Репутация:
    1
    Адрес:
    Кишинев
    Оффлайн
    собрал стрелку при помощи gcc. ну и намучался! пришлось каждой константе постфих ULL приписывать... :)
  14. apm Учаcтник

    • Участник
    Рег.:
    16.05.2007
    Сообщения:
    119
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    krey,
    жаль что вы не заметили топик http://kasparovchess.crestbook.com/viewtopic.php?id=2381
    некоторое время назад я тоже мучался с gcc и мне дали ссылку с патчем.

    Я правда с тех пор не устаю удивляться как играет стрелка.
    Запустил ее на fics где она сыграла 1250 игр.
    Есть на мой взгляд шедевры, а есть просто не ясные, не объяснимые для меня сливы.
    Особенно связка эндшпиль+мало_времени+мало_фигур+проходные - стрелка порой исполняет только держись, жертвует фигуры направо налево, отдает весь материал, и вдруг скачком меняется оценка с +7 на -3.
  15. krey Михаил Кройтор

    • Команда форума
    Рег.:
    10.04.2006
    Сообщения:
    3.709
    Симпатии:
    50
    Репутация:
    1
    Адрес:
    Кишинев
    Оффлайн
    как раз заметил, только одно дело, использовать это патч под никсом, другое - собирать под виндой. я еще не умею линуксовые скрипты выполнять под винду. :( да и более того - этот скрипт модификаторы константам не ставит.
  16. apm Учаcтник

    • Участник
    Рег.:
    16.05.2007
    Сообщения:
    119
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Утилита patch и множество других нормальных вещей доступно в Windows
    через cygwin, но если неохота вникать в cygwin - есть и
    уже собранный проект
    http://sourceforge.net/projects/unxutils/
  17. krey Михаил Кройтор

    • Команда форума
    Рег.:
    10.04.2006
    Сообщения:
    3.709
    Симпатии:
    50
    Репутация:
    1
    Адрес:
    Кишинев
    Оффлайн
    да ладно, я уже всё сделал. другое дело, что меня интересуют 2 ассемблерные вставки.
    Код:
    _asm { mov  eax, dword ptr bm[0]
             test eax, eax
             jz   f_hi
             bsf  eax, eax
             jmp  f_ret
    f_hi:    bsf  eax, dword ptr bm[4]
             add  eax, 20h
    f_ret:
    как это понять? на с/с++
  18. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Инструкция BSF просматривает исходный операнд, начиная с бита 0 (младший бит), определяя первый ненулевой бит. Если все биты операнда-источника являются нулевыми, то флаг нуля очищается. В противном случае флаг нуля устанавливается, а в целевой регистр (приемник) копируется номер первого найденного ненулевого бита.
  19. bankuss Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    24.05.2006
    Сообщения:
    1.084
    Симпатии:
    38
    Репутация:
    6
    Оффлайн
    при компиляции под х64 этот блок приходиться заменять ;)
  20. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Под х64 наверно одной инструкции bsf достаточно...
  21. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    http://rybkaforum.net/cgi-bin/rybkaforum/topic_show.pl?pid=41925#pid41925
  22. Renegat23 Заслуженный

    • Заслуженный
    Рег.:
    08.02.2007
    Сообщения:
    1.823
    Симпатии:
    3
    Репутация:
    0
    Оффлайн
    А по русски?
  23. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Попроси у Коззи повторить это тебе по-русски...
  24. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    В целом, Коззи почти дословно повторяет первый пост Рыбкина.
  25. Gold Dragon Новичок

    • Новичок
    Рег.:
    21.08.2007
    Сообщения:
    68
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Я тут гуглом попытался перевести. Вот что получилось:

    "Одна из интересных вещей о компьютерных шахмат заключается в том, что она
    является одновременно и конкурентоспособной научной деятельности. Как выпускник
    студент, я подчеркнув бывшей. Как пользователь и компьютер в шахматы
    энтузиаст, вы подчеркнув последнего.

    В академических кругов, новизна всем правилам. Это гораздо лучше, чем к роману
    очень экспериментальные результаты. Цель состоит в том, чтобы добавить к знаниям
    рода человеческого, и ключевой вопрос: "Что можем мы, как сообщество
    извлечь из этого? "Вам придется принять мои слова на веру, что
    исходный код Стрелка просто не способствует состояние на
    искусство в создании компьютерных шахматных двигателей. Рассмотрим фрукты: Вы можете воспользоваться
    новые идеи, фрукты, добавить их в существующую программу шахматы, и
    сделать его лучше. Почти каждый использует поздно перейти сокращения некоторых
    сортировать сегодня. Существует нет эквивалента в Стрелке, не магические
    методов, которые могут быть добавлены к новой шахматной программы и придать ему 100
    Эло. Существует не эквивалентна нулевой шаг, истории обрезки деревьев, и даже
    ч. расширениями. В течение двух лет, когда вещи становятся
    скучно компьютерных энтузиастов шахмат всегда может дискуссии о том, что
    Рыбка была тайной. Задним умом, Васик должны были совершенно amused
    в этих обсуждениях, поскольку Рыбка в "секретных" было просто для того, чтобы быть супер
    оптимизирована для 3 или 4 раза быстрее, чем все остальное.

    Существует только одна вещь, которая действительно интересного об Стрелка: о том, что
    поиск по-прежнему важны. Множество людей (включая меня, в соответствии с
    темной школе Диепевеен) считает, что в 16-18 или в 20 наиболее слой был
    достаточно для любой позиции. Очевидно, что мы были неправы. Вот почему я
    уже сказал, что я думал, Васик пошли в другом направлении (на
    мере, от меня). Хотя я пытался улучшить оценки, то он был
    пытается оптимизировать свою программу, и поскольку Рыбка получает около 4-5 больше
    слоя, чем Заппа, его 5 кордом поиска, особенно в играх быстрее,
    оказались лучше, чем мой эвристический оценки.

    Во всяком случае, с инженерной точки зрения Стрелка (rybka) это просто фантастика.
    Она пакеты большинства поиск и оценку фрукты / Крафти в
    - то почти в 3 раза быстрее. Для тех из вас, что никогда
    письменные код, в 3 раза это очень много, учитывая, что фрукты и
    Крафти уже достаточно хорошо закодированы. Рыбка еще быстрее
    конечной beancounter, Фриц 5, в то время как имеющие гораздо больше, в соответствии с
    капюшоном. И вот почему я сказал, что Стрелка была более источник
    мотивация, чем понять, потому что я никогда не очень принято время,
    оптимизировать Заппа, убедили стандарта CS доктрина ", не тратьте
    Ваше время пытается улучшить констант на кап-время алгоритм ".

    Что это все сводится к представляет собой разницу между интересным и
    полезным, два качества, которые зачастую не связанных.

    Я думаю, что это о том, как наилучшим я могу сделать для того, чтобы попытаться объяснить мою
    точки зрения. Я лично имели пожизненный роман с наукой
    и техники. Я считаю, это удивительное, что они работают на всех. Представьте
    в zillions квантовых взаимодействий в тех случаях, когда мы говорим о том, что
    Американский доллар потерял стоимости по отношению к евро! Это мы можем построить
    модели для таких сложных явлений, является абсурдным, - и еще тех,
    модели работы до 20 знаков после запятой. Вот почему я пытаюсь
    заработать моей PhD: Я хотел бы сделать несколько небольших вклад в науку.
    Конечно, я не ожидаю, все, чтобы это мнение. Я не думаю,
    это особенно так Райлич; он, как чисто конкурента, который хочет
    игры, чтобы выиграть, и держать себя в twinkies. Просто потому, что он не
    научно интересно
    (или не было в 2005 году. Может быть, он сделал что-то интересное
    с тех пор), не делает каких-либо Рыбка менее большой шахматной программы.

    cheers,

    антропологический"
  26. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Кто такая Стрелка без таблицы материала, без отсечений на малой глубине и без оптимизации параметров ОФ.
    Без этого она будет явно слабее открытого Фрукта. А этого всего не было во Фрукте.

    Так что кое-что новое в Стрелке есть.
  27. Bison Учаcтник

    • Участник
    Рег.:
    18.01.2008
    Сообщения:
    49
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Кстати есть данные сколько эти самые "отсечения на малой глубине" реально ей приносят?
    Где-то встречался со словосочетанием Crazy Pruning или что-то типа этого, думаю неспроста :rolleyes:
  28. Pia Учаcтник

    • Участник
    Рег.:
    11.06.2007
    Сообщения:
    537
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Из Рыбки позаимствованное. Думаете, что Осипов Стрелку бросил - взял, что смог, а придумать самому -слабо...
  29. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Не очень много, но ощутимо.
  30. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Pia, [censored]

    Тем временем Энтони Коззи ругается с Васиком!

  31. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
  32. Bison Учаcтник

    • Участник
    Рег.:
    18.01.2008
    Сообщения:
    49
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    По мне так лучше более медленный, но зато удобоотлаживаемый код... Да и на скорости много не выиграешь по отношению к вложенным усилиям
  33. Хайдук Учаcтник

    • Участник
    Рег.:
    03.12.2007
    Сообщения:
    4.489
    Симпатии:
    9
    Репутация:
    0
    Оффлайн
  34. Atik_Yomin Учаcтник

    • Участник
    Рег.:
    06.01.2008
    Сообщения:
    13
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Появился новый клон Стрелки 2.0 под названием "hustle 5.01" Автор клона (или как он выражается движка основанного на коде Стрелки) все тот же Ben lau.
  35. thenewone Евгений Манев

    • Участник
    • Старожил
    Рег.:
    09.06.2006
    Сообщения:
    3.173
    Симпатии:
    18
    Репутация:
    1
    Адрес:
    Пловдив
    Оффлайн
    Неужели нет желающих, чтоб Стрелка поддерживала многопроцесорность?
    Давайте попросим Юрия Осипова вместе :)

Поделиться этой страницей