Импортозамещение, которое мы потеряли ч.2: АСУ ТП по телеграфному кабелю, нейронные сети и РСУБД в 60-х

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

Лев Дашевский, Екатерина Шкабара, 1961 год.

Пилотная статья понравилась комьюнити, а значит продолжаем рассказывать о ранних советских разработках, предвосхитивших современные достижения отрасли, а порой, без преувеличения опередивших своё время. Наш рассказ будет не полным без упоминания проектов АН УССР, наиболее важная часть которых была реализована в процессе разработки и использования ЭВМ «Киев». Под катом речь пойдет о проектах управления технологическими процессами на расстоянии 500 км, разработке и применении прообраза современных реляционных систем управления базами данных, а также первых советских опытах по машинному обучению и созданию искусственного интеллекта в 1950-х — 1960-х.

Советская ЭВМ в представлении Midjourney

Советская ЭВМ в представлении Midjourney

Начало

Всё началось с того, что в 1945-м году АН УССР для замещения вакантных должностей пригласила 15 видных советских ученых из других регионов Союза. Одним из приглашенных был Сергей Лебедев. Он переехал в Киев и в 1946 году возглавил Институт энергетики АН УССР, а после его разделения стал директором института электротехники. Там он развернул кипучую деятельность по созданию компьютеров и открыл узкоспециализированную лабораторию моделирования и вычислительной техники.

Сергей Лебедев за работой

Сергей Лебедев за работой

Уже в 1948-м на базе этой лаборатории Лебедев начинает создание первого в СССР и континентальной Европе компьютера — МЭМС (малая электронная счетная машина) и к 1950-му успешно завершает проект. После ввода МЭМС в эксплуатацию ученый покидает столицу УССР, успев перед отъездом закончить предварительное ТЗ и оформить основные идеи для специализированной ЭВМ для решения алгебраических уравнений — СЭМС, а также заложить основы концепции первого советского универсального компьютера — ЭВМ «Киев».

«Киев»

После отъезда Лебедева, в 1954 году, коллектив «Лебедевской» лаборатории приступает к созданию ЭВМ «Киев». Команду разработчиков возглавляет академик Борис Гнеденко с учениками Лебедева: Львом Дашевским и Екатериной Ющенко. Эти ученые начали разработку концепции и подготовку проектной документации ещё в 1953-м году. Параллельно издаются книги и статьи о том, как работать с вычислительной техникой, в частности, сборники «Вопросы вычислительной математики и техники». Обобщение опыта МЭМС не только поможет создавать «Киев», но и на десятилетие станет азбукой программирования для новых советских специалистов.

Академик Борис Гнеденко на лекции

Академик Борис Гнеденко на лекции

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

Машинный зал, ЭВМ

Машинный зал, ЭВМ «Киев»

Появилась своеобразная конкуренция советских разработчиков. К моменту создания «Киева» уехавший в Москву Лебедев уже создал БЭМС (большая электронная счетная машина), а конкурирующей командой из Министерства машиностроения и приборостроения СССР вводилась в эксплуатацию ЭВМ «Стрела», которая впоследствии обеспечивала расчёты для советского ЦУПа.

ЭВМ

ЭВМ «Киев», 1959 год

В 1958 г., в бывшую «лебедевскую» лабораторию, преобразованную в Вычислительный центр АН УССР, прибывает В.М. Глушков.  Он завершает создание «Киева» и за год вводит компьютер в эксплуатацию.

Екатерина Ющенко и Виктор Глушков

Екатерина Ющенко и Виктор Глушков

Для 1959 года машина, задуманная Лебедевым, созданная коллективом  Гнеденко  и завершенная Глушковым, впечатляла своими возможностями. Так, тёплый ламповый «Киев» обладал следующими характеристиками:

  • ОЗУ ёмкостью 1024 кода (512 бит — 64 байта) на ферритовых сердечниках с прямоугольной петлёй гистерезиса;  

  • Время обращения к ОЗУ — 10 мксек;

  • ПЗУ ёмкостью 512 кодов (256 бит — 32 байта) на трансформаторах с ферритовыми сердечниками;  

  • время обращения к ПЗУ — 4 мксек;

  • внешнее ЗУ — на магнитных барабанах емкостью 9000 кодов;

  • среднее время ожидания выборки — 25 мсек;

  • в системе использовано 2300 миниатюрных (пальчиковых) электронных вакуумных ламп

  • 10 000 германиевых диодов;

  • 5000 импульсных трансформаторов на сердечниках типа «оксифер 1000»;

  • Скорость работы от 10 до 15 тыс. операций в секунду;

  • Потребляемая мощность 25 000 Вт.

    Миниатюрный пентод в сравнении с батарейкой типоразмера

    Миниатюрный пентод в сравнении с батарейкой типоразмера «Крона»

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

