Чел заморочался вопросом написания шахматной программы

Retor

     Попросили запостить, аккаунта у задающего вопрос нет. Есть чуве, старшеклассник, хороший игрок в шахматы - КМС, даже мастеров порой щемил, ему все советуют пойти по "спортивному" пути, но он не хочет заниматься чисто шахматами, а свою деятельность планирует связать частично с программированием, даже в области места занимал вроде по информатике.
     А вот и вопрос: что ему даст эта прога, если он ее напишет "хорошо"? Слово взял в кавычки, поскольку сам далеко не мастер в этой игре, а уж что там шахматная должна делать - вообще хер проссышь. Но он объяснил, что "старым фритцам" (проги шахматные) она даст нехилую конкуренцию.
     И опять же: будет ли ему какой-то пиар, будет ли хоть как-нибудь это влиять при трудоустройстве на прогера или будет какая-нибудь строчка в резюме или это чисто хобби и самоутверждение?

Helga87

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

okunek

Ничего не проходит зря, тем более он школьник еще, пусть пишет.
гг

nikita270601

Еще никому и никогда не вредило что-то делать.
Мне вредило как-то раз.

Retor

Так-то оно так, но вопрос не так звучал.

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

Helga87

Так-то оно так, но вопрос не так звучал.
Тогда ответ прост: пусть он напишет _лучшую_ шахматную программу в мире. Тогда он сможет ее продавать.

timefim

Создает опен сорс проект и ссылается на него в резюме.

Devid

1) В современных программах используется база дебютов. Так что в первые 10-15 ходов они могут вообще не "думать". Сделать такую базу самому - очень большой объем работы, а без такой базы прога будет проигрывать еще в дебюте.
2) Та программа, которая играла с Каспаровым, в середине игры занималась тем, что перебирала ходы (если совсем упростить). Для более эффективного перебора использовалась эвристическая функция, которая оценивала позицию, насколько она
"хороша". Функция исользовала почти 10000 параметров, написать ее тоже огромный труд и куча времени на тестирование, насколько эта функция подходит. Если конечно не использовать совсем другой подход.
3) Когда на доске остается 5 или 6 фигур, программа тоже не "думает", а использует заранее заложенный для каждого набора фигур алгоритм. Это, пожалуй, самая простая часть.

klyv

Всяко полезно. Заниматься разработкой сложного дела всегда полезно. И при трудоустройстве 100% не пройдет незамеченным, и (если все вообще круто) можно без трудоустройства обойтись.
Надо только аккуратно проектировать, не брать нахрапом, как это в школе делается. Пусть осваивает средства разработки.

tokuchu

Тут на ВМК есть группа неглупых людей, которые тоже какую-то шахматную программу-помощник разрабатывают. Может они ему чего посоветуют или откроют в нём какие таланты?

Papazyan

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

Helga87

Однако, человек умеет хорошо играть шахматы, а не в го!
И да - есть турниры шахматных программ. Подозреваю, там даже призы есть.
World Computer Chess Championship.

Papazyan

И да - есть турниры шахматных программ. Подозреваю, там даже призы есть.
Ну и чего. Какая польза человечеству от еще одной говно-шахматной программы? Еще раз повторяю, проги, которые могут обыграть любого, уже написаны, тема уже неактуальна лет 10-ть.

Helga87

топикстартер вроде не заморачивался вопросами Пользы Человечеству, поэтому я не понял, к чему все это.

Mixaz

Еще раз повторяю, проги, которые могут обыграть любого, уже написаны, тема уже неактуальна лет 10-ть.

И как они между собой играют? всегда ничья :confused: :grin:

Papazyan

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

katrin2201

Это смотря куда устраиваться.

Fimida

Полагается социальный работник.

Oper

Гораздо рентабельнее написать программу-помощник для онлайн игры в покер, которая бы вычисляла вероятность выигрыша/проигрыша с учетом известной информации и действий соперников.

milanadiana

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

vall

Остапа несло. (c)

vall

я бы предложил более полезное занятие, например обучать нейросеть выставлять фигурами слово хуй посередь доски.

milanadiana

Тогда уж узнавать выставленное фигурками слово ХУЙ и отличать его от слова МИР.

