stringtranslate.com

Sistemas informáticos de quinta generación

Los sistemas informáticos de quinta generación ( FGCS ; japonés :第五世代コンピュータ, romanizadodaigosedai konpyūta ) fueron 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 paralela masiva y programación lógica . El proyecto tenía como objetivo crear una "computadora que hiciera época" con un rendimiento similar al de una supercomputadora y establecer una plataforma para futuros avances en inteligencia artificial . Aunque FGCS se adelantó a su tiempo, sus ambiciosos objetivos finalmente llevaron al fracaso comercial. Sin embargo, a nivel teórico, el proyecto contribuyó significativamente al desarrollo de la programación lógica concurrente .

El término "quinta generación" fue elegido para enfatizar la naturaleza avanzada del sistema. En la historia del hardware informático , hubo cuatro "generaciones" anteriores de computadoras: la primera generación utilizó 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 la cantidad de elementos lógicos dentro de una sola CPU, en ese momento se creía ampliamente que la quinta generación lograría un rendimiento mejorado mediante el uso de una cantidad masiva de CPU. [ cita requerida ]

Fondo

A finales de la década de 1960 y principios de la de 1970, se habló mucho de "generaciones" de hardware informático, que entonces solían organizarse en tres generaciones.

  1. 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 enchufables. El IBM 650 fue un ordenador de primera generación.
  2. Segunda generación: transistores. 1956. Comienza la era de la miniaturización. Los transistores son mucho más pequeños que los tubos de vacío, consumen menos energía y generan menos calor. Los transistores discretos se sueldan a las placas de circuitos y las interconexiones se realizan mediante patrones conductores estampados con plantillas en el reverso. El IBM 7090 fue un ordenador de segunda generación.
  3. Tercera generación: circuitos integrados (chips de silicio que contienen múltiples transistores). 1964. Un ejemplo pionero es el módulo ACPX utilizado en el IBM 360/91, que, al apilar capas de silicio sobre un sustrato cerámico, alojaba más de 20 transistores por chip; los chips podían empaquetarse juntos en una placa de circuito para lograr densidades lógicas sin precedentes. El IBM 360/91 era un ordenador híbrido de segunda y tercera generación.

En esta taxonomía se omiten las computadoras de "generación cero" basadas en engranajes metálicos (como la IBM 407 ) o relés mecánicos (como la Mark I), y las computadoras posteriores a la tercera generación basadas en circuitos integrados de muy gran escala ( VLSI ).

También hubo un conjunto paralelo de generaciones de software:

  1. Primera generación : lenguaje máquina .
  2. Segunda generación : lenguajes de programación de bajo nivel como el lenguaje ensamblador .
  3. Tercera generación : Lenguajes de programación estructurados de alto nivel como C , COBOL y FORTRAN .
  4. Cuarta generación : lenguajes de programación de alto nivel “no procedimentales” (como los lenguajes orientados a objetos). [1]

A lo largo de estas múltiples generaciones hasta la década de 1970, Japón construyó computadoras siguiendo los pasos de Estados Unidos y Gran Bretaña. A mediados de esa década, el Ministerio de Comercio Internacional e Industria dejó de seguir los pasos occidentales y comenzó a estudiar el futuro de la informática a pequeña escala. Pidió al Centro de Desarrollo de Procesamiento de Información de Japón (JIPDEC) que indicara una serie de direcciones futuras y en 1979 ofreció un contrato de tres años para realizar estudios más profundos junto con la industria y el mundo académico. Fue durante este período cuando comenzó a utilizarse el término "computadora de quinta generación".

Antes de la década de 1970, la dirección del MITI había tenido éxitos como una industria siderúrgica mejorada, 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 iba a ser la tecnología de la información . Sin embargo, el idioma japonés , particularmente en su forma escrita, presentaba y todavía presenta obstáculos para las computadoras. [2] Como resultado de estos obstáculos, el MITI celebró una conferencia para buscar la ayuda de expertos.

Los principales campos de investigación de este proyecto inicial fueron:

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 "que marcara una época" con un rendimiento similar al de una supercomputadora que se ejecutara sobre grandes bases de datos (a diferencia de un sistema de archivos tradicional ) utilizando un lenguaje de programación lógica para definir y acceder a los datos utilizando computación/procesamiento masivamente paralelo . Se imaginaron construir una máquina prototipo con un rendimiento entre 100M y 1G LIPS, donde LIPS es una inferencia lógica por segundo. En ese momento, las máquinas de estación de trabajo típicas eran capaces de aproximadamente 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 construir 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 de Tecnología Informática de Nueva Generación (ICOT) a través de 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 captó la lógica y las motivaciones que impulsaron este proyecto: [3]

