Komputer piątej generacji - Fifth generation computer

W piątej generacji Computer Systems ( FGCS ) była inicjatywa japońskiego Ministerstwa Handlu Międzynarodowego i Przemysłu (MITI), rozpoczętej w 1982 roku, aby stworzyć komputerów za pomocą obliczeń masowo równoległych i logiki programowania . Miał to być wynik rządowego/przemysłowego projektu badawczego w Japonii w latach 80-tych. Jego celem było stworzenie „epokowego komputera” o wydajności zbliżonej do superkomputera oraz stworzenie platformy dla przyszłych prac nad sztuczną inteligencją . Był też niepowiązany rosyjski projekt, nazwany również komputerem piątej generacji (patrz Kronos (komputer) ).

Ehud Shapiro w swoim artykule „Trip Report” (który skupiał się na projekcie FGCS na programowaniu logiki współbieżnej jako podstawie oprogramowania dla projektu), uchwycił uzasadnienie i motywacje kierujące tym projektem:

„W ramach wysiłków Japonii, aby stać się liderem w branży komputerowej, Instytut Technologii Komputerowych Nowej Generacji uruchomił rewolucyjny dziesięcioletni plan rozwoju dużych systemów komputerowych, które będą miały zastosowanie w systemach przetwarzania informacji. komputery będą budowane wokół koncepcji programowania logicznego. Aby odeprzeć zarzut, że Japonia wykorzystuje wiedzę z zagranicy bez wnoszenia własnego wkładu, ten projekt będzie stymulować oryginalne badania i udostępni ich wyniki międzynarodowej społeczności badawczej.

Termin „piąta generacja” miał na celu przekazanie systemu jako zaawansowanego. W historii sprzętu komputerowego komputery wykorzystujące lampy próżniowe nazywano pierwszą generacją; tranzystory i diody , drugi; układy scalone , trzeci; a korzystających z mikroprocesorów , czwarta. Podczas gdy poprzednie generacje komputerów koncentrowały się na zwiększeniu liczby elementów logicznych w pojedynczym procesorze, piąta generacja, jak powszechnie uważano w tamtych czasach, zamiast tego skupiła się na ogromnej liczbie procesorów w celu zwiększenia wydajności.

Projekt polegał na stworzeniu komputera przez okres dziesięciu lat, po czym uznano go za zakończony i rozpoczęto inwestycje w nowy projekt „szóstej generacji”. Opinie na temat jego wyniku są podzielone: ​​albo była to porażka, albo wyprzedzała swój czas.

Informacja

Pod koniec lat 1965 był jednym z najczęściej używanych do wczesnych lat siedemdziesiątych, dużo mówiło się o „generacjach” sprzętu komputerowego – zwykle o „trzech pokoleniach”.

  1. Pierwsza generacja: termoelektryczne lampy próżniowe. Połowa lat 40. IBM był pionierem w rozmieszczeniu lamp próżniowych w modułach wtykowych. IBM 650 był komputer pierwszej generacji.
  2. Druga generacja: Tranzystory. 1956. Rozpoczyna się era miniaturyzacji. Tranzystory są znacznie mniejsze niż lampy próżniowe, pobierają mniej energii i generują mniej ciepła. Tranzystory dyskretne są przylutowane do płytek drukowanych z połączeniami wykonanymi za pomocą ekranowanych wzorców przewodzących na odwrocie. IBM 7090 był komputer drugiej generacji.
  3. Trzecia generacja: układy scalone (chipy krzemowe zawierające wiele tranzystorów). 1964. Pionierskim przykładem jest moduł ACPX zastosowany w IBM 360/91, który, układając warstwy krzemu na podłożu ceramicznym, mieści ponad 20 tranzystorów na chip; chipy mogą być pakowane razem na płytce drukowanej, aby osiągnąć niespotykaną gęstość logiki. IBM 360/91 był komputerem hybrydowym drugiej i trzeciej generacji.

Pominięty w tej taksonomii jest komputer „zerowej generacji” oparty na metalowych przekładniach (takich jak IBM 407 ) lub przekaźnikach mechanicznych (takich jak Mark I) oraz komputery post-trzeciej generacji oparte na Very Large Scale Integrated ( VLSI ) obwody.

