Рыбка — компьютерная шахматная программа , разработанная международным мастером Васиком Райлихом . Примерно в 2011 году Рыбка была одним из самых популярных движков в рейтинговых списках шахматных движков [2] [3] [4] [5] [6] и выиграла множество турниров по компьютерным шахматам .
После того, как Рыбка выиграла четыре чемпионата мира по компьютерным шахматам подряд с 2007 по 2010 год, она была лишена этих титулов после того, как Международная ассоциация компьютерных игр пришла к выводу в июне 2011 года, что Рыбка была заимствована из шахматных движков Crafty и Fruit [7] [8] и поэтому не смогли удовлетворить свои требования к оригинальности. [9] В 2015 году Комиссия по этике ФИДЕ после жалобы, поданной Васиком Райлихом и разработчиком шахматного движка и издателем игр Крисом Уиттингтоном относительно этических нарушений во время внутреннего дисциплинарного разбирательства, признала ICGA виновной и наложила на ICGA предупреждение. Случай 2/2012. [10] [11]
ChessBase опубликовала сложную статью-интервью из двух частей [12] о процессе и вердикте с представителем ICGA Дэвидом Леви. Впоследствии ChessBase наняла Рейлиха для создания Fritz 15 (выпущенной в конце 2015 года) [13] и Fritz 16 (выпущенной в конце 2017 года). [14]
Слово «рыбка» , произносимое по -чешски [ˈrɪpka] , означает «маленькая рыбка» на чешском, польском и многих других славянских языках . Александр Шмидт однажды спросил Васика Райлиха в интервью: «Вы выбрали имя Рыбка, потому что ваша программа всегда выскальзывала из рук, как маленькая рыбка?» Он ответил: «Что касается имени Рыбка – извини, но это останется моей личной тайной». [15]
Рыбка — программа с закрытым исходным кодом, но все же некоторые детали раскрыты: Рыбка использует растровое представление , [16] и является альфа-бета- поисковиком с относительно большим аспирационным окном. [17] Он использует очень агрессивную обрезку, что приводит к несбалансированным деревьям поиска. [18] Детали функции оценки неизвестны, но начиная с версии 2.3.1 она включает работу генерального менеджера Ларри Кауфмана по материальным дисбалансам, большая часть которых была разработана в серии статей в 1990-х годах. [19]
Некоторые члены команды «Рыбка» — сильные шахматисты: Васик Райлих , основной автор «Рыбки», — международный мастер (IM). МГ Ларри Кауфман является старшим чемпионом мира по шахматам 2008 года и с версии 2.3 по версию 3 отвечал за функцию оценки. Ивета Райлих , жена Васика Райлиха и главный тестер Рыбки, является женским гроссмейстером (WGM) и международным мастером. Авторами дебютной книги были Йерун Ноомен (ранее работавший над Rebel ) и Даг Нильсен – последний является одним из лучших в мире шахматистов вольным стилем . Оба сейчас менее активны, а за книгу отвечает Иржи Дюфек.
Васик Райлих начал работать над своей шахматной программой в начале 2003 года. Первая бета-версия Рыбки вышла 2 декабря 2005 года.
Появление бесплатной бета-версии Rybka 1 и первой коммерческой версии Rybka 1 в конце 2005 года стало сенсацией, и вскоре Rybka стала доминирующей программой, возглавляющей рейтинговые списки с огромным отрывом. [20]
В январе 2004 года Рыбка приняла участие в 6-м турнире программистов по компьютерным шахматам (CCT6), заняв 53-е место из 54 участников, проиграв 5 игр, сделав 3 ничьи и победив игрока, занявшего последнее место и набравшего 0 очков (Тоно).[21]
В апреле 2004 года Рыбка приняла участие в Chess War V под руководством Оливье Девиля, заняв 23-е место в дивизионе D. [22]
В апреле 2004 года Рыбка участвовала в третьем сезоне Swiss System под руководством Клода Дюбуа, одержав 6 побед, 6 поражений и 6 ничьих в топ-200 и заняв 71-е место. [23]
Рыбка участвовала в Chess War VI, заняв 42-е место в дивизионе D. [24] Рыбка участвовала в Chess War VII, заняв 48-е место в дивизионе C. [25] Рыбка приняла участие в третьем раунде AEGT, одержав 89 побед, 28 поражений и 15 ничьих. [26]
В декабре 2005 года Рыбка участвовала в 15-м Международном чемпионате Падерборна по компьютерным шахматам . Рыбка выиграла турнир с результатом 5½ очков из 7, опередив других паровозов, таких как Гэндальф, Заппа , Спайк, Шреддер и Фрут .
На CCT8 в феврале 2006 года Рыбка победила со счетом 8 из 9, оставшись непобежденной. В главном турнире PAL/CSS Freestyle в апреле 2006 года Рыбка 1.1 без посторонней помощи заняла первое место. В финальном турнире Рыбка 1.1 заняла второе и третье места, уступив Гидре . В 6-м Лейденском ICT в мае 2006 года Рыбка победила со счётом 8½ из 9, опередив Сьенга , Гэндальфа и Шреддера . На 14-м чемпионате мира по компьютерным шахматам в Турине, Италия, в мае 2006 года Рыбка, игравшая под именем Райлих , финишировала второй, уступив Шреддеру , после Джуниора , победившего чемпиона мира 2006 года. В июне 2006 года на основном турнире PAL/CSS Freestyle команда Рыбки, выступавшая под ником Rajlich, разделила первое место с Intagrand. В финале команда Рыбки заняла чистое первое место, оторвавшись на одно очко. Все 8 участников, прошедших в финал, были пользователями Рыбки. В 2006 году на открытом чемпионате Голландии по компьютерным шахматам Рыбка 2.2 заняла первое место с высшим результатом 9 из 9. [ 27 ] В декабре 2006 года Рыбка участвовала в 16-м Международном чемпионате Падерборна по компьютерным шахматам . Рыбка выиграла турнир с результатом 6½ очков из 7 .
В феврале 2007 года Рыбка участвовала в CCT9 и победила со счетом 6/7. [ нужна цитата ] В 7-м Лейденском ICT в мае 2007 года Рыбка победила со счетом 7½ из 9, опередив Заппу и HIARCS . [ нужна цитата ] Рыбка выиграла 15-й чемпионат мира по компьютерным шахматам в июне 2007 года со счетом 10 из 11. Команда Рыбки, играющая под ником Райлих, выиграла финал PAL/CSS Freestyle в июне 2007 года со счетом 6/9. . Позже в том же году он снова выиграл открытый чемпионат Голландии по компьютерным шахматам со счетом 8/9. [28]
В январе 2008 года Рыбка разделила первое место в CCT10 с результатом 5,5/7. [ нужна цитация ] В октябре 2008 года Рыбка выиграла 16-й чемпионат мира по компьютерным шахматам , проходивший в Пекине , Китай , со счетом 8/9. Месяц спустя Рыбка выиграла 27-й открытый чемпионат Голландии по компьютерным шахматам, проходивший в Лейдене , набрав 9/9. [29]
В марте 2009 года Рыбка выиграла CCT11 со счётом 7,5/9 [30] и 17-й чемпионат мира по компьютерным шахматам , проходивший в Памплоне , Испания , со счётом 8/9. [31]
В мае 2010 года Рыбка выиграла Международный турнир по компьютерным шахматам в Лейдене со счетом 8/9. [32]
В марте 2007 года Рыбка сыграла матч из восьми партий против гроссмейстера Романа Дзинджичашвили с преимуществом пешек и ходов. Результат стал 4–4 после двух побед «Рыбки», четырех ничьих и двух поражений. [33]
В то время как Рыбка выиграла матч из 8 игр в марте 2007 года с гроссмейстером Яаном Эльвестом , который включал в себя предоставление шансов на пешку человеку, гроссмейстер Ларри Кауфман из команды Рыбки пообещал свои деньги гроссмейстеру-человеку, который сможет победить Рыбку в матче из шести игр. без материальных шансов. Архивировано 16 декабря 2008 года в Wayback Machine . Гроссмейстер Яан Эльвест снова был выбран для игры с Рыбкой, получая в два раза больше времени на обдумывание и играя белыми в каждом матче, при этом у Рыбки была только дебютная книга из трех ходов, ограниченный (512 МБ) размер хэша и отсутствие баз таблиц эндшпиля (матч получил название «Все, кроме пешка»). Матч, снова сыгранный в 2007 году, закончился со счетом 4,5–1,5 после трех побед «Рыбки» и трех ничьих . [34]
В сентябре 2008 года Рыбка сыграла матч с шансами против Вадима Милова , своего сильнейшего соперника в матче с шансами. Милов на тот момент имел рейтинг Эло 2705, что делало его 28-м местом в мире. Результатом стала победа Милова с небольшим перевесом: в двух стандартных партиях (Милов играл белыми, без шансов) Милов проиграл первую партию, а вторую сыграл вничью. Затем они сыграли две партии с классической форой «пешка и ход» (убрано f7). Первая партия завершилась досрочной ничьей вечным шахом, а вторую выиграл Милов. В итоге они сыграли четыре партии с преимуществом качества (Рыбка удалил ладью a1, Милов коня b8); здесь Рыбка трижды сыграла вничью и один раз проиграла. Итоговый счет в пользу Милова стал 4,5–3,5. [35]
В сентябре 2007 года Заппа в матче победил Рыбку, 5 раз .+1 ⁄ 2 – 4+1 ⁄ 2 . В этом матче были сыграны две знаменитые партии. Первой была четвертая партия из 180 ходов, [36] которая приближалась к ничьей по правилу 50 ходов . Однако из-за неправильной оценки движка Рыбки на 109-м ходу он переместил пешку, чтобы избежать ничьей (хотя Заппа мог и сделал это немедленно взять пешку), тем самым сбрасывая счетчик для этого правила. Потеря пешки в конечном итоге позволила Заппе свести на нет защиту Рыбки и выиграть партию. [37] Затем в 9-й партии Рыбка была на 3 пешки с полностью выигранной позицией, но на 71-м ходу допустила ужасную ошибку, «худшую ошибку в современных компьютерных шахматах», [38] поскольку ей не хватало знаний, чтобы увидеть ничью. последуют слоны противоположного цвета . Заппа знал об этом, воспользовался преимуществом и сделал игру вничью. [39] Энтони Коззи поблагодарил своего оператора Эрдогана Гюнеса за то, что у него хватило сил остаться до конца в этих двух играх, вместо того, чтобы согласиться на ничью в четвертой игре или сдаться в девятой игре. [38]
Матч состоялся после того, как Васик Райлих бросил рекламный вызов на 100 000 долларов чемпиону ФИДЕ Фрицу или Джуниору, даже предложив шансы на игру в матче из 24 игр (13 очков). [40] Но переговоры между Рыбкой и Джуниором сорвались из-за споров по поводу машин на месте. [41] Матч был изменен на 10 игр против Заппы, причем победителю в конечном итоге было выплачено 10 000 долларов.
Рыбка 3 была выпущена 6 августа 2008 года. [42] В то время как предыдущие версии Рыбки были выпущены исключительно Convekta, Рыбка 3 была выпущена как Chessbase , так и Convekta. [43] Несмотря на то, что Рыбка 3 по-прежнему является движком UCI , она имеет дополнительные функции при запуске под пользовательскими интерфейсами ChessBase и Convekta. [42] В интервью Фрэнку Кисински Васик Райлих раскрыл планы относительно будущего графического интерфейса , который «должным образом отображал бы шахматные знания пользователю», скорее всего, в форме графической оценки фигур на доске. Графический интерфейс под названием Aquarium был выпущен компанией ChessOK (ранее известной как Convekta). [44]
Рыбка 4 вышла 26 мая 2010 года. Васик Райлих дал на форуме Рыбки следующую информацию: [45]
Васик Райлих выпустил «Remote Rybka», которая представляет собой специальную версию Rybka (4+ или кластер) на очень мощном оборудовании/кластерах под управлением Лукаса Чимиотти. [46] Его можно арендовать на определенный период времени, но в настоящее время не менее чем на 2 дня из-за накладных расходов. При аренде вы получаете доступ к Удаленной Рыбке со своего ПК, при этом все детали аренды строго конфиденциальны.
Эта версия была быстро выпущена после объявления о расследовании ICGA, чтобы гарантировать отсутствие ошибок в источниках кода. Он был выпущен 5 марта 2011 года.
Информация из последнего видеоинтервью Васика Райлича [47] показала, что Рыбка 5 должна была прибыть где-то между концом 2011 и первой половиной 2012 года. По состоянию на апрель 2022 года этого не произошло.
Ранние частные движки Rybka обвинялись в том, что они являются клоном Crafty , включая копирование определенных ошибок (например, сравнение результата функции EvaluateMate с числом 99999, которое она не могла вернуть [48] ) и ненужного кода («там не является никакой реальной причиной для любой программы, которая утверждала, что была запущена в 2003 году, иметь такой код, за исключением того, что он был бездумно скопирован из Crafty без малейшего понимания его цели»). [49]
В мае 2007 года на сцене появился новый шахматный движок под названием « Стрелка », который, как утверждается, был написан Юрием Осиповым. Вскоре появились обвинения в том, что «Стрелка» была клоном бета-версии «Рыбки 1.0», в том смысле, что это была переработанная и слегка модифицированная версия «Рыбки». [50] Некоторые игроки обнаружили, что «Стрелка» дает такой же анализ, что и «Рыбка», в самых разных ситуациях, даже имея в некоторых случаях те же ошибки и слабые места. Осипов, однако, неоднократно заявлял на форумах, что «Стрелка» основана на Fruit , а не на «Рыбке», и что любые сходства объясняются либо тем, что «Рыбка» также была основана на «Fruit», либо тем, что он настроил функцию оценки так, чтобы она была как можно ближе к «Рыбке». [51] [52]
С выпуском бета-версии «Стрелки 2.0» в нее был включен исходный код. Райлих заявил, что источник «очевидно», что бета-версия «Стрелки 2.0» действительно является бета-клоном Рыбки 1.0, хотя и не без некоторых улучшений в определенных областях. На основании этого он объявил источник своим и намеревался переиздать его под своим именем, [53] хотя позже решил не делать этого. Он также заявил, что «Юрий Осипов» — это псевдоним .
Как заявил Виктор Захаров (компания "Конвекта") в своем обзоре для шахматного сайта "Арена": "Я считаю, что Юрий Осипов (Иванович) - настоящее имя. Он этого не скрывал. Однако я не могу утверждать этого со 100% уверенностью". А еще у него есть контакты с Юрием Осиповым по разработке шахматной программы для мобильных платформ. [54]
Автор Fruit Фабьен Летузи в упомянутом выше открытом письме заявил, что бета-версия Strelka 2.0 является производной Fruit с некоторыми незначительными изменениями. [55]
IPPOLIT , RobboLito, Igorrit, IvanHoe, FireBird и Fire — серия сильных шахматных программ с открытым исходным кодом, изначально разработанных командой анонимных программистов, называющих себя декабристами, после восстания декабристов . [56] [57]
Шахматный движок IPPOLIT был выпущен в мае 2009 года вместе с исходным кодом, но из-за политики некоторых шахматных форумов не публиковать материалы «сомнительного правового статуса» (например, устав Talkchess [58] ) он оставался относительно неизвестным до октября 2009 года. Васик Райлих заявил [59] , что IPPOLIT представляет собой декомпилированную версию Rybka, и что вовлеченные люди информировали его о своем прогрессе по электронной почте. [60]
Рыбку обвиняли в том, что она основана на Fruit , но Райлих категорически это отрицал, [61] заявляя, что Рыбка на 100% оригинальна на уровне исходного кода. Дальнейшие обвинения в нарушении GPL были выдвинуты шахматным программистом Заком Вегнером на основании новой попытки декомпиляции и годичного исследования исполняемого файла Rybka 1.0. [62] С тех пор Райлих отказался отвечать на эти обвинения. [63] Автор Fruit Фабьен Летузи появился после пятилетнего отсутствия в январе 2011 года и опубликовал открытое письмо [55] с просьбой предоставить дополнительную информацию о Рыбке и нарушениях GPL.
Президент ICGA Дэвид Леви рассмотрел ситуацию в ChessVibes и созвал форум программистов, чтобы решить суть дела. [64] Возможные варианты включают отмену всех турнирных побед Рыбки согласно Статуту 3.h.iv. [65] С тех пор четырнадцать известных шахматных программистов написали открытое письмо Дэвиду Леви, Яапу ван ден Херику и правлению ICGA, в котором говорится, что теперь есть «неопровержимые доказательства» того, что бета-версия Рыбки 1.0 (первая сильная версия Рыбки) была получена напрямую. из Фруктов. [66]
28 июня 2011 года Международная ассоциация компьютерных игр (ICGA) завершила расследование и установила, что Васик Райлих при программировании Рыбки употребил плагиат в двух других шахматных программах: Crafty и Fruit . [67] Согласно ICGA, Васик Райлих не выполнил правило ICGA, согласно которому каждая компьютерная шахматная программа должна быть оригинальной работой поступающего разработчика, и те, «чей код является производным от игрового кода, написанного другими, или включает в себя игровой код, написанный другими, должны назвать все других авторов или источника такого кода в деталях их отправки». [68] ICGA расценила предполагаемое нарушение Васика Райлиха как самое серьезное правонарушение, которое шахматный программист и член ICGA может совершить по отношению к своим коллегам и ICGA. [69] Санкцией ICGA для Васика Райлиха и Рыбки стала дисквалификация с чемпионата мира по компьютерным шахматам (WCCC) 2006, 2007, 2008, 2009 и 2010 годов. [70] Васику Райлиху также было пожизненно запрещено участвовать в соревнованиях WCCC или WCCC. любое другое мероприятие, организованное или санкционированное ICGA. [71] Кроме того, ICGA потребовала, чтобы Васик Райлих вернул ICGA четыре копии Трофея Шеннона, представленные на WCCC в 2007, 2008, 2009 и 2010 годах, а также все призовые деньги , полученные Рыбкой за выступления на этих соревнованиях. [72]
После публикации вердикта и приговора ICGA на компьютерных шахматных форумах вспыхнули широкие разногласия, в основном по поводу правильного применения теста абстракции-фильтрации-сравнения, различий между копированием идей и копированием кода, а также предвзятости в расследовании. [73]
Райлих ответил на обвинения ICGA в видеоинтервью с Нельсоном Эрнандесом и ответил на вопросы о противоречии и своем мнении по этому поводу. [47]
В январе 2012 года ChessBase.com опубликовал статью доктора Сёрена Рииса. Риис, ученый-компьютерщик из Лондонского университета Королевы Марии и модератор форума «Рыбка», критиковал решение ICGA, расследование, методы, на которых оно основывалось, а также предвзятость членов комиссии и Секретариата. Риис утверждал, что важные части отчета комиссии ICGA, которые, как представляется, показывают построчное дублирование кода между Рыбкой и Фрутом, вводят в заблуждение или фальсифицированы, и возражал против состава комиссии и Секретариата, предполагая, что она состояла почти исключительно из конкурирующих шахматных программистов, которые у него был конфликт интересов , поскольку Райлиху запретили участвовать в соревнованиях, чтобы прервать его непрерывное доминирование в соревновательных компьютерных шахматах. [74] Президент ICGA Дэвид Леви и научный сотрудник Сиднейского университета в области математики Марк Уоткинс ответили на публикацию Рииса своими собственными заявлениями в защиту комиссии ICGA и выводов соответственно. [75] [76] ChessBase опубликовала длинный список комментариев читателей к статье Рииса, особо указав на два самых длинных комментария, один за и один против, которые были расположены в конце. [77]
В 2012 году Васик Райлих подал жалобу [78] на решения, процесс и предвзятость ICGA в Комиссию по этике ФИДЕ , подписанную Сореном Риисом, Эдом Шредером и Крисом Уиттингтоном. В 2015 году Комиссия по этике ФИДЕ признала Международную ассоциацию компьютерных игр ICGA виновной в этических нарушениях во время внутреннего дисциплинарного разбирательства и наложила на ICGA предупреждение. Случай 2/2012. [79]
Кок де Гортер, председатель Голландской компьютерной шахматной ассоциации (CSVN), написал:
Мне нет необходимости говорить вам, что ICGA устроила ужасный беспорядок. На нашем сайте в августе прошлого года мы заявили, что не примем запрет «Рыбки». Мир компьютерных шахмат разделен на две части. В настоящее время у правления CSVN есть самые серьезные сомнения в правомерности решения ICGA. Поэтому мы решили не соблюдать их санкции против Рыбки. [80]
Тех, кто выступал за санкции, жестко допросили, например, Мигель А. Балликора, Джордж Спейт и Сорен Риис. Их противодействие действительно произвело на нас впечатление, поскольку эти люди могут рассчитывать на огромный опыт в области шахматного программирования, права и математической логики. Когда наконец к вышеупомянутым критикам ICGA присоединился голландец Эд Шредер, бывший чемпион мира по компьютерным шахматам, у нас, казалось, больше не было выбора. [81]
В ответ 10 бывших участников мероприятий CSVN 21 сентября 2011 года опубликовали открытое письмо, в котором обвинили CSVN в «недостатке суждений», лично выделив и раскритиковав председателя Кока де Гортера: «Ваши… турниры не в надежных руках». больше» и объявили о своем отказе от мероприятий CSVN «в текущем направлении». [82]
Рыбка участвовала в турнире CSVN (ICT) 2012 года и победила. [83]