Ответы в темах
-
АвторСообщения
-
booot
Участник«Но, если в школьных учебниках на Украине проповедуется «извечная вражда» Москвы и Киева, русских и украинцев, и т.п.,»
Ну вы хоть в руках эти учебники держали?. И где вы там могли такое прочесть (кстати как у вас с украинским, чтоб таки прочесть и правильно понять прочитаное)?
. А вот я читал современные школьные учебники истории Украины сам (ради того же интереса — что ж там такое про русских пишут). Некоторые моменты, безусловно, описаны без декларирования дружбы братских народов. Некоторые , пожалуй, кажутся достаточно резкими человеку, учившему то же самое 20 лет назад и в Союзе. Но определнно нигде не указывается, что Москва и населяющие ее и окрестности граждане враги, к тому же извечные
. Может местные СМИ «малость подвирают»?«- с какой стати проявлять «лояльность» — к такому государству — мне, русскому, по-прежнему (наивно?) не считающему русских и украинцев врагами?!»
Что меня всегда интересовало: как можно проявлять лояльность (или наоборот — критиковать) правительство чужой страны?
. Ну казалось бы: критиковать и всячески дергать правительство должны сами граждане этой страны (они ж с ним в первую очередь живут). Разве что когда совсем все в шоколаде, жить настолько здоро, что прямо скучно, тогда, наверное можно и соседний народ заодно и с правительством жизни поучить
.
А процент людей в Украине, считающий что русские и украинцы враги, по моему скромному мнению, едва ли выше чем такой же процент русских в России
. Все таки клинические идиоты по популяциям более — менее равномерно распределяются.booot
УчастникНе!
Водки белорусской попить, хлеб-солью местной закусить да на страну посмотреть.А майданить — дело дурное (стало быть нехитрое) — и без меня желающие найдутся 
booot
Участник«К глубокому удовлетворению нынешних укрвластей эту цепочку выстроили Вы сами… т.к. «чужая страна» в какой-то момент может стать врагом.»
Украина граничит с 7 государствами (вашими словами — 7 потенциальных врагов
), все они для меня чужие (в России был 1 раз, в Польше 1 раз, в Беларусь как раз собираюсь, в Румынии, Словакии, Венгрии и Молдове не был вообще).«Своя страна «врагом» (твоим) быть не может — в отличие, кстати, от государства своей страны (но это другая тема).»
Моя страна эта та, где я живу всю свою сознательную жизнь, а не та, где я мог бы жить
. И «малая родина» у меня опять же Киев (а не отцовская деревня в ивановской области). Если подходить более глобально : своя страна это та, где родился, то той страны уже 15 лет как не существует вообще.А у нынешних украинских властей есть занятия и поинтереснее (да и поважнее), чем весь русский народ оптом во внешнии враги зачислять.
booot
Участник«Что же Вас не удовлетворяет? Против чего Вы возражаете?»
против вашей логической цепочки «русский украинец»—> «Россия»—>»враг»

