El Sistema Informático de Quinta Generación ( FGCS ; en japonés :第五世代コンピュータ, romanizado : daigosedai konpyūta ) fue una iniciativa de 10 años lanzada en 1982 por el Ministerio de Comercio Internacional e Industria de Japón (MITI) para desarrollar computadoras basadas en computación masivamente paralela y programación lógica . El proyecto tenía como objetivo crear una "computadora revolucionaria" con un rendimiento similar al de una supercomputadora y establecer una plataforma para futuros avances en inteligencia artificial . Si bien el FGCS fue reconocido como adelantado a su tiempo y sus ambiciosos objetivos contribuyeron significativamente al desarrollo de la programación lógica concurrente , finalmente fracasó comercialmente.
El término "quinta generación" se eligió para enfatizar la naturaleza avanzada del sistema. En la historia del hardware informático , había habido cuatro generaciones previas de computadoras: la primera utilizaba tubos de vacío ; la segunda, transistores y diodos ; la tercera, circuitos integrados ; y la cuarta, microprocesadores . Si bien las generaciones anteriores se centraron en aumentar el número de elementos lógicos dentro de una sola CPU, en aquel entonces se creía que la quinta generación lograría un rendimiento mejorado mediante el uso de una gran cantidad de CPU.
Fondo
Desde finales de la década de 1960 hasta principios de la de 1970, se habló mucho de las "generaciones" de hardware informático, que por entonces solían organizarse en tres generaciones.
- Primera generación: Tubos de vacío termoiónicos. Mediados de la década de 1940. IBM fue pionera en la disposición de los tubos de vacío en módulos conectables. La IBM 650 fue una computadora de primera generación.
- Segunda generación: Transistores. 1956. Comienza la era de la miniaturización. Los transistores son mucho más pequeños que las válvulas de vacío, consumen menos energía y generan menos calor. Los transistores discretos se sueldan a las placas de circuitos impresos, y las interconexiones se realizan mediante patrones conductores impresos con plantillas en la parte posterior. La IBM 7090 fue una computadora de segunda generación.
- Tercera generación: Circuitos integrados (chips de silicio con múltiples transistores). 1964. Un ejemplo pionero es el módulo ACPX utilizado en la IBM 360/91, que, mediante la superposición de capas de silicio sobre un sustrato cerámico, permitía integrar más de 20 transistores por chip; estos chips podían agruparse en una placa de circuito impreso para alcanzar densidades lógicas sin precedentes. La IBM 360/91 era una computadora híbrida de segunda y tercera generación.
En esta taxonomía se omiten los ordenadores de "generación cero" basados en engranajes metálicos (como el IBM 407 ) o relés mecánicos (como el Mark I), y los ordenadores posteriores a la tercera generación basados en circuitos integrados a muy gran escala ( VLSI ).
También existió un conjunto paralelo de generaciones para el software:
- Primera generación : Lenguaje máquina .
- Segunda generación : Lenguajes de programación de bajo nivel , como el lenguaje ensamblador .
- Tercera generación : Lenguajes de programación estructurados de alto nivel como C , COBOL y FORTRAN .
- Cuarta generación : lenguajes de programación de alto nivel "no procedimentales" (como los lenguajes orientados a objetos). [ 1 ]
Durante varias generaciones, hasta la década de 1970, Japón construyó computadoras siguiendo el ejemplo de Estados Unidos y Gran Bretaña. A mediados de esa década, el Ministerio de Comercio Internacional e Industria dejó de seguir las tendencias occidentales y comenzó a explorar el futuro de la informática a pequeña escala. Solicitaron al Centro Japonés de Desarrollo del Procesamiento de la Información (JIPDEC) que indicara varias líneas de investigación futuras y, en 1979, le ofrecieron un contrato de tres años para realizar estudios más exhaustivos en colaboración con la industria y el mundo académico. Fue durante este período cuando se empezó a utilizar el término "computadora de quinta generación".
Antes de la década de 1970, la guía del MITI tuvo éxitos como la mejora de la industria siderúrgica, la creación del superpetrolero , la industria automotriz , la electrónica de consumo y la memoria de las computadoras. El MITI decidió que el futuro estaría en la tecnología de la información . Sin embargo, el idioma japonés , particularmente en su forma escrita, presentó y aún presenta obstáculos para las computadoras. [ 2 ] Como resultado de estos obstáculos, el MITI organizó una conferencia para buscar asistencia de expertos.
Los principales campos de investigación de este proyecto inicial fueron:
- Tecnologías informáticas de inferencia para el procesamiento del conocimiento
- Tecnologías informáticas para procesar bases de datos y bases de conocimiento a gran escala.
- Estaciones de trabajo de alto rendimiento
- Tecnologías informáticas funcionales distribuidas
- Supercomputadoras para cálculo científico
Lanzamiento del proyecto
El objetivo era construir computadoras paralelas para aplicaciones de inteligencia artificial utilizando programación lógica concurrente. El proyecto imaginaba una computadora revolucionaria con un rendimiento similar al de una supercomputadora, que funcionaría sobre grandes bases de datos (en lugar de un sistema de archivos tradicional ) utilizando un lenguaje de programación lógica para definir y acceder a los datos mediante computación/procesamiento masivamente paralelo . Preveían construir una máquina prototipo con un rendimiento de entre 100M y 1G LIPS, donde un LIPS es una inferencia lógica por segundo. En ese momento, las estaciones de trabajo típicas eran capaces de unos 100k LIPS. Propusieron construir esta máquina en un período de diez años: 3 años para I+D inicial, 4 años para la construcción de varios subsistemas y 3 años finales para completar un sistema prototipo funcional. En 1982, el gobierno decidió seguir adelante con el proyecto y estableció el Instituto para la Tecnología Informática de Nueva Generación (ICOT) mediante una inversión conjunta con varias empresas informáticas japonesas. Una vez finalizado el proyecto, el MITI consideraría una inversión en un nuevo proyecto de "sexta generación".
Ehud Shapiro capturó la lógica y las motivaciones que impulsaron este proyecto: [ 3 ]
Como parte del esfuerzo de Japón por convertirse en líder de la industria informática, el Instituto de Tecnología Informática de Nueva Generación ha lanzado un revolucionario plan decenal para el desarrollo de grandes sistemas informáticos aplicables a sistemas de procesamiento de información y conocimiento. Estos ordenadores de quinta generación se basarán en los conceptos de programación lógica. Para refutar la acusación de que Japón explota el conocimiento extranjero sin aportar nada propio, este proyecto impulsará la investigación original y pondrá sus resultados a disposición de la comunidad científica internacional.
Programación lógica
El objetivo definido por el proyecto FGCS era desarrollar "sistemas de procesamiento de información del conocimiento" (que en términos generales significan inteligencia artificial aplicada ). La herramienta elegida para implementar este objetivo fue la programación lógica . El enfoque de programación lógica, tal como lo caracterizó Maarten Van Emden, uno de sus fundadores, es: [ 4 ]
- El uso de la lógica para expresar información en una computadora.
- El uso de la lógica para presentar problemas a una computadora.
- El uso de la inferencia lógica para resolver estos problemas.
En términos más técnicos, se puede resumir en dos ecuaciones:
- Programa = Conjunto de axiomas .
- Cálculo = Demostración de una afirmación a partir de axiomas .
Los axiomas que se suelen utilizar son axiomas universales de forma restringida, denominados cláusulas de Horn o cláusulas definidas . La proposición que se demuestra en un cálculo es una proposición existencial. La demostración es constructiva y proporciona valores para las variables cuantificadas existencialmente; estos valores constituyen el resultado del cálculo.
Se consideraba que la programación lógica unificaba diversas ramas de la informática ( ingeniería de software , bases de datos , arquitectura de computadoras e inteligencia artificial ). Parecía que la programación lógica era el vínculo clave que faltaba entre la ingeniería del conocimiento y las arquitecturas de computadoras paralelas.
Resultados
Tras haber influido en el sector de la electrónica de consumo durante la década de 1970 y en el mundo de la automoción durante la década de 1980, los japoneses se habían labrado una sólida reputación. El lanzamiento del proyecto FGCS extendió la creencia de que la computación paralela era el futuro de todas las mejoras de rendimiento, lo que generó una ola de inquietud en el sector informático. Pronto se pusieron en marcha proyectos paralelos en EE. UU., como la Strategic Computing Initiative y la Microelectronics and Computer Technology Corporation (MCC); en el Reino Unido, como Alvey ; y en Europa, como el European Strategic Program on Research in Information Technology (ESPRIT); así como el European Computer-Industry Research Centre (ECRC) en Múnich , una colaboración entre ICL en Gran Bretaña, Bull en Francia y Siemens en Alemania.
El proyecto se desarrolló entre 1982 y 1994, con un gasto total de poco menos de 57 mil millones de yenes (aproximadamente 320 millones de dólares estadounidenses). [ 5 ] Tras el Proyecto FGCS, el MITI dejó de financiar proyectos de investigación informática a gran escala, y el impulso de la investigación generado por el Proyecto FGCS se disipó. Sin embargo, el MITI/ICOT emprendió un proyecto de redes neuronales, conocido por algunos como el Proyecto de Sexta Generación, en la década de 1990, con un nivel de financiación similar. [ 6 ] El gasto anual fue inferior al 1 % del gasto total en I+D de la industria de equipos electrónicos y de comunicaciones. Por ejemplo, el año de mayor gasto del proyecto fue 1991, con 7,2 millones de yenes, pero solo IBM gastó 1.500 millones de dólares (370 mil millones de yenes) en 1982, mientras que la industria gastó 2.150 mil millones de yenes en 1990. [ 5 ]
Programación lógica concurrente
En 1982, durante una visita al ICOT, Ehud Shapiro inventó Concurrent Prolog , un nuevo lenguaje de programación que integraba la programación lógica y la programación concurrente. Concurrent Prolog es un lenguaje orientado a procesos que incorpora la sincronización del flujo de datos y la indeterminación de comandos protegidos como mecanismos de control básicos. Shapiro describió el lenguaje en un informe, identificado como ICOT Technical Report 003, [ 7 ] que presentaba un intérprete de Concurrent Prolog escrito en Prolog. El trabajo de Shapiro sobre Concurrent Prolog inspiró un cambio en la dirección del FGCS, pasando de centrarse en la implementación paralela de Prolog a centrarse en la programación lógica concurrente como base de software para el proyecto. [ 3 ] También inspiró el lenguaje de programación lógica concurrente Guarded Horn Clauses (GHC) de Kazunori Ueda, que fue la base de KL1 , el lenguaje de programación que finalmente diseñó e implementó el proyecto FGCS como su lenguaje de programación principal.
El proyecto FGCS y sus hallazgos contribuyeron enormemente al desarrollo del campo de la programación lógica concurrente. El proyecto dio origen a una nueva generación de prometedores investigadores japoneses.
Fracaso comercial
Finalmente, se produjeron cinco máquinas de inferencia paralela (PIM) funcionales: PIM/m, PIM/p, PIM/i, PIM/k y PIM/c. El proyecto también generó aplicaciones para ejecutarse en estos sistemas, como el sistema de gestión de bases de datos paralelas Kappa, el sistema de razonamiento jurídico HELIC-II y el demostrador automático de teoremas MGTP , así como aplicaciones de bioinformática.
El proyecto FGCS no tuvo éxito comercial por razones similares a las de las empresas de máquinas Lisp y Thinking Machines . La arquitectura informática altamente paralela acabó siendo superada en velocidad por hardware menos especializado (por ejemplo, estaciones de trabajo de Sun Microsystems y máquinas Intel x86 ).
Un problema fundamental fue la elección de la programación lógica concurrente como puente entre la arquitectura de computación paralela y el uso de la lógica como lenguaje de representación del conocimiento y resolución de problemas para aplicaciones de IA. Esto nunca se logró de manera sencilla; se desarrollaron varios lenguajes, cada uno con sus propias limitaciones. En particular, la característica de elección comprometida de la programación lógica con restricciones concurrentes interfería con la semántica lógica de los lenguajes. [ 8 ] El proyecto concluyó que los beneficios de la programación lógica se veían anulados en gran medida al utilizar la elección comprometida.
Otro problema fue que el rendimiento de las CPU existentes superó rápidamente las limitaciones que los expertos habían previsto en la década de 1980, y el valor de la computación paralela disminuyó hasta el punto de que, durante un tiempo, solo se utilizó en situaciones muy específicas. Si bien se diseñaron y construyeron varias estaciones de trabajo con capacidad creciente a lo largo de la vida útil del proyecto, en general pronto se vieron superadas por unidades comerciales estándar.
El proyecto tampoco logró incorporar innovaciones externas. Durante su existencia, las interfaces gráficas de usuario (GUI) se popularizaron en la informática; internet permitió que las bases de datos almacenadas localmente se distribuyeran; e incluso proyectos de investigación sencillos proporcionaron mejores resultados prácticos en la minería de datos.
Las estaciones de trabajo FGCS no tenían atractivo en un mercado donde los sistemas de propósito general podían reemplazarlas y superarlas. Esto es similar al mercado de las máquinas Lisp, donde los sistemas basados en reglas como CLIPS podían ejecutarse en computadoras de propósito general, lo que hacía innecesarias las costosas máquinas Lisp. [ 9 ]
Adelantada a su tiempo
En resumen, el proyecto de Quinta Generación fue revolucionario y llevó a cabo investigaciones básicas que anticiparon futuras líneas de investigación. Se publicaron numerosos artículos y patentes. El MITI estableció un comité que evaluó el desempeño del proyecto FGCS, reconociéndolo como un proyecto con importantes contribuciones a la computación, en particular por la eliminación de cuellos de botella en el software de procesamiento paralelo y la implementación de un procesamiento interactivo inteligente basado en grandes bases de conocimiento. Sin embargo, el comité estaba fuertemente sesgado a favor del proyecto, por lo que esta evaluación exagera los resultados reales. [ 5 ]
Muchos de los temas abordados en el proyecto de Quinta Generación se están reinterpretando en las tecnologías actuales, ya que las limitaciones de hardware previstas en la década de 1980 se alcanzaron finalmente en la década de 2000. Cuando las velocidades de reloj de las CPU comenzaron a situarse en el rango de 3 a 5 GHz, la disipación de potencia de la CPU y otros problemas cobraron mayor importancia. La capacidad de la industria para producir sistemas de una sola CPU cada vez más rápidos (vinculada a la Ley de Moore sobre la duplicación periódica del número de transistores) comenzó a verse amenazada.
A principios del siglo XXI, comenzaron a proliferar diversas variantes de computación paralela , incluyendo arquitecturas multinúcleo en la gama baja y procesamiento masivamente paralelo en la gama alta. Las computadoras de consumo y las consolas de videojuegos comenzaron a incorporar procesadores paralelos como el Intel Core , el AMD K10 y el Cell . Empresas de tarjetas gráficas como Nvidia y AMD comenzaron a introducir sistemas paralelos de gran escala como CUDA y OpenCL .
Véase también
Referencias
- ↑ "Generaciones de software de Roger Clarke" .
- ↑ J. Marshall Unger, La falacia de la quinta generación (Nueva York: Oxford University Press, 1987)
- 1 2 Shapiro, Ehud Y. (1983). "El proyecto de quinta generación: un informe de viaje" . Communications of the ACM . 26 (9): 637– 641. doi : 10.1145/358172.358179 . S2CID 5955109 .
- ↑ Van Emden, Maarten H., y Robert A. Kowalski. "La semántica de la lógica de predicados como lenguaje de programación". Journal of the ACM 23.4 (1976): 733-742.
- 1 2 3 Odagiri, Hiroyuki; Nakamura, Yoshiaki; Shibuya, Minorul (1997). "Consorcios de investigación como vehículo para la investigación básica: el caso de un proyecto informático de quinta generación en Japón" . Política de investigación . 26 (2): 191– 207. doi : 10.1016/S0048-7333(97)00008-5 .
- ↑ MIZOGUCHI, FUMIO (14 de diciembre de 2013). Prolog y sus aplicaciones: una perspectiva japonesa . Springer. pág. ix. ISBN 978-1-4899-7144-9.
- ↑ Shapiro E. Un subconjunto de Concurrent Prolog y su intérprete, Informe técnico TR-003 de ICOT, Instituto de Tecnología Informática de Nueva Generación, Tokio, 1983. También en Concurrent Prolog: Artículos recopilados, E. Shapiro (ed.), MIT Press, 1987, Capítulo 2.
- ↑ Carl Hewitt. Robustez ante inconsistencias en programación lógica ArXiv 2009.
- ↑ Hendler, James (1 de marzo de 2008). "Evitando otro invierno de IA" (PDF) . IEEE Intelligent Systems . 23 (2): 2– 4. doi : 10.1109/MIS.2008.20 . S2CID 35914860. Archivado del original (PDF) el 12 de febrero de 2012.
- Moto-Oka, Tohru, ed. (1982). Sistemas informáticos de quinta generación (1.ª ed.). North Holland. doi : 10.1016/c2009-0-14415-x . ISBN 978-0-444-86440-6.
- Feigenbaum, Edward A.; McCorduck, Pamela (1987). La quinta generación: inteligencia artificial y el desafío informático de Japón al mundo (4.ª ed .). Reading, Mass.: Addison Wesley. ISBN 978-0-201-11519-2.
- Bramer, MA (Max A.) (1984). La quinta generación : una bibliografía anotada . Internet Archive. Wokingham, Inglaterra; Reading, Mass.: Addison-Wesley. ISBN 978-0-201-14427-7.
- 第五世代コンピュータ・プロジェクト 最終評価報告書 [Informe final de evaluación del proyecto informático de quinta generación] (30 de marzo de 1993)
Enlaces externos
- Museo FGCS: ubicado en el Centro de Investigación de Inteligencia Artificial (AIRC) , en el Laboratorio UEDA , contiene un amplio archivo de casi todos los resultados del proyecto FGCS, incluidos informes técnicos, memorandos técnicos, especificaciones de hardware y software.
- Detalles sobre la quinta generación de computadoras : cómo evolucionó el sistema informático.
- Clases de computadoras
- Historia de la inteligencia artificial
- Proyectos del MITI
- Computación paralela
- Proyectos de investigación
- Supercomputación en Japón