Dasar

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

zorin29

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

zorin29

1) В современных программах используется база дебютов. Так что в первые 10-15 ходов они могут вообще не "думать". Сделать такую базу самому - очень большой объем работы, а без такой базы прога будет проигрывать еще в дебюте.
Неправда. Понятие "шахматный движок" (chess engine) не включает в себя дебютную библиотеку. Это два разных объекта.

Devid

Понятие "шахматный движок" (chess engine) не включает в себя дебютную библиотеку.
1) Понятие chess engine в этом треде впервые упомянуто тобой только что, с чего ты взял, что речь шла о нем?
2) Я употребил слово "используется", с чего ты взял, что это то же самое, что и "включает", которое ты оспариваешь?

zorin29

Я зря написал слово "неправда", вот и встречен в штыки.
1. Потому что в компьютерных шахматах разделение на GUI и engine давно и плодотворно используется, так что писать правильнее всего именно engine. Поэтому я по умолчанию предполагаю, что речь идет о шахматном движке.
2. Хм-м, решил перечитать твой пост и понял, что надо ответить более развернуто.
В современных программах используется база дебютов. Так что в первые 10-15 ходов они могут вообще не "думать".
Слово "программа" неуместно, речь идет о связке GUI+engine. Дебютная библиотека - часть GUI, а GUI вообще никогда не думает. Но если GUI такова (или так настроена что дебютная библиотека не используется, то engine вынужден играть сам с первых ходов.
P.S. Когда-то, кажется, было модно включать дебютную библиотеку в состав движка (с возможностью ее отключить). Но мода эта давно прошла, теперь я знаю только один такой движок, да и то там довольно специфические причины.
Сделать такую базу самому - очень большой объем работы, а без такой базы прога будет проигрывать еще в дебюте.
Возможно. Однако в Интернете полно бесплатных и весьма неплохих дебютных библиотек.
2) Та программа, которая играла с Каспаровым, в середине игры занималась тем, что перебирала ходы (если совсем упростить). Для более эффективного перебора использовалась эвристическая функция, которая оценивала позицию, насколько она
"хороша". Функция исользовала почти 10000 параметров, написать ее тоже огромный труд и куча времени на тестирование, насколько эта функция подходит.

Здесь в целом верно. Правда, обычно шахматный движок разделяют на две слабо связанные части - поиск и оценка (search и evaluation).
Оценка - как программа оценивает некоторую позицию (числовая функция от позиции). Включает в себя все шахматные знания программы. В существующих программах объем оценочной функции варьируется от минимума (материал + еще чуть-чуть) до огромных функций, существенно замедляющих перебор и учитывающих тысячи факторов.
Поиск - это то, как программа организует перебор вариантов. В 99% программ используется альфа-бета перебор. Фактически, программы отличаются между собой в выборе порядка ходов (это очень важная штука для альфа-бета перебора) и в наличии/отсутствии основных эвристик, таких как killer move, quiescence search и т.д. Ну и в эффективности перебора (в частности, она свзяана с представлением данных).
Если конечно не использовать совсем другой подход.
Вот это 100% верно. Полностью согласен. Если этот товарищ придумает совсем другой подход - честь ему и хвала. Это будет совершенно новаторское изыскание, нынче все движки завязаны на альфа-бета перебор.
Когда на доске остается 5 или 6 фигур, программа тоже не "думает", а использует заранее заложенный для каждого набора фигур алгоритм. Это, пожалуй, самая простая часть.
Это из серии "слышал звон", прости :)
На самом деле, существуют 6-фигурные эндшпильные таблицы Налимова. Это база данных, в которой для каждой валидной шахматной позиции с <=6 фигурами на доске написано, является ли эта позиция выигрышной/проигрышной/ничейной, и каким ходом можно выиграть наискорейшим образом (проиграть наиболее долго). С помощью этой базы, действительно, любой движок легко будет играть по оптимальной стратегии, когда на доске <=6 фигур. Но алгоритм этот очевиден, и, очевидно, от набора фигур не зависит.
Добавлю, что 6-фигурные таблицы Налимова занимают около 1.5 Тб. 5-фигурные, насколько я помню, помещаются на DVD.

ppplva

