Самовоспроизводящаяся фабрика: от простого - к сложному
Чтобы лучше понять как может выглядеть праткическое самовоспроизводство фабрики, представим себе ряд моделей самовоспроизводящих автоматических производственных систем (АПС), от примитивно простого - к самому сложному.
1. Готовая АПС из многих кластеров, не требующая самовоспроизводства
Чтобы кластеры что-то минимальное делали, хотя бы мигали светодиодами, в каждом из них должен быть планировщик и источник энергии - автономной (например, солнечной или ветровой) или точка подключения к линии электропередач (ЛЭП). Даже в этом примитивном случае, каждый планировщик содержит в себе список всех планировщиков сети с их глобальными идентификаторами и той информацией, которая нужна для взаимодействия с ними (например, о состоянии, возможностях и ожидаемой загруженности). Это позволяет отправлять любому планировщику сообщения (используя другие планировщики как сетевые маршрутизаторы) а также управлять АПС с терминала, подключенного к любому планировщику.
При этом необязательно и даже вредно, чтобы каждый планировщик был связан с каждым. Достаточно чтобы каждый из них был связан с 3...10 смежными. Тогда соотношение надежности сети и нагрузки на нее представляется оптимальным. Кроме того, прямые соединения (по кабелю или лучу) более защищены от помех и злоумышленников чем широковещательные.
2. Сеть кластеров, физически уже готовых, но требующих активации по линиям связи друг от друга
Здесь возникает необходимость процедуры активации, заключающейся в установлении связи и передаче команды активации. Эта процедура проходит под управлением материнского кластера, произведшего новый (или при невозможности этого, любого другого готового кластера) и является завершением процесса производства. После чего новый кластер становится равноправным с уже имеющимися в сети и самостоятельно устанавливает дополнительные линии связи со смежными кластерами.
Для этого в сети должна быть доступна информация о наличии активированных и неактивированных кластеров, их положении и состоянии коммуникаций. На основе этой информации кластер может решить установить линию связи со смежным неактивированным или имеющим мало линий связи кластером. Если какой-то кластер не удается активировать со многих попыток, он помечается в сети как дефектный.
3. Сеть готовых кластеров требующих физического включения
Здесь мобильный манипулятор одного из кластеров должен подъехать и физически включить то что требует включения и настройки в новом кластере. Может быть, установить при этом носитель данных с программой и криптографическими ключами и т.п. Что именно и в каких координатах нужно для этого сделать должно быть ясно из информации, прилагаемой к списку неактивированных кластеров. Опять-таки, здесь приходится иметь дело с возможностью невключения кластера из-за дефектов.
Другой опасностью здесь является выход из строя ММ в непредсказуемом месте. Поэтому другие ММ должны уметь убрать его. Куда? Пока что в специальное место, порт вывода отходов из системы. Понятно, что через какое-то время в этой модели (не умеющей пока производить ММ) все ММ окажутся там. Примечательно, что входа ресурсов в систему у нас пока еще нет (есть лишь запас), а выход уже необходим.
4. Новые кластеры есть но не в развернутом виде, а на складе у старых
ММ расставляет системные объекты нового кластера на местности со склада (который в примитивном варианте представляет собой тоже раскладку на местности). Для этого нужна карта расстановки, если она доступна в сети, расстановкой могут заниматься ММ нескольких смежных кластеров, произведших эти объекты. Конечно, в такой модели возможна репликация только одного поколения - не производить же кластеры с уже готовыми кластерами следующего поколения на складе. Но с какими-то заготовками (по аналогии с яйцеклетками) уже вполне можно. В этой модели уже возможно удаление и выброс и последующая замена части или всего невключающегося кластера новыми объектами со склада.
5. Склады становятся более реалистичными
Но, на практике, на складе нет неограниченного места. Поэтому ММ добывает ресурсы извне - появляется входной поток. То ли с терминала транспортной компании, то ли из магазина, то ли из дикой природы, то ли из грузовиков - неважно пока. Но куда-то ездит за ними и расставляет сначала на свой склад, а потом уже куда следует. Здесь нам необходимы ячейки склада, которые сами по себе могли бы где-то храниться (например, будучи прицеплены к другим ячейкам). И сама АПС и дочерний ее кластер становятся собранными из ячеек, а не отдельно лежащих объектов. Это позволяет ей иметь стены, крышу, этажи, в общем, защищаться от непогоды и внешних факторов. У ММ должен быть и стандартный инструмент для определения положения, захвата, хранения, соединения ячеек. Собирать сами ячейки из частей мы пока не умеем. С появлением физических границ у АПС становится актуальным и КПП, опознающий и пропускающий только своих. Кроме того, добавляются новые элементы - балки перекрытия, пандусы для постройки крыш и многоэтажных фабрик. Для постройки кластеров на пересеченной местности может оказаться удобнее не переиначивать грунт (особенно скалистый), а ставить ячейки на опоры адаптивной длины. Все эти вспомогательные объекты поступают извне, регулярно диагностируются и при необходимости выбрасываются и заменяются новыми. Соответственно, АПС должна составлять план потребности в новых импортируемых объектах и запрашивать их из внешней среды (или у соседних кластеров).
6. Учимся собирать объекты
Объекты, по крайней мере некоторые, поступают на склад несобранными. Сборка заключается в том чтобы брать детали за стандартный интерфейс захвата и совмещать, защелкивая. Для этого нужно держать две детали, что удобно делать двурукому манипулятору (или однорукому с системой приспособлений). Потом уже собранное расставляем и т.п. Пока у нас на складе лежат только детали под сборку и собранные детали. На какой-то степени собранности детали со склада отправляются на присоединение к растущему дочернему кластеру. Сборка происходит по жестко заданным программам, включающим в себя совмещение, фиксацию деталей и контроль правильности соединения. Неправильно собранное разбираем или выбрасываем.
7. Учимся обрабатывать объекты
Начинаем выполнять простейшие операции с инструментами, то есть объектами, которые не становятся частью продукта. Но пока без расходных материалов. Это, например лазерная сварка, запрессовка, гибка, тестирование и программирование плат. Опять-таки, осуществляем входной и выходной контроль объектов на каждой операции и избавляемся от брака. Обработка происходит по жестко заданным программам.
8. Учимся работать с расходными материалами (заготовками)
Начинаем работать с материалами, точнее заготовками, которые инструментом превращаются в детали. Форма и литьевой материал, режущий инст и заготовка, экструдер и филамент, и пр. Где есть заготовки, там есть и отходы в виде стружки, опилок, обрезков, которые собираем и выбрасываем. Здесь уже программы обработки могут генерироваться с учетом имеющихся заготовок. Например, объект получаемый резкой из листового материала может изготавливаться несколько по разному в зависимости от толщины и состава этого материала. Один объект может изготовлен разными способами - например, резкой или трехмерной печатью в зависимости от загруженности соответствующих АРМ. Поэтому на этом этапе полезно уметь генерировать программы обработки на ходу.
9. Учимся заготавливать заготовки
Учимся делать сами заготовки - синтезировать материалы и реактивы, выплавлять металл, делать филамент для экструзионной печати. Появляются стандартные емкости для жидкостей, газов, сыпучих материалов (несколько видов для материалов с разными свойствами), пригодные для автоматического наполнения, дозирования, контроля, промывки, стыковки и т.п. Здесь мы уже можем запланировать производство заготовок с заданными свойствами как часть производственного плана.
10. Обретаем всеядность
Утилизация вторсырья, брака, вышедших из строя системных объектов и добытых из природы ресурсов требует их анализа, классификации, разделения, переработки. Аналогично лизосомам живой клетки, АРМ утилизации способны вернуть в хозяйственный оборот материалы и отчасти детали вышедших из строя или чужеродных объектов. Они же позволяют утилизировать временные объекты, которые были нужны лишь на определенной стадии работ (экспериментальные стенды, специализированные временные технологические приспособления, опытные прототипы, инструменты и оборудование, произведенные для выполнения разовой задачи). Они же могут утилизировать целый кластер АПС, если он был возведен для какой-то временной цели и должен освободить занимаемое им место.
Также, в условиях дефицита места и ресурсов (например, на космической станции), может потребоваться массовая утилизация объектов АПС в рамках планового апгрейда - с целью производств из них новых, усовершенствованных объектов.
Все меньше чего-либо покидает АПС в качестве отходов по мере развития средств утилизации. Соответственно, меньше нужно и добывать ресурсов, меньше транспортировать - эффективность системы растет.
11. Обретаем автономию
Учимся производить все, включая вычислительную технику. Вычислительная техника в интересах самовоспроизводства может быть не такой как мы привыкли видеть. Соотношение размеров ЭВМ и манипуляторов на протяжении истории меняется неравномерно. В середине XX века, когда ЭВМ только появились, они отставали в своей эффективности от манипуляторов, и к небольшому роботу могла прилагаться целая комната или большой шкаф с ЭВМ. Сегодня ЭВМ опередили развитие механики, и в относительном большом роботе может быть встроенна целая группа быстрых ЭВМ.
Однако в сферах МЭМС и микроробототехники даже эти современные компактные ЭВМ опять оказываются очень большими, энергоемкими и громоздкими по сравнению с роботом. При дальнейшем совершенствовании механизмов, переходе их на нано- и молекулярный уровень, вычислительная техника уже никак не может быть встроена в них. В живой природе на внутриклеточном уровне широко используются многообразные приемы чтобы обойти необходимость вычислений везде где это можно.
Рибосома работает без явных вычислений, по принципам ключ-замок. Информационные процессы при этом происходят, но крайне экономные, несопоставимые с тем, как если бы она при помощи машинного зрения находила фрагмент аминокислоты и потом с помощью матриц и тригонометрических преобразований рассчитывала траектории куда ее поставить. Для этого ей понадобилось бы быть во много раз крупнее и энергетически прожорливей.
Иными словами, техническая реальность начала XXI века, возможно, характеризуется пиком компактности ЭВМ по сравнению с манипуляторами (из-за медленной миниатюризации последних). Поэтому, ничего нет предосудительного в том, чтобы ЭВМ занимала пусть даже и большую часть самовоспроизводящегося кластера АПС, если она нас устраивает по прочим соображениям. Это может позволить использовать ограниченные технологические возможности АПС для полного цикла самовоспроизводства, не зависимого от импорта таких ключевых компонентов, как ЭВМ. Не говоря уже о том, что умение производить вычислительную технику открывает широкие возможности ее модификации для производства разного рода полезных устройств.
Практически это может выглядеть как сборка ЭВМ из станадартных базовых ячеек, допускающих независимую замену и ремонт. Эти ячейки могут состоять из стопки плат и корпуса с многопроводной шиной передачи данных. Можно представить себе компьютер, состоящий из одной ячейки-процессора и какого-то уместного количества ячеек энергозависимой и энергонезависимой памяти. Это в первую очередь относится к мощным компьютерам вроде планировщиков. Компьютерам-контроллерам хотя ничего и не запрещает быть тоже большими, может оказаться удобным умещаться в одной ячейке.
Логика работы с этим проста: ячейка-процессор проводит диагностику того что к ней подключено и если выявляет дефектные ячейки памяти, то ММ заменяет их. Если дефектов нет, то запускаются программы, обеспечивающие работу АПС. Соответственно, некоторая часть процесса воспроизводства должна быть посвящена наработке исправных копий ячеек памяти с программами и проверке их целостности (аналогично наработке копий ДНК и РНК в клетке).
По-видимому, уместно хранить в памяти планировщика полный набор программ контроллеров и драйверов, вместе с их конструкциями и технологиями, и вообще ПО всех объектов.
12. Увеличиваем неприхотливость, надежность и ареал обитания
После достижения автономности АПС хотя бы в самом узком интервале параметров внешней среды и сырья, можно стремиться к расширению этих параметров. Во-первых, повышать ее «всеядность» - способность работать с самыми неподготовленными видами сырья и полуфабрикатов - вплоть до перемешанных в любом порядке химических элементов (можно вообразить и футуристические АПС, путем ядерных процессов синтезирующих и любые нужные элементы из любых доступных). Во-вторых - повышать ее устойчивость к неблагоприятным параметрам окружающей среды. То есть, заменять объекты на работоспособные в более широких интервалах температур, давлений, состава атмосферы, гравитации, пыли, света, ионизирующих излучений и т.д. Это может обеспечиваться разными способами - как все более «дубовыми» неубиваемыми объектами, так и более биоподобными, где быстрое размножение и экономичность компенсирует потенциально быстрый выход из строя. Можно представить себе и адаптивные объекты, которые при соответствующих условиях начинают охлаждать себя или нагревать или прятаться в тенёк и так далее. В-третьих, это появление активного реагирования на разные угрожающие ситуации, средств защиты. Какие-то объекты могут начать играть роль имунной системы - патрулировать тоннели АПС, устраняя посторонние объекты, предотвращая диверсии и несанкционированные проникновения. Большой задачей может стать защита АПС от промышленного и научного шпионажа, с помощью которых недобросовестные пользователи могут захотеть получить преимущества, а также от саботажа, например, при помощи дронов. На границе между АПС и внешней средой, на портах ввода-вывода, тоже придется предусмотреть соответствующие контрольные и защитные системы.
Все это создает базис для дальнего распространения АПС. Кластер может построить «семечко», способное автономно развернуться в новый кластер и адаптированное к дальней транспортировке (вплоть до отправки на другие небесные тела), средства его доставки (от самоходной тележки до ракеты) и средства дальней связи для взаимодействия с ним.
13. Прикладная наука
Достаточно гибкую и производительную АПС можно использовать в качестве «научно-инженерного ИИ». Технические решения, которые нельзя автоматически принять путем моделирования, может помочь принять экспериментальное изготовление и тестирование различных версий объекта.
Возможно использование АПС в режиме «мгновенного изготовления» - при проектировании изделия человеком, оно с некоторой частотой постоянно автоматически производятся по «сырому» еще чертежу (подобно тому как браузеры подгружают страницы, на которые пользователь может перейти). В результате, в любой момент пользователь может видеть результаты различных (в том числе массовых, статистических) испытаний еще только проектируемого узла, а одним нажатием кнопки сразу получить некоторое количество его экземпляров «в металле». Так же могут быть реализованы другие полезные операции вроде «мгновенного копирования» (когда из заранее заготовленных скрытых системных резервные копии объекта переводятся в пользовательские). Вообще, для опытно-конструкторских работ, не связанных с сильной перегрузкой мощностей АПС наличие скрытых копий очень удобно, потому что позволяет делать отмену последних операций (хотя бы это была и операция, скажем, переплавки или краш-тест) путем скрытия последней версии и открытия предпоследней. Здесь применим весь опыт человечества, связанный с системами управления версиями объектов.
Поскольку критерии совершенства технических систем довольно объективный и типичны, АПС сама может сравнивать различные (в том числе автоматически сгенерированные) версии систем. Например, берется модель какого-нибудь клапана, модифицируется различным образом (случайно или осмысленно) и все варианты изготавливаются. Затем проводятся тесты, просто на выполнение этим клапаном своей функции - пропускать вещество в одну сторону и не пропускать в другую. Если стандартный клапан выдерживает 1000 циклов срабатывания, а какая-то мутация выдерживает 100000 циклов - то ее стоит рассмотреть как перспективную модель и снова помодифицировать. Так натурный эксперимент позволяет сравнивать версии изделия без всякого интеллекта. Кроме долговечности, конечно, можно измерять и другие параметры - КПД, пропускную способность, устойчивость к температурам и их перепадам, терпимость к неточностям изготовления, к повреждениям и т.п. Это основа, так сказать, тактической автоэволюции или прикладных НИОКР.
Группы достижений прикладных НИОКР комбинируются в технологические платформы - для того чтобы избежать хаоса от случайного введения инновационных объектов, они сначала группируются в платформы, всесторонне тестируются на совместимость в рамках этих платформ и потом уже в подходящее время АПС строит новые кластеры (или перестраивает себя) в соответствии с новой интегированной технологической платформой.
Получается, производство научной информации АПС возможно путем проведения экспериментов, то есть создания объектов, основным назначением которых является прохождение тестов и измерений для получения информации о технических решениях. После чего объекты могут утилизироваться. Так может осуществляться автоэволюция технических решений через массовые сравнительные испытания вариаций конструкции. В интересах этого язык обобщенного описания конструкций должен быть удобен для эволюционных операций (то есть генерировать потенциально ценные конструкции путем модификации параметров, скрещивания, изменчивости, отбора... ). Современные описания CAD для этого не подходят. Однако в живой природе это реализовано. Вероятно, речь идет об описании техники на основах вроде предложенных А. Тьюрингом в работе «химические основы морфогенеза». Изготовление объекта по управляющей программе соответствует прямому морфогенезу в биологии. А составление технологии (управляющей робофабрикой программы) под конструкцию можно назвать «обратным морфогенезом», вероятно не имеющим в природе аналогов. Генерация вариантов объекта для эволюционного отбора уместна путем модификации не только самой конструкции, но управляющей программы по изготовлению - с последующим закреплением удачных изменений уже в виде конструкции.
14. Фундаментальная наука
Возможно и более дерзкое использование АПС - производство объектов с целью тестов для получения информации уже не о технических решениях, а о самих законах природы. Например, строится модель некоторого явления, скажем, свободного падения. Конструируется устройство для проверки этой модели. Модель корректируется в соответствии с результатами работы устройства в различных условиях. Экспериментальные установки развиваются в сторону «воздействуем на объект всеми комбинациями всех способов (в максимально точном соответствии с теоретически заданными воздействиями) и при этом измеряем все что можно измерить с максимально возможной точностью». В обычной, человеческой науке, к наиболее выдающимся открытиям обычно приводили новые более точные средства наблюдения и измерения. Путем ранее описанной прикладной науки АПС может автоматически совершенстовать средства измерения и средства влияния на объект (чтоб открыть или уточнить закон Ома недостаточно сверхточно мерять ток и сопротивление, надо еще и сверхточно задавать напряжение (Ом и был первым кто это устроил)). Таким образом, АПС может делать и научные открытия, уточняя свою модель реальности, которая в свою очередь может быт основой автоматического поиска или синтеза новых физически эффектов для разработки новых необыкновенных машин по заданиям пользователей.
При этом необязательно измерять и изучать все подряд. Есть довольно объективные законы развития техники и науки, описанные, скажем, в работах Г. Альтшуллера, П. Кузнецова, Р. Бартини, Б. Злотина, А.Зусман и других. АПС может идти к дальним научным целям попутно достигая множества мелких.