Computador de quinta geração - Fifth generation computer

A Quinta Geração de Sistemas de Computador ( FGCS ) foi uma iniciativa do Ministério do Comércio e Indústria Internacional do Japão (MITI), iniciada em 1982, para criar computadores usando computação paralela maciça e programação lógica . Seria o resultado de um projeto de pesquisa do governo / indústria no Japão durante os anos 1980. O objetivo era criar um "computador que marcou época" com desempenho semelhante ao de um supercomputador e fornecer uma plataforma para futuros desenvolvimentos em inteligência artificial . Houve também um projeto russo não relacionado, também denominado computador de quinta geração (ver Kronos (computador) ).

Ehud Shapiro , em seu artigo "Trip Report" (que focou o projeto FGCS na programação lógica simultânea como a base do software para o projeto), capturou a lógica e as motivações que orientam este projeto:

"Como parte do esforço do Japão para se tornar um líder na indústria de computadores, o Institute for New Generation Computer Technology lançou um plano revolucionário de dez anos para o desenvolvimento de grandes sistemas de computador que serão aplicáveis ​​a sistemas de processamento de informações de conhecimento. os computadores serão construídos em torno dos conceitos de programação lógica. Para refutar a acusação de que o Japão explora o conhecimento do exterior sem contribuir com nenhum outro, este projeto estimulará pesquisas originais e disponibilizará seus resultados para a comunidade de pesquisa internacional. "

O termo "quinta geração" pretendia transmitir o sistema como sendo avançado. Na história do hardware de computação , os computadores que usavam tubos de vácuo eram chamados de primeira geração; transistores e diodos , o segundo; circuitos integrados , o terceiro; e aqueles que usam microprocessadores , o quarto. Enquanto as gerações anteriores de computadores tinham se concentrado em aumentar o número de elementos lógicos em uma única CPU, a quinta geração, acreditava-se amplamente na época, se voltaria para um grande número de CPUs para desempenho adicional.

O projeto consistia em criar o computador ao longo de um período de dez anos, após o qual foi considerado encerrado e o investimento em um novo projeto de "sexta geração" teria início. As opiniões sobre o resultado estão divididas: ou foi um fracasso ou estava à frente de seu tempo.

Em formação

No final dos anos 1965 era um dos mais usados ​​até o início dos anos 1970, muito se falava sobre “gerações” de hardware de computador - normalmente “três gerações”.

  1. Primeira geração: Tubos de vácuo termiônicos. Meados da década de 1940. A IBM foi pioneira no arranjo de tubos de vácuo em módulos conectáveis. O IBM 650 foi um computador de primeira geração.
  2. Segunda geração: Transistores. 1956. Começa a era da miniaturização. Os transistores são muito menores que os tubos a vácuo, consomem menos energia e geram menos calor. Os transistores discretos são soldados às placas de circuito, com interconexões realizadas por padrões condutores protegidos por estêncil no verso. O IBM 7090 era um computador de segunda geração.
  3. Terceira geração: circuitos integrados (chips de silício contendo vários transistores). 1964. Um exemplo pioneiro é o módulo ACPX usado no IBM 360/91, que, ao empilhar camadas de silício sobre um substrato de cerâmica, acomodava mais de 20 transistores por chip; os chips podem ser empacotados juntos em uma placa de circuito para atingir densidades lógicas sem precedentes. O IBM 360/91 era um computador híbrido de segunda e terceira geração.

Omitido desta taxonomia é o computador de "geração zero" baseado em engrenagens de metal (como o IBM 407 ) ou relés mecânicos (como o Mark I), e os computadores de pós-terceira geração baseados em Very Large Scale Integrated ( VLSI) ) circuitos.

Havia também um conjunto paralelo de gerações de software:

  1. Primeira geração : linguagem de máquina .
  2. Segunda geração : Linguagens de programação de baixo nível , como a linguagem Assembly .
  3. Terceira geração : Linguagens de programação estruturadas de alto nível , como C , COBOL e FORTRAN .
  4. Quarta geração : linguagens de programação de alto nível "não procedimentais" (como linguagens orientadas a objetos)

Ao longo dessas várias gerações, até a década de 1970, o Japão construiu computadores seguindo os padrões dos Estados Unidos e da Grã-Bretanha. Em meados da década de 1970, o Ministério do Comércio e Indústria Internacional parou de seguir as orientações ocidentais e começou a olhar para o futuro da computação em pequena escala. Eles pediram ao Centro de Desenvolvimento de Processamento de Informação do Japão (JIPDEC) para indicar uma série de direções futuras e, em 1979, ofereceu um contrato de três anos para realizar estudos mais aprofundados junto com a indústria e a academia. Foi nessa época que o termo "computador de quinta geração" começou a ser usado.

Antes da década de 1970, a orientação do MITI teve sucessos como uma indústria siderúrgica aprimorada, a criação do superpetroleiro de petróleo , a indústria automotiva, produtos eletrônicos de consumo e memória de computador. O MITI decidiu que o futuro seria a tecnologia da informação . Porém, a língua japonesa , principalmente em sua forma escrita, apresentou e ainda apresenta obstáculos para os computadores. Como resultado desses obstáculos, o MITI realizou uma conferência para solicitar a assistência de especialistas.

Os principais campos de investigação deste projeto inicial foram:

  • Tecnologias de computador de inferência para processamento de conhecimento
  • Tecnologias informáticas para processar bases de dados e bases de conhecimento em grande escala
  • Estações de trabalho de alto desempenho
  • Tecnologias de computação funcional distribuídas
  • Supercomputadores para cálculos científicos

O projeto imaginou um "computador que marcou época" com desempenho semelhante ao de um supercomputador usando computação / processamento maciçamente paralelo. O objetivo era construir computadores paralelos para aplicações de inteligência artificial usando programação lógica concorrente. O projeto FGCS e suas vastas descobertas contribuíram muito para o desenvolvimento do campo de programação lógica concorrente.

O objetivo definido pelo projeto FGCS era desenvolver "Sistemas de Processamento de Informação do Conhecimento" (ou seja, Inteligência Artificial aplicada ). A ferramenta escolhida para implementar este objetivo foi a programação lógica . Abordagem de programação lógica como foi caracterizada por Maarten Van Emden - um de seus fundadores - como:

  • O uso da lógica para expressar informações em um computador.
  • O uso da lógica para apresentar problemas a um computador.
  • O uso de inferência lógica para resolver esses problemas.

Mais tecnicamente, pode ser resumido em duas equações:

  • Programa = Conjunto de axiomas .
  • Computação = Prova de uma declaração de axiomas .

Os Axiomas normalmente usados ​​são axiomas universais de uma forma restrita, chamados de cláusulas de Horn ou cláusulas definidas . A declaração provada em um cálculo é uma declaração existencial. A prova é construtiva e fornece valores para as variáveis ​​quantificadas existencialmente: esses valores constituem a saída do cálculo.

A programação lógica foi pensada como algo que unifica vários gradientes da ciência da computação ( engenharia de software , bancos de dados , arquitetura de computador e inteligência artificial ). Parecia que a programação lógica era uma conexão chave que faltava entre a engenharia do conhecimento e as arquiteturas de computador paralelas.

O projeto imaginou um computador de processamento paralelo rodando em cima de grandes bancos de dados (em oposição a um sistema de arquivos tradicional ) usando uma linguagem de programação lógica para definir e acessar os dados. Eles imaginaram construir um protótipo de máquina com desempenho entre 100M e 1G LIPS, onde um LIPS é uma inferência lógica por segundo. Na época, as máquinas de estação de trabalho típicas eram capazes de cerca de 100k LIPS. Eles propuseram construir esta máquina ao longo de um período de dez anos, 3 anos para P&D inicial, 4 anos para construir vários subsistemas e 3 anos finais para completar um sistema de protótipo funcional. Em 1982, o governo decidiu prosseguir com o projeto e estabeleceu o Instituto de Tecnologia de Computação de Nova Geração (ICOT) por meio de investimentos conjuntos com várias empresas japonesas de computadores.

No mesmo ano, durante uma visita ao ICOT, Ehud Shapiro inventou o Concurrent Prolog , uma nova linguagem de programação simultânea que integrou a programação lógica e a programação simultânea. Concurrent Prolog é uma linguagem de programação lógica projetada para programação simultânea e execução paralela. É uma linguagem orientada a processos , que incorpora a sincronização do fluxo de dados e a indeterminação do comando protegido como seus mecanismos básicos de controle. Shapiro descreveu a linguagem em um relatório marcado como ICOT Technical Report 003, que apresentou um intérprete Concurrent Prolog escrito em Prolog. O trabalho de Shapiro no Concurrent Prolog inspirou uma mudança na direção do FGCS de focar na implementação paralela do Prolog para o foco na programação lógica concorrente como a base do software para o projeto. Também inspirou a linguagem de programação lógica simultânea Guarded Horn Clauses (GHC) da Ueda, que foi a base da KL1 , a linguagem de programação que foi finalmente projetada e implementada pelo projeto FGCS como sua linguagem de programação central.

Implementação

A crença de que a computação paralela era o futuro de todos os ganhos de desempenho gerados pelo projeto da Quinta Geração produziu uma onda de apreensão no campo da computação. Depois de ter influenciado o campo da eletrônica de consumo durante a década de 1970 e o mundo automotivo durante a década de 1980, os japoneses na década de 1980 desenvolveram uma forte reputação. Logo projetos paralelos foram estabelecidos nos Estados Unidos como a Strategic Computing Initiative e a Microelectronics and Computer Technology Corporation (MCC), no Reino Unido como Alvey , e na Europa como o European Strategic Program on Research in Information Technology (ESPRIT), também como Centro Europeu de Pesquisa da Indústria da Computação (ECRC) em Munique , uma colaboração entre a ICL na Grã-Bretanha, a Bull na França e a Siemens na Alemanha.