Дебютная библиотека - часть GUI
Какой необычный подход. Библиотека как часть пользовательского интерфейса.

Devid

1. Потому что в компьютерных шахматах разделение на GUI и engine давно и плодотворно используется, так что писать правильнее всего именно engine. Поэтому я по умолчанию предполагаю, что речь идет о шахматном движке.
GUI это упрощенно то, что видит пользователь. На это прозрачно намекает слово graphical из расшифровки аббревиатуры GUI.
Отделяют GUI от логики не только в шахматных программах, но при чем тут вообще GUI я не понимаю.
Слово "программа" неуместно, речь идет о связке GUI+engine. Дебютная библиотека - часть GUI, а GUI вообще никогда не думает.

Нет, дебютная библиотека это не часть GUI. Можно назвать ее внешним ресурсом, который используется логической частью. Именно эту логическую часть я и мел ввиду под словом "программа".
Таким образом в engine должен входить кусок, который читает свою или чужую базу дебютов.
Здесь в целом верно. Правда, ...

Дальше описывается то, что написал я, но более подробно и о всех (ну или многих) программах, а не об одной как у меня.
Так что слово "правда", означающее наличие противоречия, неуместно так же, как и "неправда" раньше.
Когда на доске остается 5 или 6 фигур, программа тоже не "думает", а использует заранее заложенный для каждого набора фигур алгоритм. Это, пожалуй, самая простая часть.

Это из серии "слышал звон", прости
На самом деле, существуют 6-фигурные эндшпильные таблицы Налимова. Это база данных, в которой для каждой валидной шахматной позиции с <=6 фигурами на доске написано, является ли эта позиция выигрышной/проигрышной/ничейной, и каким ходом можно выиграть наискорейшим образом (проиграть наиболее долго). С помощью этой базы, действительно, любой движок легко будет играть по оптимальной стратегии, когда на доске <=6 фигур.
И где противоречие?
Но алгоритм этот очевиден, и, очевидно, от набора фигур не зависит.

То есть выиграть слоном конем и ладьей против короля можно по тому же алгоритму, что и двумя ладьями против короля?
Или ты предлагаешь рассматривать единый алгоритм для всех выриантов с <=6 фигур на поле? Это просто нелогично.

zorin29

Давай не будем взаимно катить бочки. Если мои посты выглядят пренебрежительными, прошу прощения - устал с работы. Не буду больше.
Разделение на GUI и engine, о котором я говорил в самом начале - это не архитектурное решение. Просто есть две программы, два экзешника. Скажем, ChessBase.exe и DeepShredder9.exe. Первый из них называется GUI. Он рисует доску, фигурки, показывает стрелочки. Он же оспользует дебютную библиотеку. Да, , именно так :)
А вторая программа - консольное приложение, которое общается по pipe-у с GUI и, собственно, занимается шахматным счетом. Протокол обмена стандартизован, называется UCI (universal chess interface). Есть еще протокол XBoard/Winboard, но он старше и позволяет меньше.
Да, разделение на GUI и engine в шахматах происходит по иному, чем в программировании :)
В шахматах GUI - это довольно тяжелая штука, т.к. она, как правило, включает средства пакетного анализа, поддержку баз данных партий, поисков, статистики и т.д. Писать ТАКОЕ крайне тяжело и долго. Стандартом на рынке считается продукция компании ChessBase.
Так что слово "правда", означающее наличие противоречия, неуместно так же, как и "неправда" раньше.
Да, ты прав. Я лишь уточнил, что 10000 параметров - это многовато. Кроме того, придумывать оценочную функцию с нуля никто не предлагает, куча работы уже сделана.
И где противоречие?
То есть выиграть слоном конем и ладьей против короля можно по тому же алгоритму, что и двумя ладьями против короля?

Дело в том, что алгоритма как такового для произвольных 6 фигур нет. Есть для некоторых конфигураций, например, тех, что ты назвал. Но для, скажем, ладья + конь против ладьи алгоритма нет. Там для выигрыша надо делать безумнейшие ходы, иногда до нескольких сотен.
Так что если есть таблицы Налимова, алгоритм прост: "достаем из таблицы лучший ход и делаем его!"
Если же таблиц в наличии нет, то алгоритма может и не быть.
Опять же, последнее время авторы не заморачиваются придумыванием специфических алгоритмов для малофигурных эндшпилей. В лучшем случае, вкомпилируют в движок 4-фигурные окончания, благо они немного весят.

