Смогут ли компьютеры захватить власть на Земле?

1. Смогут ли компьютеры захватить власть на Земле?
2. Сможет ли компьютерный разум во всём превзойти человеческий?
3. Смогут ли компьютеры самостоятельно начать действовать во вред человеку?

Эти и, похожие на них, вопросы занимают в современном мире не только любопытных обывателей, но вполне серьёзных философов, строящих свои теории о необходимости для мира быть готовым к последствиям таких событий.
 
Но действительно ли так серьёзна опасность?

Или перед нами только болезненная фобия «безграмотных» философов, заразившая остальной мир, поверивший «учёным» гуманитариям, и не имеющий времени разбираться в технической части вопроса?

Рассмотрим эти обстоятельства путём иллюстрации того, что все лучшие современные шахматные программы, уже превзошедшие человека в этой игре, написаны не шахматистами, а математиками, возможно, всего лишь, знающими ходы фигур, и не более. И нет никаких непреодолимых препятствий к тому, чтобы, зная законы функционирования любой природной или вымышленной системы, запрограммировать наилучшую стратегию развития такой системы или получения необходимого результата. Проблема знания законов является проблемой временной.
 
Модель шахмат, с этой точки зрения, очень удобна, так как её законы известны и могут быть формализованы в программе. Программисты пошли по пути полного перебора вариантов и это оказалось эффективным, что мы и наблюдаем по тем результатам в практической игре, которые показывают современные шахматные программы. Но их слабое место – именно то, о чём говорил в своё время шестой чемпион мира по шахматам М.М. Ботвинник (1911-1995), тоже занимавшийся созданием шахматного алгоритма для компьютеров и считавший, что этот алгоритм должен имитировать процесс мышления человека, а именно, оценочная функция, которую неизбежно должна применить любая программа, дойдя до горизонта своего расчёта, чтобы у программы была возможность сравнения разных вариантов. Но эта оценочная функция получалась у Ботвинника настолько сложной, что ему не хватило времени воплотить её в программу. Поэтому оценочная функция, созданная математиком, вероятнее всего учитывает только материальное соотношение, например, в пределах ближайших десяти (двадцати) полуходов после выигрыша материала. Но такая оценка позиции не позволяет компьютеру давать верные оценки целому классу позиций, в которых он будет упорно искать выигрыш и отказываться от ничьей.

Одной из таких позиций является позиция, предложенная профессором физики и математики Оксфордского университета Роджером Пенроузом 14 марта 2017 года на сайте газеты «Telegraph». Полностью статью профессора можно посмотреть здесь: - https://vk.cc/6ro5dU
Белые: Кре2, п.п. а2, b3, c4, c6;
Чёрные: Кра6, Фа5, Ла4, Лb5, Cg3, Cf4, Ce5, п.п. а3, а7, b4, b6, c5.
В примечаниях к позиции профессор указал:
1. Что «эта шахматная позиция сокрушает компьютер».
2. Что «белые играют и делают ничью».
3. Что «позиция легальна».

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

К сожалению, большинство из тех, кто тут же бросились решать эту задачу, приняли слова «сокрушить компьютер» за задание «найти выигрыш за белых» в этой позиции. Естественно, они его не нашли, и начали подозревать в шутке или даже обвинять профессора в издевательстве. Другая, меньшая часть, начали искать не решение, а подвохи в самой позиции и примечаниях, указывающие, что позиция несколько иная. И, как ни странно, но нашли такие подвохи, поменяли позицию и показали решение. Однако, это были решения, которые, во-первых, не решали предложенной позиции, а меняли её, вплоть до нелегальной, а во-вторых, не имели отношения к «сокрушению компьютера», так как были применимы к позиции, независимо от того, играл ли компьютер за чёрных, а значит, решениями предложенной позиции не являлись. Примеры можно посмотреть здесь:
 https://youtu.be/On6rymfAE7I
 https://youtu.be/i546mhoPlZo

Попробую объяснить, что, на мой взгляд, имел ввиду профессор, предлагая миру эту задачу. Ответ покажется банальным, ведь многие ждут «гениального» объяснения, но он прост, а именно, профессор хотел от мира ровно того, что он указал в примечаниях к позиции, и ничего за рамками своих примечаний, т.е. ни одно слово в этих примечаниях не означает чего-то скрытого, необычного или «гениального».
А следствием этого простого объяснения является то, что миру предложена задача не на нахождение выигрыша за белых, а задача нахождения стратегии «игры» за белых (не зря же в примечании – «белые играют»), при которой компьютерная программа «рухнет», т.е. сама позволит белым выиграть.