Cinco Máquinas de Inferência Paralela (PIM) em execução foram produzidas: PIM / m, PIM / p, PIM / i, PIM / k, PIM / c. O projeto também produziu aplicativos para rodar nesses sistemas, como o sistema de gerenciamento de banco de dados paralelo Kappa, o sistema de raciocínio jurídico HELIC-II e o provador automatizado de teoremas MGTP , além de aplicativos para bioinformática .

Fracasso

O Projeto FGCS não teve sucesso comercial por motivos semelhantes aos das empresas de máquinas Lisp e de Máquinas Pensantes . A arquitetura de computador altamente paralela foi eventualmente superada em velocidade por hardware menos especializado (por exemplo, estações de trabalho Sun e máquinas Intel x86 ). O projeto produziu uma nova geração de pesquisadores japoneses promissores. Mas, depois do Projeto FGCS, o MITI parou de financiar projetos de pesquisa de computador em grande escala e o ímpeto de pesquisa desenvolvido pelo Projeto FGCS se dissipou. No entanto, o MITI / ICOT embarcou em um Projeto de Sexta Geração na década de 1990.

Um dos principais problemas foi a escolha da programação lógica concorrente como ponte entre a arquitetura paralela do computador e o uso da lógica como representação do conhecimento e linguagem de solução de problemas para aplicações de IA. Isso nunca aconteceu de forma limpa; várias linguagens foram desenvolvidas, todas com suas próprias limitações. Em particular, o recurso de escolha comprometida da programação de lógica de restrição simultânea interferia na semântica lógica das linguagens.

Outro problema foi que o desempenho da CPU existente ultrapassou rapidamente as barreiras percebidas pelos especialistas na década de 1980, e o valor da computação paralela caiu a ponto de ser usado por algum tempo apenas em situações de nicho. Embora várias estações de trabalho de capacidade crescente tenham sido projetadas e construídas ao longo da vida útil do projeto, elas geralmente se viram logo superadas por unidades "disponíveis no mercado".

O projeto também não conseguiu manter um crescimento contínuo. Durante sua vida útil, as GUIs se tornaram populares em computadores; a Internet permitiu que bancos de dados armazenados localmente fossem distribuídos; e até mesmo projetos de pesquisa simples forneceram melhores resultados do mundo real em mineração de dados. Além disso, o projeto descobriu que as promessas da programação lógica foram amplamente negadas pelo uso da escolha comprometida.

Ao final do período de dez anos, o projeto havia gasto mais de ¥ 50 bilhões (cerca de US $ 400 milhões a taxas de câmbio de 1992) e foi encerrado sem ter atingido suas metas. As estações de trabalho não eram atraentes em um mercado onde os sistemas de uso geral agora podiam substituí-los e superá-los. Isso é paralelo ao mercado de máquinas Lisp, onde sistemas baseados em regras, como CLIPS, podem ser executados em computadores de uso geral, tornando as máquinas Lisp caras desnecessárias.

À frente do seu tempo

Apesar de não ter produzido muito sucesso, muitas das abordagens vistas no projeto da Quinta Geração, como a programação lógica, foram distribuídas em grandes bases de conhecimento e agora estão sendo reinterpretadas nas tecnologias atuais. Por exemplo, a Web Ontology Language (OWL) emprega várias camadas de sistemas de representação de conhecimento baseados em lógica. Parece, entretanto, que essas novas tecnologias reinventaram, em vez de alavancar as abordagens investigadas na iniciativa da Quinta Geração.

No início do século 21, muitos sabores de computação paralela começaram a proliferar, incluindo arquiteturas multi-core na extremidade inferior e processamento massivamente paralelo na extremidade superior. Quando as velocidades de clock das CPUs começaram a passar para a faixa de 3 a 5 GHz, a dissipação de energia da CPU e outros problemas se tornaram mais importantes. A capacidade da indústria de produzir sistemas de CPU única cada vez mais rápidos (vinculados à Lei de Moore sobre a duplicação periódica da contagem de transistores) começou a ser ameaçada. Máquinas comuns de consumo e consoles de jogos começaram a ter processadores paralelos como Intel Core , AMD K10 e Cell . Placa gráfica empresas como Nvidia e AMD começou a introduzir grandes sistemas paralelos como CUDA e OpenCL . Novamente, no entanto, não está claro se esses desenvolvimentos foram facilitados de forma significativa pelo projeto da Quinta Geração.

Em resumo, argumenta-se que o projeto da Quinta Geração foi revolucionário, porém, ainda apresentava áreas de decadência.

Referências