Смехотворные, по сегодняшним меркам, ресурсы новой системы для того времени казались сложно достижимыми. Далеко не все системы, разрабатываемые в то время в Европе, обладали сравнимой производительностью. При этом «Киев» концептуально отставал от наиболее передовых систем, созданных в США. За океаном в то время уже появился прорывной транзисторный RCA 50 — запущен в 1958 году. За океаном стали отказываться от вакуумных ламп, навесного монтажа, применили печатные платы, уменьшили массу и энергопотребление. 

Тонны стали и управление на расстоянии

 «Киев» стал одной из первых систем удаленного доступа к периферийным промышленным агрегатам. , первая компьютерная сеть в мире была создана в США — она имела военное назначение, сеть системы ПВО SAGE (завершена в 1958 году). Создатели «Киева», напротив, решили остановиться на гражданских задачах. С 1960-го года с использованием этого компьютера осуществлялось управление технологическими процессами в конвекторном цехе Днепродзержинского металлургического комбината, крупнейшего в Союзе металлургического предприятия. 

Днепродзержинский металургический завод, 1941 год

Днепродзержинский металургический завод, 1941 год

асстояние от машинного зала до цеха превышала 500 км, а передача данных велась по телеграфной линии. Этот эксперимент стал первым опытом применение АСУ ТП в СССР и, вероятно, первым опытом дистанционной автоматизации техпроцессов при помощи компьютера в мире. Рекомендации, сгенерированные ЭВМ «Киев», позволили повысить эффективность металлургических агрегатов. Так автоматизация выбора времени «повалки» бессемеровского конвертора позволила сэкономить 2,7% времени цикла выплавки стали. На практике экономия этих 2,7% означала дополнительные 100 тонн стали в год. Позже, второй версией «Киева» оснастили центра ядерных исследований в Дубне.

Центр ядерных исследований в Дубне, 1960-е годы

Центр ядерных исследований в Дубне, 1960-е годы

РСУБД начала 60-х

В 1961-м году на ЭВМ «Киев» реализовали первую советскую систему управления базами данных реляционного типа — «Автодиректор». Система позволяла сохранять данные в виде таблиц, которые были записаны на электронный магнитный носитель. Лебедев С.А., на правах концептуального «отца» «Киева», на встрече с Н.С. Хрущёвым отмечал:

«В таком виде информацию легко структурировать, находить и обрабатывать. К тому же табличный вид привычен для работников Госплана, им так будет легче работать с данными, получаемыми от ЭВМ».

Таким образом ЭВМ «Киев» стала первым опытом советских ученых в использовании вычислительной техники в промышленности.

 Что интересно — это как раз тот случай, когда советским разработчикам удалось «догнать и перегнать». Первой разработкой РСУБД в США считается проект IBM, названный System R, он стартовал лишь в 1974-м и создавался на основе концепции сформулированной в 1969—1970 годах Эдгаром Коддом. «Автодиректор» начал полноценно использоваться за 10 лет до этого момента.

Эдгар Кодд

Эдгар Кодд

Асинхронная модульная архитектура 

Создатели «Киева» считали, что структура управляющей машины должна обеспечить возможность быстрой модернизации, присоединения различных модулей, узлов, устройств ввода. Конструкция и архитектура ЭВМ «Киев» допускали использование каждого из автономных устройств (1000 стандартных блоков  семи типов и 200 нестандартных пяти типов) вне связи со всем компьютером в целом, что позволяло непрерывно модернизировать и отлаживать  отдельные модули.

Учитывая аритмичность поступления данных, ещё на этапе проектирования в «Киеве» планировали реализовать асинхронную архитектуру. Хотели обеспечить переменную продолжительность временных тактов, при которой каждый узел начинает работу после окончания работы предыдущих. Выбранный путь позволил это реализовать. 

Адресный язык программирования 

Для увеличения скорости программирования, реализации потенциала «Киева» в 1954 году Екатерина Логвиновна Ющенко и Владимир Семенович Королюк создали новый язык программирования высокого уровня, который был назван «Адресным».

Екатерина Ющенко и Владимир Семенович Королюк, фото Skillbox

Екатерина Ющенко и Владимир Семенович Королюк, фото Skillbox

Впоследствии, адресный язык стал одной из основ  теоретического программирования,   первым языком в котором были использованы указатели. Работа последних была описана советским математиком Андреем Колмогоровым.