ppplva

Да, разделение на GUI и engine в шахматах происходит по иному, чем в программировании :)
Нет, это просто значит, что "шахматное GUI" - вовсе не GUI, а некая монстрообразная хрень, которая помимо прочего включает в себя GUI, и неудивительно, что пишут ее крайне тяжело и долго.
На самом деле я просто цепляюсь к словам. Спокойной ночи :)

kruzer25

Давай не будем взаимно катить бочки. Если мои посты выглядят пренебрежительными, прошу прощения - устал с работы. Не буду больше.
Разделение на GUI и engine, о котором я говорил в самом начале - это не архитектурное решение. Просто есть две программы, два экзешника. Скажем, ChessBase.exe и DeepShredder9.exe. Первый из них называется GUI. Он рисует доску, фигурки, показывает стрелочки. Он же оспользует дебютную библиотеку. Да, , именно так
А вторая программа - консольное приложение, которое общается по pipe-у с GUI и, собственно, занимается шахматным счетом. Протокол обмена стандартизован, называется UCI (universal chess interface). Есть еще протокол XBoard/Winboard, но он старше и позволяет меньше.
Мышление на уровне ПТУшника. СзМ.
Графический пользовательский интерфейс называется GUI. То, что разработчик какой-то программы назвал её кусок GUI - не значит, что этот кусок является GUI. На заборе тоже GUI написано.
Утверждение: шахматные программы используют библиотеку дебютов. Ты, с пеной у рта, кричишь, что это враньё, потому что в такой-то конкретной программе библиотека дебютов вынесена в такой-то конкретный .exe-файл, который называется GUI и занимается ещё и отрисовкой фигур.
Кажется, в университеты должны брать людей, способных мыслить на уровне абстракций.

yroslavasako

Правда, обычно шахматный движок разделяют на две слабо связанные части - поиск и оценка (search и evaluation).
ещё есть шедулер.
Да, глупо, глупо всё что не является engine называть скромным словом gui, следовало бы называть это UI - чтобы избегнуть недоразумений и путаницы. С другой стороны понятно, что топик стартер предлагал писать именно engine, для чего вовсе не нужно разрабатывать прочие фичи шахматной программы.

yroslavasako

Там для выигрыша надо делать безумнейшие ходы, иногда до нескольких сотен.
правило 50 ходов.

zorin29

Пенартур, ты, часом, не тролль?
Положим, с пеной у рта я ничего не кричу. Вообще не кричу, а делюсь знаниями. Как-никак, я в течение 5 лет работаю с шахматными движками и GUI (что бы там ни было написано на заборах, но это устоявшаяся терминология в шахматном мире, и я не буду в угоду тебе ее менять).
Твои претензии к моему мышлению я не принимаю. Все-таки я больше склонен доверять другим источникам в оценке своих умственных способностей. Красному диплому МГУ, например. Или медалям с IOI.
То, что разработчик какой-то программы назвал её кусок GUI

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

zorin29

На самом деле я просто цепляюсь к словам. Спокойной ночи
нет, правильно, конечно. GUI - это графический интерфейс, да. Просто в мире computer chess так принято называть всю оболочку для движка, не только графическую.

Devid

Я лишь уточнил, что 10000 параметров - это многовато.
Из "Искусственный интеллект. Современный подход", С.Рассел, П.Норвиг:
Программа Deep Blue ... Функция оценки охватывала свыше 8000 характеристик, причем многие из них описывали в высшей степени специфичные шаблоны расположения фигур.
В электронном виде например здесь http://rriai.org.ru/sovremennyie-igrovyie-programmyi.html
До 10000 я округлил.
Дело в том, что алгоритма как такового для произвольных 6 фигур нет. Есть для некоторых конфигураций, например, тех, что ты назвал. Но для, скажем, ладья + конь против ладьи алгоритма нет. Там для выигрыша надо делать безумнейшие ходы, иногда до нескольких сотен.
Так что если есть таблицы Налимова, алгоритм прост: "достаем из таблицы лучший ход и делаем его!"

