powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / ссылка на список языков программирования -
25 сообщений из 271, страница 5 из 11
ссылка на список языков программирования -
    #36376571
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет генератора ходов, есть последовательный обход дерева и обсчет весов.

ну книжку чтоли какую почитай, ато матчасть серьезно хромает
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36377677
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sqIнет генератора ходов, есть последовательный обход дерева и обсчет весов.
о, дружище, советуя тут матчасть подтянуть ты такие глупости пишешь, что мама не горюй. Дерево берётся откуда?

Теперь по поводу матчасти: значится, расказываю: все околонаучные статейки про дип блю - выкини. Они написаны гуманитариями для гуманитариев. Про книжку - есть непотребство за авторством Корнилова - тоже выкини, материал стар и местами ошибочен.
Хочешь немного подтянутья в теории движков - найди исходники стрелки, роболита, стокфиша, фрута.

Итого: тезис о возможности написания шахмат на js в 2 экрана оказался не более чем галимым понтом и фантазией. Утверждение, что имеется исходник на шарпе подтвердить также не удалось. Впредь, будь добр, не пиши всякой чуши
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378288
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата Селов
о, дружище, советуя тут матчасть подтянуть ты такие глупости пишешь, что мама не горюй. Дерево берётся откуда?


Оно берется как множество всех возможных ходов с текущей позиции.
Откуда ты взял "генератор ходов" для меня остается загадкой.
Наверно оттуда же откуда взят твой генератор бреда.

Гата Селов
Теперь по поводу матчасти: значится, расказываю: все околонаучные статейки про дип блю - выкини. Они написаны гуманитариями для гуманитариев. Про книжку - есть непотребство за авторством Корнилова - тоже выкини, материал стар и местами ошибочен.
Хочешь немного подтянутья в теории движков - найди исходники стрелки, роболита, стокфиша, фрута.


Ну расскажи мне Д'артаньян чем принциально отличается алгоритм современных шахмат
от алгоритма который был лет 30-40 назад (АльфаБета). Я тебя с удовольствием послушаю.

Гата Селов
Итого: тезис о возможности написания шахмат на js в 2 экрана оказался не более чем галимым понтом и фантазией. Утверждение, что имеется исходник на шарпе подтвердить также не удалось. Впредь, будь добр, не пиши всякой чуши

я не понимаю. Это ты себя пытаешся переубедить чтоли ?
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378301
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстате что ты хочешь увидеть в коде С# для меня тоже загадка. Обычный обход дерева с высчетом весов на каждом уровне. Вечером домой прийду запощу. Писал шашки, писал шахматы. Там даже принципиальной разницы нет в энжине. Были шашки, через 4 часа стали шахматы. Все просто как топор. Но конечно не для тех кто теряется в мат части.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378313
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как уже было сказано, за 40 лет никакой замены альфа-бете не найдено. В этом смысле наиболее печальна история Ботвинника. В течении 20 лет он занимался созданием шахматной программы. Он свято верил, что будучи чемпионом мира по шахматам и одновременно хорошо понимая программирование, он сумеет создать программу, которая будет играть на уровне чемпиона мира. Итог печален - программа так никогда не заиграла (по этому поводу кто-то хорошо сказал <Ботвинник только думает, что он знает, как он думает>). Что ещё хуже, Ботвинник напечатал статью с описанием алгоритма в журнале International Computer Chess Association. Статья содержала результаты анализа нескольких позиций, якобы выполненных программой. Независимый анализ показал, что эти результаты являются фальсификацией - они не могли быть получены с использованием алгоритма Ботвинника.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378348
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот опять треплешся, причём не понимая сути дела.
sqI
Оно берется как множество всех возможных ходов с текущей позиции.

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

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

Басни про "писал шашки, шахматы, и винду тоже написал" оставь дл друзей, писал бы шахматы - примерно понимал бы как функционируют движки (как минимум - про генератор ходов понял бы)
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378357
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sqI
я не понимаю. Это ты себя пытаешся переубедить чтоли ?
Значит, объясняю для перманентно страдающих пятиминуткой гуманитарности:
По приведенной ссылке с якобы "шахматами в 5 килобайт" на деле оказалось нечто, похожее на шахматы, но не реализующее минимум 3 правила сей игры. Это как велосипед без педалей - свиду похож, но на деле - не велосипед.
Далее, были заявления о наличии в запасниках некоего кода на шарпе, реализующего - таки все правила шахмат, и более того (вытекает из контекста) реализующего математически - правильный алгоритм. Исходников никто не увидел.

Ты, в принципе, можешь сейчас с кодепрожекта потянуть 2 варианта шахмат на шарпе, но не стоит - они "математически неверны"
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378499
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата СеловЛибо функция возвращает всё это множество, либо возврщает по одному.

