Новости GreKo

Discussion in 'Машинное отделение' started by WinPooh, 2 May 2006.

  1. krey
    Оффлайн

    krey Михаил Кройтор Staff Member Команда форума

    Репутация:
    1
    эта, да... как раз у Лео на форуме прочел :) поздравления мои наиглубочайшие!
     
  2. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
  3. nn
    Оффлайн

    nn Заблокирован

    Репутация:
    124
    Larry Kaufman:
    To summarize the findings of my research, the basic table of values would be:

    P (pawn)= 1 BB(bishop pair)= +½ R(rook) = 5 B(bishop) = 3¼ N(knight) = 3¼
    Q(queen) = 9¾

    This table agrees with the statistics (within about 1/8 pawn accuracy) in nearly every case tested. A further refinement would be to raise the knight's value by 1/16 and lower the rook's value by 1/8 for each pawn above five of the side being valued, with the opposite adjustment for each pawn short of five. This last idea is too complicated for practical play, but I might recommend it for a computer program. If you prefer to trust grandmaster commentary more than my statistics in cases where they disagree, just lower the queen value by about one fourth [DH: to 9½] and you'll be right on target.

    http://mywebpages.comcast.net/danheisman/Articles/evaluation_of_material_imbalance.htm
    http://mywebpages.comcast.net/danheisman/Articles/doubled_pawns.htm
     
  4. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Попробовал подставить такие значения в Греку. В блиц-матче новая версия проиграла текущей со счётом порядка 8 : 16. Видимо, не всё то, что Рыбке здорово, годится для других движков. В каждом случае настройка индивидуальная...
     
  5. nn
    Оффлайн

    nn Заблокирован

    Репутация:
    124
    Попробовал подставить такие значения в Греку. В блиц-матче новая версия проиграла текущей со счётом порядка 8 : 16. Видимо, не всё то, что Рыбке здорово, годится для других движков. В каждом случае настройка индивидуальная...

    Chto mne nravitsya v vysheprivedennyh ssylkah tak eto sistematichnost podhoda.
    Da, naverno izmenit eti parametry, ne izmeniv pri etom drugie vryad li poluchitsya.
    Vot skazhem 27. ... Rc3 v partii nizhe kazalos by mozhno naiti pri maloi glubine perebora,
    esli sootnoshenie materiala pozvolyaet (chto rybka delaet, toga tozhe kazhetsya delaet no nemnogo pozzhe). Po Kaumanu poluchatesya chto yo okolo -0.75 chto ochevidno pereveshvaetsya prohodnoi peshkoi i drugimi factorami. Greko kazhetsya eto sovesm ne nravitsya

    [Event "Leningrad tt"]
    [Site "Leningrad tt"]
    [Date "1931.??.??"]
    [EventDate "?"]
    [Round "?"]
    [Result "0-1"]
    [White "A Yurgis"]
    [Black "Botvinnik Mikhail"]
    [ECO "A14"]
    [WhiteElo "?"]
    [BlackElo "?"]
    [PlyCount "74"]

    1.Nf3 Nf6 2.c4 c5 3.Nc3 b6 4.g3 Bb7
    5.Bg2 d5 6.cxd5 Nxd5 7.O-O e6 8.b3 Be7
    9.Bb2 O-O 10.Nxd5 Bxd5 11.d3 Nd7 12.Qc2 Rc8
    13.Rae1 b5 14.e4 Bb7 15.Nd2 Nb8 16.f4 Nc6
    17.a3 Qd7 18.Nf3 Rfd8 19.Rd1 Ba6 20.Ba1 b4
    21.a4 Nd4 22.Qb2 Bf6 23.e5 Be7 24.Nxd4 cxd4
    25.Qe2 Rc5 26.Bb2 f5 27.h4 Rc3 28.Bxc3 dxc3
    29.Qe3 Bxd3 30.Rf2 Qd4 31.Qxd4 Rxd4 32.Bf1 c2
    33.Rc1 Bxf1 34.Rcxf1 Rc4 35.bxc4 Bc5 36.Kg2 Bxf2
    37.Kxf2 b3 0-1
     
  6. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
  7. ProstoTak
    Оффлайн

    ProstoTak Старожил

    Репутация:
    1
    Прошу пардону. А под какой протокол? WIN, UCI ?
     
  8. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Поддерживаются оба протокола.
     
  9. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    GreKo и Anechka подтвердили своё место в 4-м аматёрском дивизионе CCRL. Anechka чуть более уверенно, GreKo - в последний момент удержавшись на грани вылета.
    http://wbforum.vpittlik.org/viewtopic.php?t=6502
     
  10. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
  11. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    WinPooh
    А исходники Вы решили не выкладывать? :)
     
  12. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Исходники будут со следующей версией.
    5.4 - во многом промежуточный вариант.
     
  13. krey
    Оффлайн

    krey Михаил Кройтор Staff Member Команда форума

    Репутация:
    1
    ну, когда будет следующая версия?!
     
  14. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Возможно, через месяц.
     
  15. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
  16. WildCat
    Оффлайн

    WildCat Коршунов Игорь Staff Member

    Репутация:
    0
    Че так?
     
  17. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    1) Экономия места 2) Скорость 3) Опечатку исправил, спасибо.
     
  18. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    На мой взгляд комментариев все же маловато :):)

    WinPooh скажите какой эффект Вы получили от применения :
    1 null move
    2 killer heuristic
    3 hash table
    Что эти методы дают по скорости и глубине перебора?
    Какая реализация дает наибольший эффект?
     
  19. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Точно, конечно, не помню, но навскидку как-то так:

    1. +200 Эло
    2. +50...100 Эло
    3. тут наибольший эффект от правильного упорядочения ходов. Пунктов 100 также. А вот сколько даёт хранение точной оценки, сколько - оценок по отсечениям, и сколько отнимают наведённые глюки и баги - это для меня до сих пор загадка.

    Комментарии, я имел в виду, могут быть к следующей версии. Которая медленно и спокойно пишется себе с нуля, и когда будет готова, пока неясно.
     
  20. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    Для меня неожиданна эффективность null move. Лично мне эта эвристика
    не нравиться :)

    Интересно еще какой прирост глубины перебора дают эти методики.
    Конечно я имею в виду в среднем для Греки.
     
  21. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Исходный код перед вами. Отключите и проверьте :)
     
  22. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    WinPooh пишет:
    "Отключите и проверьте"
    К сожалению я не могу откомпилировать ваш код. Не хватает юниксных библиотек. Да и некоторые другие находятся в других местах. Таким образом чтобы запустить вашу прогу придется повозиться а мне неохота.
    Гораздо проще спросить у вас :)

    Ну или просто дайте ссылку где можно почитать именно о приросте глубины перебора можно и на английском.
     
  23. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Насколько я помню, использование Nullmove даёт у меня примерно плюс 2...3 полухода за 10...15 секунд. Лучше всего поискать по этой теме на WinBoard forum или TalkChess.com...

    У меня под Линуксом обычно сборка сводится к команде make -f Makefile.linux. Под Солярисом именно эту версию собирать ещё не пробовал, но тоже проблем быть не должно. Каких именно библиотек не хватает?
     
  24. bankuss
    Оффлайн

    bankuss Александр баннер

    Репутация:
    6
  25. WildCat
    Оффлайн

    WildCat Коршунов Игорь Staff Member

    Репутация:
    0
    Между прочим Грека просто так не компилируется визуал студией. Много кода приходится менять.
     
  26. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Какая версия компилятора, какие опции, что именно приходится менять?
    Просто так ничего не делается :)
    Я компилировал с помощью VS2005 Express. Скоро сделаю update - добавлю в архив студийный файл проекта.

    По моим тестам, msvc-версия играет пунктов на 50-60 сильнее, чем gcc-версия. Попробую ещё потестировать интеловский билд...
     
  27. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Тестирую версии, собранные разными компиляторами.
    Пока что результаты таковы:

    Code:
    5.5 - gcc build
    
       Движок         Счет                      Gr
    1: GreKo 5.5      50.5/120 ···················· 
    2: Rybka 1.0 beta 19.0/20  111111111=1=11111111 
    3: Fruit 2.1      16.5/20  =111011=1=111111=11= 
    3: Phalanx XXII   16.5/20  1=0111110111=11111=1 
    5: Scidlet 3.6    10.0/20  =101===0==110=1=0001 
    6: GNUChess 4 TM  7.5/20   0=110010000==0110001 
    7: TSCP 1.81      0.0/20   00000000000000000000 
    
    5.5 - msvc build
    
       Движок         Счет                      Gr
    1: GreKo 5.5 msvc 60.5/120 ···················· 
    2: Fruit 2.1      20.0/20  11111111111111111111 
    3: Rybka 1.0 beta 18.0/20  111111=011111111=111 
    4: Phalanx XXII   11.5/20  11=0010=101=01110101 
    5: Scidlet 3.6    7.5/20   01000=100110=0=00=1= 
    6: GNUChess 4 TM  2.0/20   0=0000000000100=0000 
    7: TSCP 1.81      0.5/20   000000000=0000000000
    На очереди интеловская версия.
     
  28. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    Работаю в XP.
    Компилирую в Microsoft Visual Studio .NET
    Сразу скажу что Makefile я не использую.
    Создаю консольный проект и в него помещаю исходники.
    При попытке компиляции выдается сообщение:
    ....\_greko-5.5\src\Wini\unix.cpp(2): fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory
    если ее отключить то дальше получаю:
    …\_greko-5.5\src\Wini\unix.cpp(3): fatal error C1083: Cannot open include file: 'sys/time.h': No such file or directory
    это мне понятно в sys библиотеки time.h у меня нету. Если оставить только 'time.h' то все в порядке

    но начинает ругаться на неопределенные переменные из за отключенной 'unistd.h'
    так как она в модуле unix.cpp я и подумал что это юниксовая библиотека
     
  29. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Да, unix.cpp - это файл, который используется только под Юниксом. Просто удалите его из проекта, и всё должно собраться.
    Надо будет поставить там #ifdef-защиту от Виндоус :)
     
  30. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    Я как раз про "#ifdef-защиту от Виндоус" набирал :)

    я его закомментировал но он начинает на переменные ругаться
    что неопределенны. Какие сейчас не помню но могу посмотреть при случае.
     
  31. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Просто удалите файл из проекта. И - Clean solution. Rebuild solution.
    В объектниках могли какие-то ссылки остаться. Поэтому всё лучше почистить.
     
  32. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Результаты тестирования новой версии, с разными компиляторами:
    Code:
        Program                          Elo    +   -   Games   Score   Av.Op.  Draws
    
      1 Rybka 1.0 beta                 : 2717  130 136    80    93.8 %   2247    5.0 %
      2 Fruit 2.1                      : 2700  122 110    80    93.1 %   2247   11.2 %
      3 Phalanx XXII                   : 2384   77  75    80    68.8 %   2247   15.0 %
      4 GreKo 5.5 msvc                 : 2285   52  52   144    50.3 %   2283   18.8 %
      5 Greko 5.5 intel                : 2267   51  51   144    47.6 %   2284   21.5 %
      6 GreKo 5.4                      : 2237   52  53   144    43.1 %   2286   16.7 %
      7 GreKo 5.5 gcc                  : 2228   51  51   144    41.7 %   2286   22.2 %
      8 Scidlet 3.6                    : 2177   66  67    80    40.0 %   2247   27.5 %
      9 GNUChess 4 TM                  : 2110   73  75    80    31.2 %   2247   17.5 %
     10 TSCP 1.81                      : 1711  144  64    80     4.4 %   2247    6.2 %
     
  33. bankuss
    Оффлайн

    bankuss Александр баннер

    Репутация:
    6
    Greko x64 5.5 (msvs) быстрей 32-битной на ~50%, в миттельшпильных позах скорость иногда достигает 2500 knps.
     
  34. WinPooh
    Оффлайн

    WinPooh В.М. Staff Member

    Репутация:
    95
    Эх, ещё бы эти меганоды да на нужные области дерева пустить :)
     
  35. ChessTerminator75
    Оффлайн

    ChessTerminator75 Андрей

    Репутация:
    0
    WinPooh
    Сделал как вы сказали. Удалил модуль unix.cpp из проекта. После этого все прекрасно компилируется без каких либо изменений в исходниках :)