А следствием этого, в свою очередь является то, что миру предложена научная задача, а решением её являются не шахматные варианты, а стратегия исследования проблемы, которая позволит «сокрушить компьютер», т.е. заставит его допустить собственный проигрыш.

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

Поэтому гениальность или тупость тут ни при чём. Любой человек, кому объяснить эту логику, будет щёлкать такие задачи, как орешки. Конечно, я допускаю, что какое-то количество людей, всё-таки, не способны абстрагироваться от однажды усвоенных, «незыблемых» с их точки зрения, положений, и будут упорно спорить, не признавая такое решение, настаивая, что им была предложена именно шахматная задача в её классическом понимании, но считаю, что таких меньшинство.

Именно поэтому такое решение недоступно компьютеру, когда ему предлагают сыграть за белых, так как программисты не заложили в него этой логики (абсурдной для шахмат), что попутно является иллюстрацией и опровержением той распространённой фобии гуманитарной (а значит, безграмотной в компьютерной области) части человечества о, якобы, возможности захвата компьютерами власти на Земле. Компьютер никогда не сделает того, что в него не заложено программой, т.е. самим человеком.

Но человек может ошибиться!? Да!

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

Перейдём к исследованию позиции с учётом всего вышесказанного.

Налицо громадный материальный перевес чёрных, а это значит, что программа в этой, очевидной для человека, ничейной позиции будет играть на победу, только если её оценочная функция запрограммирована со срытым дефектом. Но может быть, в этом нет ничего критического для чёрных, за которых играет такая программа? Как это выяснить? Конечно, только путём эксперимента! Причём, мы имеем возможность повторять такой эксперимент неограниченное количество раз, до тех пор, пока не найдём весь спектр ситуаций, в которых программа подставляется под проигрыш.

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

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

Вот эти первоочередные пути (ситуации), подлежащие проверке:

1. Выясняем, действительно ли наше предположение о том, что оценочная функция имеет дефект программирования, справедливо для исследуемой шахматной программы. Это мы можем выяснить, если этот дефект есть, уже на пятом ходу, два раза сходив королём с е2 на d3 и обратно и пятым ходом в третий раз поставив его на d3. Если при такой игре со стороны белых, программа не создаст троекратного повторения и не потребует ничью, то вывод о дефекте верен. А если создаст и потребует, то это тоже, пока, не значит, что дефекта нет. Ведь он может быть в другом месте, а количество экспериментов не ограничено. Но продолжаем в любом случае, ведь саму ситуацию «крушения» мы ещё не нашли.

2. Проверяем, как программа поведёт себя при «угрозе» применения белыми «правила пятидесяти ходов». Для этого переводим короля на d7 и начинаем ходить туда-сюда с d7 на е6, попутно получая многократные подтверждения дефектной реакции чёрных на «угрозу» трёхкратного повторения позиции. Если на 49-м и 98 -м ходах, или чуть раньше, программа подставит под бой по слону, то можно зафиксировать другой дефект в оценочной функции. Если же – не подставит, но сама не потребует ничьей, то это тоже, пока, не значит, что дефекта нет, ведь мы не проверили ещё ситуации, в которых вынужденно при любом ходе возникает троекратное повторение, при нахождении, хотя бы одного слона на диагонали b8-h2. Количество ходов, которое нужно сделать, чтобы создалась эта ситуация, многократно больше 50-ти, но ни одна из сторон, хоть и может, но не обязана требовать ничьей. Но продолжаем с той программой, где дефект «50-ти ходов» обнаружен, ведь компьютер пока не «рухнул».

3. Но как поведёт себя эта программа, при следующей «угрозе» 50-ти ходов? Ведь отдавать слона больше нельзя, так это сразу ведёт к пату. Мы играем ещё 49 ходов и ставим программу перед выбором либо допустить движение белой пешки, либо применение правила, ведущего к ничьёй. Если программа допускает движение пешки, то это указывает теперь уже на критический дефект в оценочной функции, и перед нами первая ситуация «сокрушения компьютера». А если не допускает, то возвращаем позицию к 99 ходу и продолжаем с него.