Д'артаньян знаешь чем человек понимающий в предмете и не понимающий отличается ? Тем как он задает вопросы, что именно ему не понятно. Например тем что профан возьмет какую то очевиднейшую вещь в алгоритме и начнет ковырять, ему что-то там не понятно. В твоем тестерском понимании существует какой-то генератор случайных ходов и ты пытаешся определить его тайны. Все его тайны дружок, еще раз, описаны еще в 60-70х годах и там нет ничего военного. Это обычный обход дерева, в моем случае рекурсивный. Если бы ты хоть чуть-чуть шарил в предмете, то поинтересовался например на счет оценочной функции или библиотек партий по которым помогает программе закончить игру. Именно это профанчик отличает поделку на 400 строк от серьезнейшей шахматной программы.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378507
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата СеловЗначит, объясняю для перманентно страдающих пятиминуткой гуманитарности:
По приведенной ссылке с якобы "шахматами в 5 килобайт" на деле оказалось нечто, похожее на шахматы, но не реализующее минимум 3 правила сей игры. Это как велосипед без педалей - свиду похож, но на деле - не велосипед.


Боян, ты так и не понял почему программа занимает именно 5 кб, не больше не меньше. И про конкурс 5К программ мимо ушей пропустил. И почему алгоритм там такой ядреный, потому что жаваскрипт не просто тупит а очень тупит. Ну ты понял, ты тоже не понял.

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

Гата Селов
Далее, были заявления о наличии в запасниках некоего кода на шарпе, реализующего - таки все правила шахмат, и более того (вытекает из контекста) реализующего математически - правильный алгоритм. Исходников никто не увидел.


Снова боян. Неужели ты думаешь что программа реализующая 90% правил и функционала "думающего" нормального игрока и проверяющая эти самые правила в оставшиеся 10% кода не втиснит поршивых три правила ? Да я лично их не реализовал потому что очень плохо играю в шахматы. Я все тонкости, вплоть до засчета ничьи при N холостых ходов даже не знаю.

Короче Д'артаньян сядь что-то напиши. У меня такое впечетление что в своем младенчестве ты пытался на Си что-то родить, но этот быдлокод занял столько десятков тысяч строк и поглощения ролтона во время отладки что ты сейчас делаешь круглые глаза и не понимаешь что все шахматы пишутся за пару дней под пиво, и весь энжин действительно занимает пару экранов
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378517
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лови разоблачитель, 521 строка вместе с графикой, ты так жаждал "генератора ходов" на C#
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378520
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но эти 520 строк смахивает на ранний мой говнокодец, это ранняя версия, есть вот чистый энжин в более элегантном исполнении. Именно этот код легко встал хоть под шашки хоть под шахматы, хоть под нарды