Как ты сам написал "достаем из таблицы лучший ход и делаем его!" это алгоритм, так что твои претензии непонятны.
Сам бы я сказал, что моя оценка эндшпиля как самой простой части основывалась на неверных посылках, так как алгоритмы для 6-ти фигур в некоторых случаях нетривиальны, о чем я не знал.

zorin29

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

yroslavasako

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

zorin29

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

Как я понял, ты имел в виду некий репозиторий алгоритмов, для каждой конфигурации фигур, который в сябя включает шахматный движок. А тут другая ситуация: монструозная база данных и тупое копирование ходов из нее. Вот на это отличие я и указал.
Опять же, это не "претензии" были у меня, а маниакальное стремление всем указать на истинное положение дел, хе-хе :)
В электронном виде например здесь http://rriai.org.ru/sovremennyie-igrovyie-programmyi.html
До 10000 я округлил.
Ну там-то просто вода написана. Кто его знает, что именно они там считали :) Может, был там массив из 8000 весов разных фигур на разных позициях - в это я могу поверить.

yroslavasako

Любую базу данных можно превратить в алгоритм путём составления несложной функции, возвращающей лямда-функцию, соответствующую принятой на вход базе. Теоретически.

zorin29

не выйдет. Во-первых, движок использует TB напрямую, без посредства UI. Во вторых, даже модификация движка не поможет. Проблема решится, но за счет ~10-кратного замедления доступа к TB, и без того очень медленного. В результате общий уровень игры упадет. Ну речь здесь все равно идет о <1 Эло, так что никому это не надо :)

SPARTAK3959

Программа Deep Blue ... Функция оценки охватывала свыше 8000 характеристик, причем многие из них описывали в высшей степени специфичные шаблоны расположения фигур.
И при этом она оказалась хуже, чем более простые функции оценки, используемые в современных сильнейших шахматных программах.

Barbie29

была какаято книжка, толи Бронштейна, толи Блинникова про алгоритмы шахматного программирования

Barbie29

через пару дней скину ссылку

evolet

Блинникова
видимо, все-таки Ботвинника, судя по гуглу, Ботвинник как раз писал на эту тему, во всякосм случае что-то под названиями "Основы шахматного алгоритма" «алгоритм игры в шахматы» "О кибернитической цели игры" у него есть.
за просто интересно стало, про Блинникова в связи с шахматами я ничего никогда не слышал, и , видимо, так и есть

zorin29

Нет, не думаю. Ботвинник умер в 1995 году, до того, как родились наиболее эффективные алгоритмы игры. Да, у него есть книга, кажется, "алгоритм игры в шахматы", но сейчас надо базироваться на более новых знаниях.

Selena

Добавлю пять свои копеек.
Писать офлайновые standalone программы само по себе писать не перспективно.
А уж такую избитую, как шахматы, совсем уж велосипед(учитывая, что школьник радикально новый подход не потянет).
Пусть осваивает интернет технологии. Потому как будущее явно за онлайн. Для затравки -
 http://habrahabr.ru/tag/стартапы/ 

P.S. Пусть к шахматам относится как инструменту развития системного мышления и аналитического подхода. Примерно как в универе - сами по себе большинство предметов мне явно не вперлись, но разбираться самостоятельно в новых темах я научился.

Werdna

И опять же: будет ли ему какой-то пиар, будет ли хоть как-нибудь это влиять при трудоустройстве на прогера или будет какая-нибудь строчка в резюме или это чисто хобби и самоутверждение?
Началь лучше с того, что при таком подходе ждать что-то не придется. Нужно ли поступать на мехмат в рассчете решить гипотезу Римана? Ну да, можно мечтать, но прагматичный рассчет делать явно не стоит.
Будет ли это пиар? Зависит от результата. Я бы посоветовал сначала с ГНУ Чесс посоревноваться, а лучше вообще разобрать что там делают. Придумает ли что-то новое? А хрен его знает.
На трудоустройство влиять не будет. По крайней мере, большинство из этого круга либо обычные прогеры без амбиций, либо у каждого в школе уже были какие-то достижения. Супердостижения как-то попадаются редко, но у таких людей обычно нет проблем с поиском работы — ищут их.
Строчка в резюме такая либо идёт первая, либо отмирает с получением диплома и первого опыта работы.
В любом случае за задачу браться надо, тем более что интересно. Только думатьнадо о задаче, а не о бонусах гипотетических.