Istniał również równoległy zestaw generacji oprogramowania:

  1. Pierwsza generacja : język maszynowy .
  2. Druga generacja : języki programowania niskiego poziomu , takich jak asemblerze .
  3. Trzecia generacja : ustrukturyzowane języki programowania wysokiego poziomu, takie jak C , COBOL i FORTRAN .
  4. Czwarta generacja : „Nieproceduralne” języki programowania wysokiego poziomu (takie jak języki obiektowe)

W ciągu tych wielu pokoleń, aż do lat 70., Japonia budowała komputery podążając za liderami w USA i Wielkiej Brytanii. W połowie lat 70. Ministerstwo Handlu Międzynarodowego i Przemysłu przestało podążać za zachodnimi tropami i zaczęło patrzeć w przyszłość komputerów na małą skalę. Poprosili Japońskie Centrum Rozwoju Przetwarzania Informacji (JIPDEC) o wskazanie kilku przyszłych kierunków, aw 1979 r. zaoferowali trzyletni kontrakt na przeprowadzenie bardziej dogłębnych badań wraz z przemysłem i środowiskiem akademickim. W tym okresie zaczęto używać terminu „komputer piątej generacji”.

Przed latami 70. wytyczne MITI odniosły sukcesy, takie jak ulepszony przemysł stalowy, stworzenie supertankowca naftowego , przemysł motoryzacyjny, elektronika użytkowa i pamięć komputerowa. MITI zdecydował, że przyszłością będzie technologia informacyjna . Jednak język japoński , zwłaszcza w formie pisanej, przedstawiał i nadal przedstawia przeszkody dla komputerów. W wyniku tych przeszkód MITI zorganizowało konferencję, aby zwrócić się o pomoc do ekspertów.

Główne pola do badań z tego początkowego projektu to:

  • Wnioskowanie komputerowe technologie przetwarzania wiedzy
  • Technologie komputerowe do przetwarzania wielkoskalowych baz danych i baz wiedzy
  • Wysokowydajne stacje robocze
  • Rozproszone funkcjonalne technologie komputerowe
  • Superkomputery do obliczeń naukowych

W ramach projektu wyobrażano sobie „epokowy komputer” o wydajności zbliżonej do superkomputera, wykorzystujący masowo równoległe przetwarzanie/przetwarzanie. Celem było zbudowanie równoległych komputerów do zastosowań sztucznej inteligencji przy użyciu współbieżnego programowania logicznego. Projekt FGCS i jego rozległe odkrycia przyczyniły się w znacznym stopniu do rozwoju dziedziny programowania w logice współbieżnej.

Celem wyznaczonym przez projekt FGCS było opracowanie „systemów przetwarzania informacji wiedzy” (w przybliżeniu, stosowanej sztucznej inteligencji ). Wybranym narzędziem do realizacji tego celu było programowanie logiczne . Podejście do programowania logicznego, jakie charakteryzował Maarten Van Emden – jeden z jego założycieli – jako:

  • Wykorzystanie logiki do wyrażania informacji w komputerze.
  • Wykorzystanie logiki do przedstawiania problemów komputerowi.
  • Wykorzystanie wnioskowania logicznego do rozwiązania tych problemów.

Bardziej technicznie można to podsumować w dwóch równaniach:

  • Program = zbiór aksjomatów .
  • Obliczenie = dowód twierdzenia z aksjomatów .

Aksjomaty zwykle używane są uniwersalnymi aksjomatami o ograniczonej formie, zwanymi klauzulami Horna lub klauzulami określonymi . Zdanie udowodnione w obliczeniach jest stwierdzeniem egzystencjalnym. Dowód jest konstruktywny i dostarcza wartości dla egzystencjalnie skwantyfikowanych zmiennych: wartości te stanowią wynik obliczeń.

Programowanie logiczne było pomyślane jako coś, co ujednolica różne gradienty informatyki ( inżynieria oprogramowania , bazy danych , architektura komputerowa i sztuczna inteligencja ). Wydawało się, że programowanie logiczne było kluczowym brakującym połączeniem między inżynierią wiedzy a równoległymi architekturami komputerowymi.

Projekt wyobraził sobie komputer przetwarzający równolegle działający na szczycie dużych baz danych (w przeciwieństwie do tradycyjnego systemu plików ) używający języka programowania logicznego do definiowania danych i uzyskiwania do nich dostępu. Wyobrażali sobie zbudowanie prototypowej maszyny o wydajności między 100M a 1G LIPS, gdzie LIPS to logiczne wnioskowanie na sekundę. W tym czasie typowe maszyny na stanowiskach roboczych były w stanie obsłużyć około 100 tys. LIPS. Zaproponowali zbudowanie tej maszyny przez dziesięć lat, 3 lata na wstępne badania i rozwój, 4 lata na budowę różnych podsystemów i ostatnie 3 lata na ukończenie działającego prototypowego systemu. W 1982 r. rząd zdecydował się kontynuować projekt i ustanowił Instytut Technologii Komputerowych Nowej Generacji (ICOT) poprzez wspólne inwestycje z różnymi japońskimi firmami komputerowymi.

W tym samym roku, podczas wizyty w ICOT, Ehud Shapiro wynalazł Concurrent Prolog , nowatorski język programowania współbieżnego, który integruje programowanie logiczne i programowanie współbieżne. Concurrent Prolog to język programowania logicznego przeznaczony do programowania współbieżnego i wykonywania równoległego. Jest to język zorientowany na procesy , który uosabia synchronizację przepływu danych i nieokreśloność strzeżonych poleceń jako podstawowe mechanizmy kontrolne. Shapiro opisał język w Raporcie oznaczonym jako ICOT Technical Report 003, który przedstawiał interpreter Concurrent Prolog napisany w Prologu. Praca Shapiro nad Concurrent Prolog zainspirowała zmianę kierunku FGCS z koncentrowania się na równoległej implementacji Prologu na skupienie się na programowaniu w logice współbieżnej jako fundamentu oprogramowania dla projektu. Zainspirował również język programowania współbieżnego Guarded Horn Clauses (GHC) firmy Ueda, który był podstawą KL1 , języka programowania, który został ostatecznie zaprojektowany i zaimplementowany przez projekt FGCS jako jego podstawowy język programowania.

Realizacja

Przekonanie, że przetwarzanie równoległe jest przyszłością wszystkich wzrostów wydajności generowanych przez projekt piątej generacji, wywołało falę obaw w dziedzinie komputerów. Po wywarciu wpływu na branżę elektroniki użytkowej w latach siedemdziesiątych i świat motoryzacyjny w latach osiemdziesiątych, Japończycy w latach osiemdziesiątych zdobyli silną reputację. Wkrótce powstały równoległe projekty w USA jako Strategic Computing Initiative i Microelectronics and Computer Technology Corporation (MCC), w Wielkiej Brytanii jako Alvey , a w Europie jako European Strategic Program on Research in Information Technology (ESPRIT). jako Europejskie Centrum Badawcze Przemysłu Komputerowego (ECRC) w Monachium , współpraca między ICL w Wielkiej Brytanii, Bull we Francji i Siemens w Niemczech.

Ostatecznie wyprodukowano pięć działających równoległych maszyn wnioskujących (PIM): PIM/m, PIM/p, PIM/i, PIM/k, PIM/c. W ramach projektu powstały również aplikacje do uruchomienia w tych systemach, takie jak równoległy system zarządzania bazami danych Kappa, system wnioskowania prawnego HELIC-II oraz zautomatyzowane narzędzie do sprawdzania twierdzeń MGTP , a także aplikacje dla bioinformatyki .

Niepowodzenie

Projekt FGCS nie odniósł sukcesu komercyjnego z powodów podobnych do maszyn Lisp i Thinking Machines . Wysoce równoległa architektura komputerowa została ostatecznie pokonana pod względem szybkości przez mniej wyspecjalizowany sprzęt (na przykład stacje robocze Sun i maszyny Intel x86 ). W ramach projektu powstało nowe pokolenie obiecujących japońskich naukowców. Ale po projekcie FGCS MITI przestało finansować komputerowe projekty badawcze na dużą skalę, a tempo badań rozwinięte przez projekt FGCS rozproszyło się. Jednak MITI/ICOT rozpoczęło projekt szóstej generacji w latach 90-tych.