4. Чёрные остались с одним слоном, которого они больше не могут подставлять, так как его взятие сразу ведёт к пату. А белые контролируют два поля из семи на диагонали b8-h2, ходя королём по полям с d7 на е6. У слона чёрных остаётся возможность два раза занять пять полей, как при короле на d7, так и на е6, т.е. через двадцать ходов после 99-го хода чёрные вынуждены либо допустить троекратное повторение, поставив слона в третий раз на любое поле этой диагонали, либо уйти с диагонали b8-h2. Но эта ситуация не полностью аналогична, рассмотренным в предыдущих пунктах, так как там уклонение программы от троекратного повторения не вело к проигрышу. Здесь же для программы не составляет никакого труда посчитать, что уход слоном с диагонали b8-h2, хоть и позволит избежать, троекратного повторения, но приведёт к проходу белой пешки в ферзи с победой белых. Если в этой ситуации слон всё-таки уходит с диагонали b8-h2, то это признак критического дефекта в оценочной функции, так как в ней стоимость «проигрыша короля» заложена меньше, чем материальный перевес чёрных в ферзя, две ладьи, слона и пешку, и перед нами вторая ситуация «сокрушения компьютера». Но если слон не уходит с диагонали b8-h2, это тоже, пока, не значит, что дефекта нет, ведь программа не имела права допустить проигрыш. А что будет, если программу поставить в ситуацию, когда она сама вынуждена зафиксировать пат?

5. Слон чёрных остался на диагонали b8-h2, но белые с королём на d7, всё равно, двигают пешку на с7 под бой слона. Теперь перед чёрными несколько иная проблема, они сами должны зафиксировать пат, забрав пешку и отдав слона, при громадном материальном перевесе. Если слон не возьмёт пешку, то это признак следующего критического дефекта в оценочной функции, и перед нами третья ситуация «сокрушения компьютера». Если же слон возьмёт пешку, то мы имеем право вернуть ход и продолжить исследования следующих ситуаций.

6. Как мы заметили, в предыдущем пункте пат чёрным был не совсем вынужденным, ведь белые не обязаны были брать слона, а могли, кроме этого, сделать другой ход, после чего чёрные выигрывали. Поэтому выбор программы не исключал возможного выигрыша. Но что будет в ситуации, где такой выбор между ничьёй и выигрышем будет исключён? Возможно ли здесь создать такую позицию? Да, возможно! Для этого пешку на с7 надо двигать при короле на а8! Тогда её взятие сразу ведёт к пату, без вариантов.

7. Но как же король попадёт на а8, если слон не собирается покидать диагональ b8-h2, а при движении пешки, чтобы прикрыть проход, сразу её забирает? Тут нам помогут те дефекты оценочной функции, которые были выявлены ранее, а именно уклонение программы от троекратного повторения, когда нет риска проигрыша. Поэтому белые начинают ходить королём туда-сюда по полям d7 и с8. Для поля d7 программа вынуждена сразу допускать троекратное повторение (ведь король был здесь на 100-120-х ходах), так как уход с диагонали b8-h2 проигрывает, а вот при короле на с8 уход с диагонали b8-h2 не ведёт проигрышу, ведь пешка не успевает проскочить в ферзи, тогда как позволяет избежать троекратного повторения через 10 ходов, ведь у слона на диагонали b8-h2 всего пять полей. А это значит, что на одиннадцатом ходу король cможет пойти на b8 и после возвращения слона на диагональ b8-h2 – на а8! Теперь чёрные оказались в той ситуации, когда у них нет выбора между ничьёй и выигрышем. Если слон чёрных останется на диагонали b8-h2, то у белых следующий ход единственный, а именно с6-с7, и взятие этой пешки приводит к немедленному пату. И это позволяет выявить ещё две ситуации «сокрушения компьютера». Если слон покинет диагональ b8-h2, ведь белые не обязаны двигать пешку, а значит, выигрыш ещё возможен, то перед нами четвёртая ситуация «сокрушения». Если слон не покинет диагональ b8-h2, но и не возьмёт пешку, ведь возможно превращение не только в слона или ферзя, но и более слабое в коня или ладью, при которых нет немедленного проигрыша, а выигрыш ещё возможен, то перед нами пятая ситуация «сокрушения». Обе эти ситуации говорят о критических дефектах в оценочной функции программы.

8. И наконец, если все предыдущие пункты программа пройдёт и не допустит проигрыша, то только то, что она попала на эти пункты, а не потребовала ничьей после первых пяти ходов (см. п. 1), указывает на то, что её оценочная функция требует ещё одного тестирования, а именно, полного перебора всех позиций троекратного повторения, при, хотя бы одном, слоне на диагонали b8-h2, а короле на d7 или е6. Если первую же позицию троекратного повторения программа не допустит и уберёт всех слонов с диагонали b8-h2, то перед нами шестая ситуация «сокрушения компьютера», так как оценочная функция всё-таки имеет дефект.