[SRC С#]
#region Engine

private int GetMinOrMax(int[] array, int forFigure)
{
int idx = 0, val = (forFigure==1?0:1000);
for (int i = 0; i < array.Length; i++)
if (forFigure == 1 && array[i] > val)
{
val = array[i];
idx = i;
}
else if (forFigure == 2 && array[i] < val)
{
val = array[i];
idx = i;
}

return idx;
}

private void ChildRun(Board b, ref int reiting, int enclosure, int forFigure, BoardCollection boards)
{
if (enclosure < 5)
{
ArrayList boardsList = new ArrayList();
boards = b.GetBoards(forFigure, true, boards, boardsList);
if (boards.Count() > 0)
{
int[] enclosureReiting = new int[boards.Count()];
for (int i = 0; i < boards.Count(); i++)
ChildRun(boards.Item(i), ref enclosureReiting[i], enclosure + 1, forFigure == 1 ? 2 : 1, (BoardCollection)boardsList[i]);
//boards.Reset();
reiting = enclosureReiting[GetMinOrMax(enclosureReiting, forFigure)];
return;
}
}
reiting = b.Properties.Reiting;
}

private void Run()
{
ArrayList boardsList = new ArrayList();
BoardCollection boards = CurrentBoard.GetBoards(1, true, null, boardsList);
int[] reiting = new int[boards.Count()];
for (int i = 0; i < boards.Count(); i++)
{
ChildRun(boards.Item(i), ref reiting[i], 2, 2, (BoardCollection)boardsList[i]);
/*if (Board.BoardsList.Count > 10000) Board.BoardsList.Clear();*/
}
if (boards.Count() > 0)
{
int otherIdx, max = reiting[GetMinOrMax(reiting, 1)];
System.Random rnd = new Random();
for (otherIdx = rnd.Next(0, boards.Count() - 1); otherIdx < boards.Count() * 2; otherIdx += 1)
if (reiting[otherIdx % boards.Count()] == max) break;

if (boards.Count() > 0) CurrentBoard = boards.Item(otherIdx % boards.Count());
}
}

#endregion
[/SRC]
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378525
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин Селов, мне кажется, что вы - немерянно крутой в шахматах.
Мне кажется было-бы не лишним восстановить ваш статус.
Опубликуйте пожалуйста ваши разработки в этой области.

А-то знаете-ли троллем запахло...
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378532
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот ты опять в лужу плюхнулся.
То, что ты называешь "библиотек партий по которым помогает программе закончить игру" в России принято называть "Эндшпильные таблицы Налимова", за бугром - "Endgame tables". И тут дело не столько в терминологии, солько в непонимании тобой принципов. Это не "библиотека партий", это спиок просчитанных до конца позиций.
Про генератор ходов - да, тайн там нет. Но это место, в котором 90% вот таих как ты джедаев облажаются, и даже не поймут - почему. Это, кстати, не ускользнуло бы от твоего внимания, если бы читал что - то, кроме невнятной статьи о копьютерных шахматах.

Твоё признание "Я все тонкости, вплоть до засчета ничьи при N холостых ходов даже не знаю." просто прелесно. Т.е. ты садишься кодить, даже не разобравшись в предметной области. Это похвально, именно так работают "крутые кодеры".

Код ресирча посмотрю попозже, в ошибки ткну тебя полиже к ночи.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378535
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ухаха, программа ресерча - вликолепна, одни перепутанные местами черные король с ферзем чего стоят.
Сейчас в себя прийду, посмотрю дальше
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378537
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonГосподин Селов, мне кажется, что вы - немерянно крутой в шахматах.
Мне кажется было-бы не лишним восстановить ваш статус.
Опубликуйте пожалуйста ваши разработки в этой области.
А-то знаете-ли троллем запахло...
Ну что - вы, я тут не орал, что писал шахматы/шашки. Так что, думаю, не с меня надо начинать.

Но я поищу на диске, может, что и сохранилось.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378540
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
неужели уталил твое любопытство мифического "генератора ходов". Неужели ты признал что там нет ничего военного с 70х годов
Я вижу Дартаньян ты для себя открыл наконец чем поделка отличается от серьезной шахматной проги, пей кофе и изучай 4 сотни строк, надеюсь завтра ты ко мне не с дошкольными вопросами пожалуешь о "генераторе"
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378547
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата Селовухаха, программа ресерча - вликолепна, одни перепутанные местами черные король с ферзем чего стоят.
Сейчас в себя прийду, посмотрю дальше

в тебе серьезный тестерский талант пропадает, нада тебе еще хлама наприсать, посидишь потестируешь на чем я когдато учился программировать
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378561
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, собственно, ч.т.д.
Генерация ходов в программе ресёрча происходит с ошибкой. Король бьёт защищенную фигуру. Это как - раз то, о чём я говорил - джедаи типа тебя обязательно облажаются в этом моменте.
Ищи другой исходник в 400 строк, ибо пока только слова.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378564
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата СеловНу, собственно, ч.т.д.
Генерация ходов в программе ресёрча происходит с ошибкой. Король бьёт защищенную фигуру. Это как - раз то, о чём я говорил - джедаи типа тебя обязательно облажаются в этом моменте.
Ищи другой исходник в 400 строк, ибо пока только слова.

катастрофа, о ужас, найден серьезный баг, все, теперь точно можно заявить,
фикс этого бага займет не меньше 5 тысяч строк, следовательно Капитан Очевидность сообщает, что шахмат на 400 строк не существует в природе
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378565
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ресёрч радует неимоерно - уже три хода, как его программка без короля играет, и ничего.
Тут ведь что важно: в данной программе реализовано ещё меньше правил шахмат чем в той, что на js.
Итого, дружок, слив не засчитан, ищи другой движок
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378569
Гата Селов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sqI
ты кончай трепаться, пофикси баг, предложи вариант, ну ладно, в 1000 строк, но чтоб он реализовывал правила игры. Сейчас можешь не писать, возьми месяц на подготовку, ещё месяц на напиание, потом я тебе покажу где ты снова облажался
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378575
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата СеловНо я поищу на диске, может, что и сохранилось.
Буду ждать с нетерпением.
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378576
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, без короля игра плоха в шахматах. Это ты прав

ану ка глянь дартаньян еще єти, еще один ВиндовзАпликейшин1 у себя на компьютере нашел
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378583
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гата Селов ищи другой движок

Какое отношение имеет баг к другому движку, ты чтоли законспектируй. Движок везде одинаковый, баги разные
...
Рейтинг: 0 / 0
ссылка на список языков программирования -
    #36378591
sqI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во второй версии у меня есть четкая проверка на шах, так что короля думаю захавать не удасться

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if (checkShah)
                {
                    ArrayList newBoards = new ArrayList();
                    foreach (Board b in boards)
                        if (!b.IsShah(forFigure))
                            newBoards.Add(b);
                    if (newBoards.Count <  boards.Count) this.Reiting +=  2  * (forFigure ==  1  ?  1  : - 1 );
                    if (newBoards.Count ==  0 ) this.Reiting +=  100  * (forFigure ==  1  ?  1  : - 1 );
                    boards = newBoards;
                }
...
Рейтинг: 0 / 0
25 сообщений из 271, страница 5 из 11
Форумы / Программирование [игнор отключен] [закрыт для гостей] / ссылка на список языков программирования -
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]