Podstawowym problemem był wybór współbieżnego programowania logicznego jako pomostu między równoległą architekturą komputerową a wykorzystaniem logiki jako reprezentacji wiedzy i języka rozwiązywania problemów dla aplikacji AI. To nigdy nie wydarzyło się czysto; opracowano wiele języków, wszystkie z własnymi ograniczeniami. W szczególności cecha wiążącego wyboru współbieżnego programowania w logice z ograniczeniami kolidowała z logiczną semantyką języków.

Innym problemem było to, że istniejąca wydajność procesorów szybko przełamała bariery, które eksperci dostrzegli w latach 80., a wartość obliczeń równoległych spadła do punktu, w którym przez pewien czas była używana tylko w sytuacjach niszowych. Chociaż w okresie trwania projektu zaprojektowano i zbudowano wiele stacji roboczych o coraz większej pojemności, wkrótce okazało się, że ich wydajność przewyższa je dostępne na rynku urządzenia „z półki”.

Projekt nie zdołał również utrzymać ciągłego rozwoju. W trakcie swojego życia GUI stały się głównym nurtem w komputerach; www włączoną lokalnie przechowywane bazy danych, aby stać rozdzielone; a nawet proste projekty badawcze przyniosły lepsze wyniki w świecie rzeczywistym w eksploracji danych. Ponadto w ramach projektu stwierdzono, że obietnice programowania logicznego zostały w dużej mierze zanegowane przez zastosowanie zaangażowanego wyboru.

Pod koniec dziesięcioletniego okresu projekt wydał ponad 50 miliardów jenów (około 400 milionów USD przy kursie wymiany z 1992 r.) i został zakończony bez osiągnięcia swoich celów. Stacje robocze nie cieszyły się popularnością na rynku, na którym systemy ogólnego przeznaczenia mogły je teraz zastąpić i przewyższyć. Jest to równoległe z rynkiem maszyn Lisp, gdzie systemy oparte na regułach, takie jak CLIPS, mogą działać na komputerach ogólnego przeznaczenia, dzięki czemu drogie maszyny Lisp są niepotrzebne.

Wyprzedza swoje czasy

Chociaż nie przyniosło to dużego sukcesu, wiele podejść zaobserwowanych w projekcie piątej generacji, takich jak programowanie logiczne, zostało rozproszonych w ogromnych bazach wiedzy i jest obecnie ponownie interpretowanych w obecnych technologiach. Na przykład Język Ontologii Sieciowej (OWL) wykorzystuje kilka warstw systemów reprezentacji wiedzy opartych na logice. Wydaje się jednak, że te nowe technologie wymyśliły na nowo, a nie wykorzystały podejścia badane w ramach inicjatywy piątej generacji.

Na początku XXI wieku zaczęło mnożyć się wiele odmian przetwarzania równoległego , w tym architektury wielordzeniowe na najniższym poziomie i masowo równoległe przetwarzanie na wysokim poziomie. Kiedy taktowanie procesorów zaczęło przesuwać się do zakresu 3–5 GHz, rozpraszanie mocy procesora i inne problemy stały się ważniejsze. Zdolność przemysłu do produkowania coraz szybszych systemów z pojedynczym procesorem (związana z prawem Moore'a o okresowym podwajaniu liczby tranzystorów) zaczęła być zagrożona. Zwykłe komputery konsumenckie i konsole do gier zaczęły mieć procesory równoległe, takie jak Intel Core , AMD K10 i Cell . Firmy produkujące karty graficzne, takie jak Nvidia i AMD, zaczęły wprowadzać duże systemy równoległe, takie jak CUDA i OpenCL . Ponownie jednak nie jest jasne, czy ten rozwój został w jakikolwiek znaczący sposób ułatwiony przez projekt piątej generacji.

Podsumowując, twierdzi się, że projekt piątej generacji był rewolucyjny, jednak nadal miał obszary upadku.

Bibliografia