Алексей Мухин
Механоид
© Алексей Мухин, 2020
© ООО «Издательство АСТ», 2020
Часть первая
Мир изменился. Мы не заметили, как это произошло, но вдруг оглянувшись, стало понятно – сейчас уже все по-другому. Мы действительно вошли в эпоху умных машин и автоматизированного труда. Начиналось все довольно буднично и незаметно. Сначала появились базы данных со своим собственным языком, ничего особенного, просто такое структурированное хранилище, куда вы запихиваете жестко заданные типы записей – «сказано в таблице карандаши и тетради, значит, нечего совать туда свои ручки». Это грубо, но зато наглядно – если мы определили тип данных, то только его туда и можем впихнуть. А если ситуация стремительно меняется, что тогда? Тогда нам нужен программист и переработанная оболочка программы – людям сложно работать напрямую с данными, и тут самое слабое звено мы. Потом появились распределенные базы данных по множествам серверов. Они были особо интересны тем, что сами базы не имели жестко заданных типов данных. Вещь вышла прекрасно масштабируемой и отказоустойчивой. Но вот чем более гибкая система хранения, тем более топорная система обработки – тут уже надо хорошо самому головой шевелить, чтобы к ручкам в ящик не положить топор. Здесь мы сами за всем следим и сами делаем выборки данных. Но с этими базами можно делать все что угодно, и как вариант в ситуации вседозволенности возникает соблазн по-быстрому влепить дополнительное поле или сбацать отчетик на прямых запросах. В результате – никто не может понять, как это работает и что где находится. Каша.
И вот тут человечество сделало следующий шаг – слияние двух типов баз и применение технологии нейронных самообучающихся сетей. Появилось понятие «фокуса данных». Первая жесткая база данных хранила только ссылки на сами объекты, но не хранила их. Вторая – масштабируемая и огромная – уже располагала их детальными описаниями. Нам не нужно в данный момент времени полностью знать, что такое карандаш, все его типы и где они валяются или где их видели – нам нужен просто один карандаш под рукой именно сейчас. Вот тут первая база и помогала быстро отыскать по заданным условиям его, а вот дальше уже обращалась к огромному хранилищу – нам нужен именно красный карандаш, надгрызенный с одного конца и хорошо заточенный, наш любимый. По ссылкам и вытаскивали данные из хранилища последовательно – все нужные нам признаки. Фокус данных предполагает одну простую мысль: для использования объекта нам не требуется все его описание, достаточно выявить его основные признаки, а выявлять их удобно именно из жесткой структурированной таблицы. А потом человечество сделало еще один маленький шаг: связало возможные действия с объектами данных. Именно возможные – что-то вроде аллертов. Просто свойство объекта – действие такое-то, за которое и отвечала нейронная сеть. Действия были обучаемыми! Мелочь, но нам стало достаточно знать один признак, чтобы вытащить все возможные действия с ним, но опять только те, что в «фокусе». Ночь, постель, девушка в ней и никого рядом, отношения у вас в статусе «очень близкие» – согласитесь, вариантов действий не много, и компьютеру не требуется перебирать все варианты, чтобы выбрать вариант действий. Решение вы можете принять быстро, или не вы – это может сделать и домашний робот, укрыть одеялом, например.
Все эти маленькие шажки смогли сделать возможным одно: рождение искусственного интеллекта. Любой кусок железа теперь обучался – не требовались огромные серверы для обработки всех данных, чтобы принять решение. Нужно только хранилище данных, общее хранилище данных и умение строить взаимосвязи. Были и печальные итоги прогресса – неожиданно выяснилось, что очень много людей тупее кофеварки. Но это были самые ценные члены общества – они были идеальными потребителями, а решения им помогали принимать их многочисленные помощники, были бы деньги. Вот так и появились игры глубокого погружения, в которых боты были ничуть не глупее людей, а прорисовка мира была просто великолепной. Да и как ей быть другой, если мы обычно не обращаем внимания на пейзаж, но если вы начнете разглядывать дерево, то увидите каждый листик на нем, и так вплоть до молекул. Но пока вы проходите мимо них, не заостряя внимания, то и видите лишь ключевые комбинации объектов «дерево». Все просто – что нам не интересно, то прорисовывается слабо, да и зачем рисовать то, что вы не заметите.
Меня зовут Олег, я – «тыжпрограммист». Обычно занимаюсь тем, что обучаю машины действиям. Мы не загоняем массив данных с описанием всех предметов. Зачем? Есть облачные хранилища – вот там все и лежит. На самих машинах только главная база с действиями и быстрыми ссылками на ключевые объекты – этого достаточно для работы, и не надо обучать каждый чайник правильно кипеть. Все понятия у нас есть, а вот применимость их к нашему продукту мы и определяем, да и алгоритмы действий тоже надо создать. Обучение базовое, но сложность именно в том, что предусмотреть все нельзя и надо обучить эту железяку принимать решения самостоятельно. Называется весьма замысловато: «определение первичных ключей и критичных решений». Думаете, просто? Я вас разочарую, но ведь если чайник позволит себе пролить на вас кипяток, то вы уже больше не купите его у нас. Но иногда вам надо специально пролить из него воду, и как это знать бедному чайнику? Постоянно изменяются условия существования чайника, и ему требуется принимать сложные решения – вот тут я и выстраиваю ему приоритеты. Ну, это я так упростил, сложнее всего с ванными – никогда не угадаешь, как сегодня надо человеку, тут уж да, грешен – возникает желание сварить этих тупых засранцев, чтобы мылись при одной температуре и ничего в ванну не пихали лишнего, особенно противоположный пол.
И да, я, как все «тыжпрограммисты», люблю поиграть в игры. Даже капсулу глубокого погружения купил, со своей памятью и написанными мною ключевыми скриптами – враг или друг, спасаться бегством или накостылять супостату; вот эти подборки очень помогали в играх лидировать или хотя бы не проигрывать каждый раз. Это я тоже упростил, но сами алгоритмы выбора были мною хорошо отлажены, и я их просто переносил в игры, что мне очень облегчало жизнь. Раньше таких, как я, называли читеры, сейчас читеров нет, я и скрипт – одно целое. Если надо попасть из винтовки точно в глаз, то я попаду именно в него – я принимаю решения, а алгоритмы их помогают мне осуществлять. Да так все играют, но их алгоритмы не оптимизированы, и они тратят лишние миллисекунды, а это для них уже фатально. Для них.
Новая игра вышла с большой помпой, и я поспешил в первые ряды ее мехвоинов. Эльфы-швельфы и прочая нечисть меня не радовала, да и просто скучно бегать с выдуманными луками и знать, что такие луки создать невозможно в принципе. Да и сами алгоритмы игр были туповаты, в отличие от их ботов, так что приходилось создателям принудительно делать глупее, иначе у игроков вообще шансов там нет. И вот новая игра. Условия просты: есть планета и три фракции, что добывают на ней ресурсы, – кристаллоиды, биовары и механоиды. Три разных подхода, но суть одна – нам нужны ценные ресурсы, что можно вырастить только здесь. Кристаллоиды мне не понравились – прекрасное энергетическое оружие, прочная броня, но маневренность как у тумбочки-скалолаза. Биовары были интересней в том плане, что броня хоть и слабее, но они ее могли сами восстанавливать прямо в бою, да и вообще с ремонтом проблем нет – это очень большой плюс. Я долго на них смотрел – для одиночного рейдера это, пожалуй, лучший тип техники. Но в итоге взял механоидов. Почему их? Потому что они умели все, но все понемногу.
Неплохое энергетическое вооружение, но уступает кристаллоидам, броня послабее кристаллоидов, но прочней биоваров и можно ремонтировать, хоть и не так быстро. Скорость, маневр – тоже усредненные. Но есть один большой плюс – они могут всё. Это открывало совсем иные перспективы – гибкая тактика, огромное количество вариантов модернизации и конструирования. Да блин, тут просто дух захватывает от перспектив.