"Como parte de los esfuerzos de Japón por convertirse en un líder en la industria informática, el Instituto de Tecnología Informática de Nueva Generación ha lanzado un revolucionario plan de diez años para el desarrollo de grandes sistemas informáticos que serán aplicables a los sistemas de procesamiento de información del conocimiento. Estos ordenadores de quinta generación se construirán en torno a los conceptos de programación lógica. Para refutar la acusación de que Japón explota el conocimiento del extranjero sin aportar nada propio, este proyecto estimulará 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 fue desarrollar "sistemas de procesamiento de información del conocimiento" (es decir, inteligencia artificial aplicada ). La herramienta elegida para implementar este objetivo fue la programación lógica . El enfoque de programación lógica fue caracterizado por Maarten Van Emden, uno de sus fundadores, como: [4]

Más técnicamente, se puede resumir en dos ecuaciones:

Los axiomas que se utilizan normalmente son axiomas universales de forma restringida, llamados cláusulas de Horn o cláusulas definidas . El enunciado demostrado en un cálculo es un enunciado existencial. [ cita requerida ] La prueba es constructiva y proporciona valores para las variables cuantificadas existencialmente: estos valores constituyen el resultado del cálculo.

Se pensaba que la programación lógica era algo que unificaba varios gradientes de la ciencia informática ( ingeniería de software , bases de datos , arquitectura informática e inteligencia artificial ). Parecía que la programación lógica era una conexión clave que faltaba entre la ingeniería del conocimiento y las arquitecturas informáticas paralelas.

Resultados

Después de haber influido en el campo de la electrónica de consumo durante la década de 1970 y en el mundo del automóvil durante la década de 1980, los japoneses se habían ganado una sólida reputación. El lanzamiento del proyecto FGCS difundió la creencia de que la computación paralela era el futuro de todas las ganancias de rendimiento, lo que produjo una ola de aprensión en el campo de la informática. Pronto se establecieron proyectos paralelos en los 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 Munich , una colaboración entre ICL en Gran Bretaña, Bull en Francia y Siemens en Alemania.

El proyecto funcionó de 1982 a 1994, gastando un poco menos de ¥57 mil millones (alrededor de US$320 millones) en total. [5] Después del Proyecto FGCS, MITI dejó de financiar proyectos de investigación informática a gran escala, y el impulso de investigación desarrollado por el Proyecto FGCS se disipó. Sin embargo, MITI/ICOT se embarcó en un proyecto de red neuronal [ ¿cuál? ] que algunos llamaron el Proyecto de Sexta Generación en la década de 1990, con un nivel de financiación similar. [6] El gasto anual fue menos del 1% de todo el gasto en I+D de la industria de equipos electrónicos y de comunicaciones. Por ejemplo, el año de mayor gasto del proyecto fue de 7,2 millones de yenes en 1991, pero IBM por sí sola gastó 1,5 mil millones de dólares (370 mil millones de yenes) en 1982, mientras que la industria gastó 2150 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 novedoso lenguaje de programación que integraba programación lógica y 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 guardados como sus mecanismos de control básicos. Shapiro describió el lenguaje en un Informe marcado como ICOT Technical Report 003, [7] que presentó un intérprete de Concurrent Prolog escrito en Prolog. El trabajo de Shapiro en Concurrent Prolog inspiró un cambio en la dirección del FGCS de centrarse en la implementación paralela de Prolog al enfoque en la programación lógica concurrente como la base del software para el proyecto. [3] También inspiró el lenguaje de programación lógica concurrente Guarded Horn Clauses (GHC) de Ueda, que fue la base de KL1 , el lenguaje de programación que finalmente fue diseñado e implementado por el proyecto FGCS como su lenguaje de programación central.

El proyecto FGCS y sus hallazgos contribuyeron en gran medida al desarrollo del campo de la programación lógica concurrente. El proyecto produjo una nueva generación de prometedores investigadores japoneses.

Fracaso comercial

Finalmente se produjeron cinco máquinas de inferencia paralela (PIM) en funcionamiento: PIM/m, PIM/p, PIM/i, PIM/k y PIM/c. El proyecto también produjo aplicaciones para ejecutarse en estos sistemas, como el sistema de gestión de bases de datos paralelas Kappa, el sistema de razonamiento legal HELIC-II y el demostrador automático de teoremas MGTP , así como aplicaciones bioinformáticas.

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 fue finalmente superada en velocidad por hardware menos especializado (por ejemplo, las estaciones de trabajo Sun y las máquinas Intel x86 ).