Андрей Колмогоров на лекции

Андрей Колмогоров на лекции

Адресный язык опередил такие языки, как Fortran, Algol, COBOL, а также вдохновил разработчиков ассемблера. Сегодня ряд конструкций Адресного языка — важная часть архитектуры таких языков как C и C++. К несчастью, в связи с неизвестностью советских работ за пределами СССР премию IEEE за указатели получили не Ющенко с Королюком и не Колмогоров, а Гарольд Лоусон из IBM, создатель Programming Language I.

В дальнейшем были созданы трансляторы, облегчившие процесс программирования на «Киеве» и ряде других машин того периода. Подробно об адресном языке программирования можно почитать на Хабре в статье  @Elena_sm «Советская школа: адресный язык программирования». 

Советские нейронные сети, а также первый сканер и первый монитор

«Киев» стал первым компьютером в СССР, где приступили к ранним опытам по созданию самообучающегося ИИ, т.е. того, что сегодня мы называем нейросетями. 

Центральную роль в этих исследованиях играли несправедливо забытые сегодня советские коннекционисты Михаил Шлезингер и Алексей Ивахненко. Последний, благодаря своим публикациям, считается одним из мировых отцов искусственного интеллекта, однако в России широко не известен.

Михаил Шлезингер, 2021 год, фото: https://un-sci.com/

Михаил Шлезингер, 2021 год, фото: https://un-sci.com/

С 1961-го года на «Киеве» проводились первые в СССР исследования по по работе с нейросетями на универсальной ЭВМ. С 1960-го этими экспериментами занимался Шлезингер. После того как Ивахненко, в 1963 году, присоединился к команде Глушкова, область исследования расширилась. 

На «Киеве» провели целую  серию уникальных того времени  время опытов по искусственному интеллекту:

  • машинному распознаванию геометрических фигур;

  • моделирование распознавания печатных и письменных букв;

  • автоматическому синтезу функциональных схем;

  • отслеживанию движения объектов по серии изображений, и кинограмме;

  • моделированию поведения коллектива автоматов в процессе эволюции;

  • автоматическому синтезу функциональных схем компьютеров.

При этом подходящей периферии тогда ещё не существовало, например сканеров. Её реализовали в рамках проекта. «Киев» стал первым в Европе компьютером с цифровой системой обработки изображений и интеллектуального моделирования. К нему подключали два дополнительных устройства: устройство для ввода изображений с бумажного носителя, фотопленки и фотопластин (аналог современного сканера) и устройство вывода изображений из системы —  монитор на ЭЛТ (достаточно редкий девайс для того времени).

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

Академики Алексей Ивахненко, Николай Амосов, Виктор Глушков. 70-е годы ХХ века, фото: icfcst

Академики Алексей Ивахненко, Николай Амосов, Виктор Глушков. 70-е годы ХХ века, фото: icfcst

Важным результатом Ивахненко и коллег  стало создание  и развитие «Метода группового учета аргументов» (МГУА), который заслуженно считается одним из первых в истории алгоритмов глубокого обучения. Также труды Ивахненко и Шлезингера на ЭВМ «Киев» в дальнейшем привели к созданию и обучению восьмислойной нейронной сети. Сеть использовала искусственный нейрон, основанный на интерполяционном полиноме Колмогорова — Габора. Эти исследования в 1970-х серьёзно опередили своё время, т.к. большинство коннекционистов на Западе довольствовались в то время одним-двумя слоями. Подробно о советских исследованиях в области ИИ на Хабре писала @Christina29.  

Сухой остаток

ЭВМ «Киев» — один из наиболее значимых, эпохальных проектов советской кибернетики. Для описания всех проектов и экспериментов проведённых на этом компьютере не хватит и 10 статей, мы постарались выбрать наиболее интересные сегодня. Не смотря на то, что компьютер создавался как прототип серийного устройства, вероятно для будущей ОГАС, произвели всего две машины. 

Бюрократические дрязги, о которых мы писали в прошлом материале, сделали невозможным быстрое создание цифрового государства в СССР и «Киев» неминуемо устарел, не смотря на достаточно большой модернизационный потенциал. Даже учитывая ограниченное применение, появление «Киева» показало, что в СССР взяли курс на создание универсальных компьютеров и способны вести наукоемкие разработки, превосходящие по некоторым функциональным возможностям зарубежные аналоги. Думаю не ошибусь, если назову эту разработку одним из самых передовых программно-аппаратных комплексов своего времени.

© Habrahabr.ru