Глава восьмая
Ваш внутренний робот
Представьте себе холодный декабрьский вечер. Пятница. Человек едет домой с корпоративного праздника. Точнее, сказать, его везут домой. Он недавно купил свою первую самоуправляющуюся машину, запрограммированный Google, сделанный на заводе Mercedes электромобиль eSmart. И за рулем не он, а программа. В свете автоматически настраиваемых светодиодных фар он видит затянутые льдом лужицы, но на них можно не обращать внимания, так как снабженный чувствительными датчиками робот регулирует скорость и газ в полном соответствии с дорожными условиями. Все идет гладко. Человек расслабился и погрузился в приятные воспоминания о праздничном вечере. Он углубляется в густой лес, нависающий с обеих сторон, и вдруг из-за деревьев на дорогу выбегает какое-то животное и застывает в свете приближающихся фар. Это соседский охотничий пес, никогда не отличавшийся дисциплинированностью.
Что делает робот-водитель? Нажмет ли он на тормоза, спасая собаку, но рискуя тем, что машина пойдет юзом? Или уберет виртуальную ногу с педали тормоза, пожертвовав собакой ради безопасности пассажира и автомобиля? Как будет компьютер разбираться в потоке переменных и вероятностей, чтобы за долю секунды принять решение? Если посчитано, что торможение будет означать для пса вероятность уцелеть, равную 53 %, и существует вероятность 18 %, что будет повреждена машина, а с вероятностью 4 % человек, сидящий в машине, получит травму, то сочтет ли компьютер спасение собаки правильным действием? Каким образом программа, работая самостоятельно, переведет набор чисел в решение, чреватое неприятными практическими и моральными последствиями?
Что, если это собака хозяина машины? Вместо собаки на дорогу мог выбежать ребенок… Вообразите, что утром тот же человек едет на работу, просматривая поступившую за ночь электронную почту, автомобиль идет по мосту со скоростью 40 миль в час. По тротуару мост переходит группа школьников. Дети послушно идут за взрослыми, ничто не предвещает неприятностей, однако машина сбрасывает скорость, предпочтя ошибку безопасности. Внезапно среди детей возникает короткая потасовка, и одного мальчишку выталкивают на дорогу. Человек в машине, деловито набирая очередное сообщение на клавиатуре смартфона, не замечает происходящего. Робот должен принять решение: либо увернуться от наезда, выйдя из ряда и выскочив на встречную полосу, чем он может убить хозяина, либо наехать на ребенка. Какую команду подаст компьютер на рулевую колонку? Учтет ли робот, что в машине едет еще и ребенок на детском сиденье, снабженном особыми датчиками? Что, если по встречной полосе идут машины и одна из них – школьный автобус? Когда-то Айзек Азимов составил кодекс поведения робота: «Робот не может причинять вред человеку или своим бездействием допускать ситуации, которые могут повредить человеку» [1]. Это вполне разумное требование, но оно было написано в те времена, когда мир был устроен проще.