Un problema principal fue la elección de la programación lógica concurrente como puente entre la arquitectura de computadoras paralelas y el uso de la lógica como lenguaje de representación de conocimiento y resolución de problemas para aplicaciones de IA. Esto nunca sucedió de manera limpia; se desarrollaron varios lenguajes, todos 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 descubrió que los beneficios de la programación lógica se anulaban en gran medida utilizando la elección comprometida. [ cita requerida ]

Otro problema fue que el rendimiento de las CPU existentes superó rápidamente las barreras que los expertos anticiparon en la década de 1980, y el valor de la computación paralela cayó hasta el punto en que durante algún tiempo se utilizó solo en situaciones específicas. Aunque se diseñaron y construyeron varias estaciones de trabajo de capacidad creciente durante la vida útil del proyecto, en general se encontraron pronto superadas por las unidades "estándar" disponibles comercialmente.

El proyecto tampoco logró incorporar innovaciones externas. Durante su existencia, las interfaces gráficas de usuario se convirtieron en algo habitual en los ordenadores; Internet permitió que las bases de datos almacenadas localmente se distribuyeran; e incluso proyectos de investigación sencillos proporcionaron mejores resultados en el mundo real en materia de minería de datos. [ cita requerida ]

Las estaciones de trabajo FGCS no tenían ningún atractivo en un mercado en el que 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]

Adelantado a su tiempo

En resumen, el proyecto de quinta generación fue revolucionario y logró algunas investigaciones básicas que anticiparon futuras direcciones de investigación. Se publicaron muchos artículos y patentes. El MITI estableció un comité que evaluó el desempeño del Proyecto FGCS como una contribución importante a la computación, en particular la eliminación de cuellos de botella en el software de procesamiento paralelo y la realización de procesamiento interactivo inteligente basado en grandes bases de conocimiento. Sin embargo, el comité estaba fuertemente sesgado a la hora de justificar el proyecto, por lo que esto exagera los resultados reales. [5]

Muchos de los temas que se vieron en el proyecto de quinta generación se están reinterpretando ahora en las tecnologías actuales, ya que las limitaciones de hardware previstas en la década de 1980 finalmente se alcanzaron en la década de 2000. Cuando las velocidades de reloj de las CPU comenzaron a moverse hacia el rango de 3 a 5 GHz, la disipación de energía de la CPU y otros problemas se volvieron más importantes. 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 de los recuentos de transistores) comenzó a verse amenazada.

A principios del siglo XXI, comenzaron a proliferar muchas variantes de computación paralela , incluidas las arquitecturas multinúcleo en el extremo inferior y el procesamiento paralelo masivo en el extremo superior. Las máquinas de consumo comunes y las consolas de juegos comenzaron a tener procesadores paralelos como Intel Core , AMD K10 y Cell . Las empresas de tarjetas gráficas como Nvidia y AMD comenzaron a introducir grandes sistemas paralelos como CUDA y OpenCL .

Sin embargo, parece que estas nuevas tecnologías no citan la investigación del FGCS. No está claro si el FGCS se utilizó para facilitar estos avances de alguna manera significativa. No se ha demostrado ningún impacto significativo del FGCS en la industria informática. [ cita requerida ]

Referencias

  1. ^ "Las generaciones de software de Roger Clarke".
  2. ^ J. Marshall Unger, La falacia de la quinta generación (Nueva York: Oxford University Press, 1987)
  3. ^ ab Shapiro, Ehud Y. (1983). "El proyecto de quinta generación: un informe de viaje". Comunicaciones de la ACM . 26 (9): 637–641. doi : 10.1145/358172.358179 . S2CID  5955109.
  4. ^ 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.
  5. ^ abc Odagiri, Hiroyuki; Nakamura, Yoshiaki; Shibuya, Minorul (1997). "Los 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". Research Policy . 26 (2): 191–207. doi :10.1016/S0048-7333(97)00008-5.
  6. ^ MIZOGUCHI, FUMIO (14 de diciembre de 2013). Prolog y sus aplicaciones: una perspectiva japonesa. Springer. p. ix. ISBN 978-1-4899-7144-9.
  7. ^ Shapiro E. Un subconjunto de Concurrent Prolog y su intérprete, Informe técnico ICOT TR-003, Instituto de tecnología informática de nueva generación, Tokio, 1983. También en Concurrent Prolog: Collected Papers, E. Shapiro (ed.), MIT Press, 1987, Capítulo 2.
  8. ^ Carl Hewitt. Robustez de la inconsistencia en la programación lógica ArXiv 2009.
  9. ^ Hendler, James (1 de marzo de 2008). "Cómo evitar otro invierno de la IA" (PDF) . IEEE Intelligent Systems . 23 (2): 2–4. doi :10.1109/MIS.2008.20. S2CID  35914860. Archivado desde el original (PDF) el 12 de febrero de 2012.