Насколько я понимаю, профессор Пенроуз, предлагая задачу, хотел показать, что ни одна из, существующих на сегодняшний день, шахматных программ не сможет противостоять указанной выше стратегии и проиграет.
 
Осталось только проверить все программы. Насколько я знаю, «Стокфиш 8» с сайта: chess.com не устоял и проиграл, хотя там у проверявших не было этой стратегии. Они просто заставили компьютер играть эту позицию за чёрных как можно дольше и в итоге получили, что к 148 ходу слон покинул диагональ b8-h2, т.е. предоставил возможность пешке двинуться, чтобы только не допустить применения правила 50-ти ходов. Компьютер «рухнул» на п.3 стратегии. При этом король даже на а8 не заходил, а троекратное повторение по п. 4, хотя на него нужно меньше ходов, тоже не проверяли, просто случайно сделали за белых 148 ходов.

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

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

Ну, и напоследок, небольшой пример абсурдного (дефектного) поведения не только программ, но и самого человека.

Частичным отражением логики исследования является правило, существующее до сих пор в шахматах, т.е. непризнание ничьей при Вашей просрочке времени, когда у противника имеется хотя бы одна пешка, будь у Вас, при этом, хоть полный комплект фигур. Почему-то считается, что именно после просрочки, если дать Вам возможность продолжать игру, то Вы начнёте играть именно так, как показано в решении данной задачи, т.е. отдадите по очереди весь комплект фигур, чтобы избежать применения «правила 50-ти ходов», позволите противнику провести пешку в ферзи, а потом получите мат. Хотя её основанием служит только психологическая, т.е. вариативная, возможность поведения игрока (а не фигур, не позиции, ведь будь игрок в норме, он делал бы адекватные ходы), что игроки после просрочки становятся полными идиотами (все, без исключения), не подтверждённая никакой практикой или исследованием, никаким законом психологии, а только, единственно, желанием противника! При этом не существует, как в данной, рассмотренной ранее, задаче, никаких логических обоснований вынужденности подобной игры, ведь человек не запрограммирован, в отличие от компьютера. И эта очевидная глупость продолжает существовать в шахматах в виде правила!

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

Ещё справедливее было бы фиксировать просрочку времени не как проигрыш партии, а как обстоятельство, дающее, например, 0,25 (четвёртую часть) очка оппоненту, при определении окончательного результата, после окончания партии, которую игроки доигрывают со вторым контролем, например, в два раза меньше первого, без накопления от предыдущего контроля. Вторая просрочка снова даёт оппоненту четвёртую часть, но уже от оставшихся 0,75 очка, и т.д., уменьшая и оставшуюся долю очка, и очередной контроль, но партия будет как-то закончена, например, выигрышем того, кто просрочил три контроля. Тогда он получит, как утешение, оставшуюся долю очка, а проигравший в шахматы, заберёт себе всё, что выиграл по времени. За проигрыш всей партии можно было бы признать, например, только четвёртую просрочку времени. Современные шахматные часы позволяют программировать подобные режимы игры, или позволят при небольшой доработке их программ. Если сначала просрочил один, а потом другой, то большая доля временного выигрыша уменьшается на меньшую, и в шахматном розыгрыше на третьем контроле оказывается, соответствующая временному выигрышу, доля очка. Если выиграл тот, кто ничего не просрочил, то он забирает всё, но только одно, очко, без всяких добавлений за просрочки времени его оппонентом.
 
Подобной системой справедливо решаются три задачи, а именно:

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

2. Стимулирование, именно, шахматного, а не «кнопкодавского» мастерства.

3. Исключение очевидно несправедливого уравнивания искусства и скорости. Ведь при игре на время даже тот, кто выигрывает по позиции и по времени, показывает далеко не гроссмейстерскую игру, будучи даже чемпионом мира. Эти партии ничего не добавляют в копилку шахматного искусства, а заставляют человека демонстрировать игру, являющуюся отражением дефектов человеческого мышления, такую же, как мы здесь нашли игру компьютера с дефектом оценочной функции.

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

Итак, ответами на вопросы, заданные в начале статьи являются:
1. Нет!
2. Да, только с громадными объёмами данных!
3. Да, только в случае ошибки человека!
               

                © Александр Скальв. 15.06.2021


Рецензии
В цифру бездушную оборачивается человечество,
Потому что утрачено доверие по причине оценки даров.

Эд Раджкович   20.11.2021 11:09     Заявить о нарушении
На это произведение написаны 3 рецензии, здесь отображается последняя, остальные - в полном списке.