Werdna

Пусть осваивает интернет технологии. Потому как будущее явно за онлайн. Для затравки -
Насмешил... гыгы, Хабрахабр — помойка для малолетних дрочеров. Стартапы... ГЫ...

Selena

Насмешил... гыгы, Хабрахабр — помойка для малолетних дрочеров. Стартапы... ГЫ...
ну так он и так малолетний, а раз в каком-то там классе значит дрочит :grin:
по серьезному - сакссес стори там все равно есть, да и тренд поймет.

lubanj

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

karkar

А как же игрушки?

klyv

А как же игрушки?
Быки и коровы!

Serab

В школьные годы морочился написанием компилятора. Дело ограничилось интерпретатором, правда он уже 7 лет как используется в родной школе, пятиклашек впирает Лого =)

kruzer25

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

palitik8

Тут в соседнем треде статья бывшего чемпиона среди шахматных программ.

zorin29

Сотрудник занимался шахматными программами в те времена, когда была "Каисса" и иже с ней. Рассказывает, что советские шахматные программы тогда были просто на порядок слабее коммерческих западных аналогов.
Настолько слабее, что когда провели первый чемпионат России среди шахматных программ, первые два места заняли шахматные компьютеры (т.е. доска+специализированное устройство+дисплейчик купленные в Германии и игравшие вне конкурса. А третье место занял товарищ, который написал "оболочку" к старенькому Chessmaster-у, которая находила в видеопамяти предложенный Chessmaster-ом ход, распознавала его и выдавала как свой. Четвертое место занял, кажется, "Кентавр", а "Каисса" - пятое :)

palitik8

  
Сотрудник занимался шахматными программами в те времена, когда была "Каисса"
 "Каисса" стала мировым чемпионом ещё в бороданые времена. ФАКТ.
   
Настолько слабее, что когда провели первый чемпионат России среди шахматных программ, первые два места заняли шахматные компьютеры (т.е. доска+специализированное устройство+дисплейчик купленные в Германии и игравшие вне конкурса.
 Если это был локальный чемпионат ВМиК, то возможно. :)
Какое мероприятие имеется ввиду ?
Насколько я понимаю наши программы в нач 90-х хотя первых мест не хватали, но всёж играли не сильно плохо.
Ботвинник занимался этим делом. Ещё группы были. Донской вышеупомянутый уже нет.

zorin29

Не могу подробнее написать, т.к. слышал все от сотрудника, а он не всегда дает 100% адекватную информацию :)
Но говорил он, повторюсь, о первом чемпионате России. И призы там были немалые, по тем временам. Поэтому и скандал вогруг этого дела разгорелся немалый.
http://en.wikipedia.org/wiki/World_Computer_Chess_Championsh...
Да, Каисса была чемпионом аж в 1974 году, вряд ли она играла в чемпионате России. Там Кентавр был, видимо.
можешь посмотреть статью Донского тех времен:
http://www.sdchess.ru/9_WC_Don.htm
Ну а вообще, люди, продававшие шахматные программы в те времена (и, естественно, следившие за рынком) говорили, что российские программы - это были любительские поделки, и даже рядом не стояли с коммерческими продуктами вроде Fritz.

zorin29

Ботвинник занимался этим делом. Ещё группы были. Донской вышеупомянутый уже нет.
Занятия "этим делом" Ботвинника у меня все еще вызывают скептицизм. Начать в 1970-е годы, закончить в 1994-м, и не разу не представить хотя бы прототип? Идеи интересные, да, но, как мне кажется, не для шахмат :)
Если эти другие "группы" работали так же продуктивно, то это лишь подтверждает мою теорию о сильном отставании СССР/России в этой области.

palitik8

говорили, что российские программы - это были любительские поделки
Учитывая позднесоветский подход к информационным технологиям это естественно.
Оставить комментарий
Имя или ник:
Комментарий: