Комп'ютери п'ятого покоління
Комп'ютери п'ятого покоління (яп. 第五 世代 コ ン ピ ュ ー タ) — відповідно до ідеології розвитку комп'ютерних технологій, після четвертого покоління, побудованого на надвеликих інтегральних схемах, очікувалося створення наступного покоління, орієнтованого на розподілені обчислення. Одночасно вважалося, що п'яте покоління стане базою для створення пристроїв, здатних до імітації мислення.
Японська широкомасштабна урядова програма з розвитку комп'ютерної індустрії та штучного інтелекту була зроблена в 1980-і роки. Метою програми було створення «епохального комп'ютера» з продуктивністю суперкомп'ютера і потужними функціями штучного інтелекту[1]. Початок розробок — 1982, кінець розробок — 1992 року, вартість розробок — 57 млрд ¥ (близько 500 млн $). Програма закінчилася провалом, тому що не спиралася на чіткі наукові методики. Більш того, навіть її проміжні цілі виявилися недосяжними в технологічному плані.
На даний момент термін «п'яте покоління» є невизначеним і застосовується в багатьох сенсах, наприклад, в описах систем хмарних обчислень.
Відповідно до загальноприйнятої методики оцінки розвитку обчислювальної техніки, першим поколінням вважалися лампові комп'ютери, другим — транзисторні, третім — комп'ютери на інтегральних схемах, а четвертим — з використанням мікропроцесорів. У той час як попередні покоління вдосконалювалися завдяки збільшенню кількості елементів на одиницю площі (мініатюризації), комп'ютери п'ятого покоління повинні були стати наступним кроком, і для досягнення надпродуктивності, — реалізувати взаємодію необмеженого набору мікропроцесорів.
На момент, коли розпочалася реалізація проєкту, Японія не була провідним розробником і постачальником рішень в галузі комп'ютерних технологій, хоча вже досягла значного успіху в реалізації широкого спектра засобів обчислювальної техніки, в тому числі й на основі власних унікальних розробок. Міністерство міжнародної торгівлі та промисловості Японії (MITI) вирішило форсувати прорив Японії в лідери галузі, і з кінця 70-х років ініціювало вироблення прогнозів про майбутнє комп'ютерних технологій. Ця робота була доручена Японському центру розвитку обробки інформації (JIPDEC), який повинен був вказати кілька найперспективніших напрямків для майбутніх розробок, а в 1979 був запропонований трирічний контракт для глибших досліджень, з залученням промислових та академічних організацій. На той час вони почали використовувати термін «комп'ютери п'ятого покоління», який вже давно й широко обговорювала міжнародна експертна спільнота.
Використання цього терміна мало підкреслити, що Японія планує здійснити новий якісний стрибок у розвитку обчислювальної техніки.
Головні напрямки досліджень були такі:
- Технології логічних висновків (inference) для обробки знань.
- Технології для роботи з надвеликими базами даних і базами знань.
- Робочі станції з високою продуктивністю.
- Комп'ютерні технології з розподіленими функціями.
- Суперкомп'ютери для наукових обчислень.
Йшлося про комп'ютер з паралельними процесорами, що працюють із даними, які зберігаються у великій базі даних, а не у файловій системі. При цьому, доступ до даних повинен був здійснюватися за допомогою мови логічного програмування. Передбачалося, що прототип машини буде мати продуктивність між 100 млн і 1 млрд LIPS, де LIPS - це логічний висновок на секунду. На той час типові робочі станції були здатні на продуктивність близько 100 тисяч LIPS.
Хід розробок уявлявся так, що комп'ютерний інтелект, набираючи потужність, починає змінювати сам себе. Метою було створити таке комп'ютерне середовище, яке саме почне виробляти себе, причому принципи, на яких буде побудований остаточний комп'ютер, були заздалегідь невідомі, ці принципи треба виробити в процесі експлуатації початкових комп'ютерів.
Далі, для різкого збільшення продуктивності, пропонувалося поступово замінювати програмні рішення апаратними, тому не робилося різкого поділу між завданнями для програмної й апаратної бази.
Очікувалося домогтися істотного прориву в галузі вирішення прикладних завдань штучного інтелекту. Зокрема, повинні були бути вирішені такі завдання:
- друкарська машинка, що працює під диктування, яка відразу усунула б проблему введення ієрогліфічного тексту, яка в той час стояла в Японії дуже гостро;
- автоматичний портативний перекладач з мови на мову (зрозуміло, безпосередньо з голосу), який відразу б усунув мовний бар'єр японських підприємців на міжнародній арені;
- автоматичне реферування статей, пошук сенсу і категоризація;
- інші завдання розпізнавання образів - пошук характерних ознак, дешифрування, аналіз дефектів і т. п.
Від суперкомп'ютерів очікувалося ефективне вирішення завдань масивного моделювання, в першу чергу в аеро- і гідродинаміки.
Цю програму передбачалося реалізувати за 11 років, три роки для початкових досліджень і розробок, чотири роки для побудови окремих підсистем і останні чотири роки для завершення всієї прототипної системи. У 1982 уряд Японії вирішив додатково підтримати проєкт і заснував Інститут комп'ютерної технології нового покоління (ICOT), об'єднавши для цього інвестиції різних японських комп'ютерних фірм.
Віра в майбутнє паралельних обчислень була в той час настільки глибокою, що проєкт «комп'ютерів п'ятого покоління» був прийнятий в комп'ютерному світі дуже серйозно. Після того, як Японія в 1970-ті роки зайняла передові позиції в побутовій техніці та в 1980-ті почала виходити в лідери в автомобільній промисловості, японці набули репутацію непереможних. Проєкти в області паралельної обробки даних відразу ж почали розробляти в США — в Корпорації по мікроелектроніці та комп'ютерної технології (MCC), у Великій Британії — Олві (Alvey), і в Європі в межах Європейської стратегічної програми досліджень в області інформаційних технологій (ESPRIT).[2]
У СРСР також почалися дослідження паралельних архітектур програмування, для цього в 1985 році був створений ВНТК СТАРТ, якому за три роки вдалося створити процесор «Кронос» і прототипний мультипроцесорний комп'ютер МАРС.
На відміну від японців, задачі інтеграції величезної кількості процесорів і реалізації розподілених баз знань на базі мов типу Пролог не ставились, мова йшла про архітектуру, яка підтримуватиме мову високого рівня типу Модула-2 і паралельні обчислення. Тому проєкт не можна назвати п'ятим поколінням в японській термінології.
В 1988 проєкт був успішно завершений, адже не був потрібний і не отримав продовження по причині початку перебудови та невигідної для російської комп'ютерної індустрії ринкової ситуації. «Успіх» полягав в частковій реалізації прототипної архітектури (в основному, апаратних засобів), однак подібного японському «великого стрибка» в області програмування, баз даних і штучного інтелекту в межах цього проєкту навіть не планувалось.
Наступні десять років проєкт «Комп'ютери п'ятого покоління» став відчувати ряд труднощів різного типу.
Перша проблема полягала в тому, що мова Пролог, обрана за основу проєкту, не підтримувала паралельних обчислень, і довелося розробляти власну мову, здатну працювати в мультипроцесорному середовищі. Це виявилося важким - було запропоновано кілька мов, кожна з яких мала власні обмеження.[3]
Інша проблема виникла з продуктивністю процесорів. Виявилося, що технології 80-х років швидко перескочили ті бар'єри, які перед початком проєкту вважалися «очевидними» і непереборними. А запаралелювання багатьох процесорів не викликало очікуваного різкого стрибка продуктивності (див. Закон Амдала). Вийшло так, що робочі станції, створені в рамках проєкту, успішно досягли та навіть перевершили необхідні потужності, але до цього часу з'явилися комерційні комп'ютери, які були ще потужнішими.
Крім цього, проєкт «Комп'ютери п'ятого покоління» виявився помилковим з точки зору технології виробництва програмного забезпечення. Ще до початку розробки цього проєкту фірма Xerox розробила експериментальний графічний інтерфейс (GUI). А пізніше з'явився Інтернет, і виникла нова концепція розподілу і зберігання даних, при цьому пошукові машини привели до нової якості зберігання і доступу різнорідної інформації. Надії на розвиток логічного програмування, які були в проєкті «Комп'ютери п'ятого покоління», виявилися ілюзорними, переважно через обмеженість ресурсів та ненадійність технологій.
Ідея саморозвитку системи, по якій система сама повинна змінювати свої внутрішні правила і параметри, виявилася непродуктивною - система, переходячи через певну точку, скочувалася в стан втрати надійності та втрати цілісності, різко «тупіла» і ставала неадекватною.
Ідея широкомасштабної заміни програмних засобів апаратними виявилася невчасною, надалі розвиток комп'ютерної індустрії пішов протилежним шляхом, удосконалюючи програмні засоби при більш простих, але стандартних апаратних. Проєкт був обмежений категоріями мислення 1970-х років і не зміг провести чіткого розмежування функцій програмної й апаратної частини комп'ютерів.
З будь-якої точки зору проєкт можна вважати абсолютним провалом. За десять років на розробки було витрачено понад 50 млрд ¥, і програма завершилася, не досягнувши мети. Робочі станції так і не вийшли на ринок, тому що однопроцесорні системи інших фірм перевершували їх за параметрами, програмні системи так і не запрацювали, поява Інтернету зробила всю ідею проєкту безнадійно застарілою.
Невдачі проєкту пояснюються поєднанням цілого ряду об'єктивних і суб'єктивних факторів[4]:
- помилкова оцінка тенденцій розвитку комп'ютерів - перспективи розвитку апаратних засобів були катастрофічно недооцінені, а перспективи штучного інтелекту були волюнтаристськи переоцінені, багато із запланованих завдань штучного інтелекту так і не знайшли ефективного комерційного рішення до сих пір, в той час як потужність комп'ютерів незрівнянно зросла;
- помилкова стратегія, пов'язана з поділом завдань, що вирішуються програмно й апаратно, що проявилося в прагненні до поступової заміни програмних засобів апаратними, що призвело до зайвого ускладнення апаратних засобів;
- відсутність досвіду і глибинного розуміння специфіки завдань штучного інтелекту з надією на вдачу, на самоорганізацію системи при збільшенні її продуктивності, а також внаслідок підпорядкування цієї системи якимось базовим принципам, які так і не були сформульовані;
- труднощі, які виявились у міру дослідження реального прискорення, яке отримує система логічного програмування при запаралелюванні процесорів. Проблема полягає в тому, що в багатопроцесорній системі, побудованій на основі Uniform Memory Access[en], різко збільшуються витрати на комунікацію між окремими процесорами, які практично нівелюють вигоду від паралелізації операцій, тому з якогось моменту додавання нових процесорів майже не покращує продуктивності системи;
- помилковий вибір мов типу Lisp і Пролог для створення бази знань і маніпулювання даними. У 1980-ті роки ці системи програмування користувалися популярністю для САПР і експертних систем, однак експлуатація показала, що додатки виявляються малонадійними і їх погано налагоджувати в порівнянні з системами, розробленими звичайними технологіями, чому від цих ідей довелося відмовитися. Крім того, труднощі викликала реалізація «паралельного Прологу», яка так і не була успішно вирішена[3][5];
- низький загальний рівень технології програмування того часу і діалогових засобів (що яскраво виявилося в 1990-ті роки);
- надмірна рекламна кампанія проєкту «національного престижу» в поєднанні з волюнтаризмом і некомпетентністю вищих посадових осіб, що не дозволяє адекватно оцінювати стан проєкту в процесі його реалізації.
- ↑ Kazuhiro Fuchi, Revisiting Original Philosophy of Fifth Generation Computer Systems Project, FGCS 1984, pp. 1-2
- ↑ por Peter Bishop, Fifth Generation Computers, New York, 1986, Tohru Moto-Oka, Masaru Kitsuregawa, The Fith Generation Computer: The Japanese Challenge, New York, 1985.
- ↑ а б Carl Hewitt Middle History of Logic Programming: Resolution, Planner, Prolog and the Japanese Fifth Generation Project ArXiv 2009.
- ↑ Can Fifth-Generation Computer Systems Solve the Gulf of Mexico Oil Spill Crisis?
- ↑ Avoiding another AI Winter [Архівовано 12 Лютого 2012 у Wayback Machine.], James Hendler, IEEE Intelligent Systems (March/April 2008 (Vol. 23, No. 2) pp. 2-4
- (1982) Fifth Generation Computer Systems — by T. Moto-Oka (Author) (ISBN 0444864407)
- (1984) ЭВМ пятого поколения: Концепции, проблемы, перспективы. — Под редакцией Т. Мото-ока. Перевод с английского О. М. Вейнерова. Под редакцией А. А. Рывкина, В. М. Савинкова. Предисловие Е. П. Велихова. — Москва: Издательство «Финансы и статистика»
- What is FGCS Technologies? – The main page of the project. Includes pictures of prototype machines.
- Fifth Generation Computing Conference Report [Архівовано 6 квітня 2012 у Wayback Machine.]
- The fifth generation: Japan's computer challenge to the world [Архівовано 11 Листопада 2016 у Wayback Machine.]- 1984 article from Creative Computing
- ICOT home page [Архівовано 25 Вересня 2006 у Wayback Machine.] (now AITRG)
- KL1 to C compiler homepage [Архівовано 17 Січня 2010 у Wayback Machine.]
- Conference proceedings on FGCS [Архівовано 3 Липня 2014 у Wayback Machine.]
- Процессор КРОНОС и проект [Архівовано 26 Лютого 2018 у Wayback Machine.] МАРС
- Edward A.Feigenbaum and Pamela McCorduck, The Fifth Generation: Aritficial Intelligence and Japan’s Computer Challenge to the World, Michael Joseph, 1983. ISBN 0-7181-2401-4
- Ehud Shapiro. The family of concurrent logic programming languages ACM Computing Surveys. September 1989.
- Carl Hewitt and Gul Agha. Guarded Horn clause languages: are they deductive and Logical? International Conference on Fifth Generation Computer Systems, Ohmsha 1988. Tokyo.
- Shunichi Uchida and Kazuhiro Fuchi Proceedings of the FGCS Project Evaluation Workshop Institute for New Generation Computer Technology (ICOT). 1992.