Параллельный суперкомпьютер МАРС в СССР
В СССР также начались исследования параллельных архитектур программирования, для этого в 1985 году было создано ВНТК СТАРТ, которому за три года удалось создать процессор «Кронос» и прототипный мультипроцессорный компьютер МАРС.
В отличие от японцев, задача интеграции огромного числа процессоров и реализация распределённых баз знаний на базе языков типа Пролог не ставилась, речь шла об архитектуре, поддерживающей язык высокого уровня типаМодула-2 и параллельные вычисления. Поэтому проект нельзя назвать пятым поколением в японской терминологии.
В 1988 проект был успешно завершён, но не был востребован и не получил продолжения по причине перестройки и невыгодной для отечественной компьютерной индустрии рыночной ситуации. «Успех» заключался в частичной реализации прототипной архитектуры (в основном, аппаратных средств), однако подобный японскому «большой скачок» в области программирования, баз данных и искусственного интеллекта в рамках этого проекта даже не планировался.
Трудности реализации
Последующие десять лет проект «компьютеров пятого поколения» стал испытывать ряд трудностей разного типа.
Первая проблема заключалась в том, что язык Пролог, выбранный за основу проекта, не поддерживал параллельных вычислений, и пришлось разрабатывать собственный язык, способный работать в мультипроцессорной среде. Это оказалось трудным — было предложено несколько языков, каждый из которых обладал собственными ограничениями.
Другая проблема возникла с производительностью процессоров. Оказалось, что технологии 80-х годов быстро перескочили те барьеры, которые перед началом проекта считались «очевидными» и непреодолимыми. А запараллеливание многих процессоров не вызывало ожидаемого резкого скачка производительности. Получилось так, что рабочие станции, созданные в рамках проекта, успешно достигли и даже превзошли требуемые мощности, но к этому времени появились коммерческие компьютеры, которые были ещё мощнее.
Помимо этого, проект «Компьютеры пятого поколения» оказался ошибочным с точки зрения технологии производства программного обеспечения. Ещё до начала разработки этого проекта фирма Xerox разработала экспериментальный графический интерфейс (GUI). А позднее появился Интернет, и возникла новая концепция распределения и хранения данных, при этом поисковые машины привели к новому качеству хранения и доступа разнородной информации. Надежды на развитие логического программирования, питаемые в проекте «Компьютеры пятого поколения» оказались иллюзорными, преимущественно по причине ограниченности ресурсов и ненадёжности технологий.
Идея саморазвития системы, по которой система сама должна менять свои внутренние правила и параметры, оказалась непродуктивной — система, переходя через определённую точку, скатывалась в состояние потери надёжности и утраты цельности, резко «глупела» и становилась неадекватной.
Идея широкомасштабной замены программных средств аппаратными оказалась в корне неверной, в дальнейшем развитие компьютерной индустрии пошло по противоположному пути, совершенствуя программные средства при более простых, но стандартных аппаратных. Проект был ограничен категориями мышления 1970-х годов и не смог провести чёткого разграничения функций программной и аппаратной части компьютеров.
Оценка проекта
С любых точек зрения проект можно считать абсолютным провалом. За десять лет на разработки было истрачено более 50 млрд ¥, и программа завершилась, не достигнув цели. Рабочие станции так и не вышли на рынок, потому что однопроцессорные системы других фирм превосходили их по параметрам, программные системы так и не заработали, появление Интернета сделало все идеи проекта безнадёжно устаревшими.
Неудачи проекта объясняются сочетанием целого ряда объективных и субъективных факторов:
· ошибочная оценка тенденций развития компьютеров — перспективы развития аппаратных средств были катастрофически недооценены, а перспективы искусственного интеллекта были волюнтаристски переоценены, многие из планируемых задач искусственного интеллекта так и не нашли эффективного коммерческого решения до сих пор, в то время как мощность компьютеров несоизмеримо выросла;
· ошибочная стратегия, связанная с разделением задач, решаемых программно и аппаратно, проявившееся в стремлении к постепенной замене программных средств аппаратными, что привело к излишнему усложнению аппаратных средств;
· отсутствие опыта и глубинного понимания специфики задач искусственного интеллекта с надеждой на то, что авось увеличение производительности и неведомые базовые принципы системы приведут к её самоорганизации;
· трудности, выявившиеся по мере исследования реального ускорения, которое получает система логического программирования при запараллеливании процессоров. Проблема состоит в том, что в многопроцессорной системе резко увеличиваются затраты на коммуникацию между отдельными процессорами, которые практически нивелируют выгоду от параллелизации операций, отчего с какого-то момента добавление новых процессоров почти не улучшает производительности системы;
· ошибочный выбор языков типа Лисп и Пролог для создания базы знаний и манипулирования данными. В 1980-е годы эти системы программирования пользовались популярностью для САПР и экспертных систем, однако эксплуатация показала, что приложения оказываются малонадёжными и плохо отлаживаемыми по сравнению с системами, разработанными обычными технологиями, отчего от этих идей пришлось отказаться. Кроме того, трудность вызвала реализация «параллельного Пролога», которая так и не была успешно решена;
· низкий общий уровень технологии программирования того времени и диалоговых средств (что ярко выявилось в 1990-е годы);
· чрезмерная рекламная кампания проекта «национального престижа» в сочетании с волюнтаризмом и некомпетентностью высших должностных лиц, не позволяющая адекватно оценивать состояние проекта в процессе его реализации.