booot
Участник«У каждого своя «малая родина», но у каждого русского — если он русский и «пока он русский»,- Родина — Россия.»
Россия это всего лишь государство, где (в том числе) живут и русские. Но спорить тут бессмысленно: мне вам не объяснить, что совершенно чужая мне страна, где я никогда не жил (и не собираюсь) не является мне Родиной
. Для родителей моих — да, но не для меня.booot
Участник«Забудьте поскорее о своём «этническом» происхождении! Будьте счастливы — Вы и Ваши дети…
Россия — проживёт без тех, кому она не ближе ни Польши, ни Румынии.»В мире порядка 5.5 млрд людей кому Россия не ближе ни Польши ни Румынии
. И мое мнение, что у России могут быть дела поинтереснее, чем решать проживет она без них или нет. И вообще как-то болезненно вы относитесь к тому, что этнический русский может любить Россию меньше чем собственную страну
.«А в Украинской ССР украинский язык не был государственным?Не было украинского радио, телевидения, не издавались книги на украинском? в университетах не готовили преподавателей украинского языка и литературы?»
Государственным языком, насколько мне кажется, является тот, на котором ведется официальная государственная документация. Киев в то время был практически русскоязычным городом. У меня в русской школе украинский язык был факультативом — по заявлению родителей его можно было совершенно официально не учить .
Да и зачем вспоминать то время: в нынешней Росии к примеру чеченский, калмыкский и чукотский языки являются государственными?
Ведь этносы эти тоже проживают компактно и наверняка на территории их проживания есть все озвученные вами элементы их культуры
booot
Участникследовало бы относиться с большей бережностью к своему национальному: по примеру прибалтов, украинцев»
Язык, а так же прочие атрибуты моей русскости всегда при мне и на них решительно никто не зарится
.Русский язык в Украине не разрушают — его просто не развивают. Да и собственно зачем, если а) есть украинский — государственный б) русский государственный есть кому развивать и без Украины
. Есть некоторые перегибы, но ощущаются они как движение маятника назад. Раньше зажимали украинский, теперь чуток и русскому достается.booot
УчастникЯ этнический русский, живу в Киеве практически с самого рождения. Родной язык естественно русский. Вот уже 15 лет украинский — государственный язык моей страны. Ребенок мой уже с садика на нем общается и в школу в следующем году пойдет тоже в украинскую. Моим делом, как родителя, будет донесение до нее русской культуры. Да — в школе русская литература будет преподаваться как одна из зарубежных. Да — русских школ осталось значительно меньше чем украинских.Но я не вижу проблемы в этом. Никто Пушкина, Достоевского или Толстого в Украине на кострах не жгет — всегда можно купить и прочесть (как и прочих авторов в оригинале на любом языке). То же с русскими театрами, фильмами и т.п. Ну а отдавать ребенка в украинскую школу буду потому, что планирую жить именно в этой стране. Именно поэтому и сам выучил украинский до практически свободого владения как в устной, так и в письменной форме. В России у меня достаточно много родственников, но это другая страна. Не ближе ни соседней Польши ни соседней Румынии. Так что сейчас я вполне согласен с фразой «я — украинец», подразумевая под этим гражданство своей страны. Ну нет между обозначением гражданства и этнической принадлежности такой удобной разницы как между «русский» и «россиянин»!
Морозов Алексей.booot
УчастникОб этом и спрашивал. Как всё же распределяется по доске «хорошесть» и «плохость» полей?
Обычно исходя из статистики сыгранных партий. То есть если на е5 шашка стоит в среднем лучше чем на h6 то и вес поля e5 будет выше. Разумеется, что всегда может найтись позиция, где все будет в точности наоборот. Там и будет видна разница между подходом к игре человека и компьютера, когда последний не играет строго говоря в шашки, а реализует лишь некую абстрактную модель, отвечающую правилам шашечной игры. И такая нестатистическая позиция, если и приведет компьютер к проигрышу из-за неверной оценки, будет лишь вполне предсказуемой погрешностью модели.
Полностью свободны от подобных погрешностей лишь эндшпильные базы (и позиции к ним однозначно сводимые) в силу специфики алгоритма их получения.booot
Участникbooot! Может ты придумал что-то революционно новое?
Максимум до чего я могу додуматься это генерить в три этапа:
1. поля, которые можно сдвигать на 3.
2. поля, которые можно сдвигать на 4. Здесь будут объединены ходы направо и налево.
3. поля, которые можно сдвигать на 5.Тут сложно что-то революционное придумать
. Те же 3 этапа. Просто я не считаю это потерей стройности: если с точки зрения скорости это оправдано, то компактность кода меня интересует уже во вторую очередь. Плюс ко всему надо ж не забывать, что генератор ходов это еще не вся шашечная программа, есть еще и оценочная функция. И лично мне работать в ней с битбордами будет комфортнее чем с массивами и списками. Но это лично мое мнение.Вообще-то какой формат для описания доски использовать — дело вкуса. Генератор ходов, конечно, влияет на общую производительность программы, но не слишком принципиально. Я это понял когда в своей шахматной програмее решил перейти со старой непроизводительной MailBox системы сразу на вращающиеся битборды. По perfomance тесту получил дикий прирост скорости генерирования. Но в целом программа не так уж и усилилась — все же есть более важные ее части для прироста силы игры чем генератор ходов.
booot
УчастникТут не используется иделогия параллельной обработки. Лучше найти сразу все возможные конечные поля для ходов влево, а потом их генерить, доставая по одному биту из битборда. Затем то же для всех ходов вправо.
Пример выше был для удобства приведен
. Конечно использовать логический сдвиг всего битборда простых влево или вправо эффективнее.«Если использовать 32 бита, то приходится сначала генерить:
— все ходы влево с четных горизонталей
— все ходы влево с нечетных горизонталей
— все ходы вправо с четных горизонталей
— все ходы вправо с нечетных горизонталей»Это необязательно. Вполне достаточно создать два дополнительных битборда, где будут указаны невозможные поля для хода влево и вправо и перед тем как производить соответствующие сдвиги просто сделать AND с расположением простых. Тогда, к примеру, простые a1 a3 a5 a7 будут замаскированы и в дальнейшем не будут принимать участие в «ходе влево».
booot
УчастникМысль веду к тому, что самую сложность как раз составляет TryKingCapture, т.к. реализовать правило «дамка должна рубить все стоящие на пути шашки» самая сложная задача в генераторе ходов.
Процедуры TryKingCaptrure и TryManCapture удобнее всего делать рекурсивными. У меня, к примеру, один экземпляр процедуры TryKingCapture при обнаружени возможности взятий вызывает следующих экземпляр процедуры TryKingCapture, передавая ему в качестве параметров список побитых шашек противника (чтоб по нескольку раз не бить одну и ту же). Запись легальных ходов в массивы, таким образом осуществляется на самом нижнем уровне рекурсии, когда текущих взятий в очередной раз уже не найдется.
Про BitBoard тоже интересно, думаю что не только мне, но видимо смелости у меня только и хватило попросить
В двух словах расскажу тут, если нужны будут материалы — могу по почте кинуть. Представление доски с помощью битбордов означает, что каждому полю шашечной доски (их 32) назначается в соответствие 1 бит 32-разрядного целочисленного числа. К примеру полу а1 соответствует 0-й бит, c1 — 1-й бит…h8 — 31-й бит. Если шашка стоит на этом поле — бит устанавливается в «1», если поле пустое — в «0». К примеру передача в процедуру TryKingCapture всех побитых шашек противника означает передачу простого целочисленного 32-разрядного числа с установленными битами, соответствующими положению побитых шашек противника на доске. Установка/снятие бита производится логическими командами Or и AND. Для корректного представления доски достаточно 3 битбордов (12 байт памяти) — whitepieses (белые фигуры), blackpieses (черные фигуры) и kings (дамки обоих цветов). С помощью этих битбордов простейшими логическими операциями мы можем получать любую интересующую нас информацию. К примеру: найти положение всех белых дамок (whitepieses and kings), всех белых простых: (whitepieses and (not kings)). Для генерирования ходов я использую предвычисляемые массивы битбордов, индексируемые по полю шашечной доски, и содержащие битбоды полей, на которые может пойти шашка. Пример: чтоб найти все ходы шашки b2 я использую: WhiteSimpleMoves[b2] and (not (whitepieses or blackpieses)). В результате получаю битборд, содержащий ходы белой шашки b2 на свободные поля.
Удобство битбордов состоит в том, что можно работать со структурами шашек параллельно, используя нужные логические команды процессора.booot
Участник«Все легко решается с помощью оценочной функции, если знать теорию.»
Для элементарных окончаний теория есть. Может даже немалая. А что делать для неэлементарных?
. В шахматах подсчитаны некоторые 7-ми фигурные беспешечные окончания. Для выигрыша требуется до 300 ходов. Теории (людской) там нет и не будет. Не знаю как в шашках (может подскажут уважаемые шашисты), есть ли человеческая теория эндшпиля, позволяющая выиграть многофигурные дамочные окончания ?booot
УчастникИнтересно, а на чем должна основываться оценочная функция в поддавках???
Баланс материала, централизация, подвижность. В общем все как и везде
. Тут надо понимать, что компьютер не играет в шашки (поддавки) — он играет в некую модель, реализующую правила шашек (поддавков). Чем точнее модель, тем сильнее играет компьюетр. Но «понимать» эту игру он не будет никогда.booot
УчастникКонечно, если счет 19 — 1. То тут уже можно быть уверенным.
Но! 15 — 5 и тут уже вероятность, что вторая прога сильнее достаточно велика. И если хочется знать правду нужно проводить больше партий.Это верно для шахмат с их высокой результативностью и практически «случайным» распределением позиций, где по очереди оценочные функции обоих противников на высоте. В шашках же из-за грубой ничейности и наличии ЭБ, которые используются всегда даже результат +3=7 вроде достаточно красноречив

«Если есть класс позиций, где нужно проводить какие-то специфические маневры, то можно использовать специальную оценочную функцию в которой оценки подобраны так, чтобы прога могла продвигаться вперед.»
Это опять же может пройти в шахматах, где есть понятия «король на краю доски», «король оттеснен от проходной», «активный ферзь в центре» и прочие позиционные атрибуты зачастую справедливые из общих соображений. В шашках же вообще бывает непонятно (нешашисту) почему поле a1 лучше чем d4 (или наоборот). Хотя, конечно, согласен что процент позиций, где возникают сложности невелик.
Вот вам подобный пример из шахмат: ферзь против ладьи. 98% позиций выиграно, но написать оценочную, чтоб выиграть только по безранговой базе по крайней мере у меня не получилось (правило 50 ходов мучает). А эндшпиль — вполне игровой.
-
АвторСообщения