Inteligencia Artificial General

By Jose Melgarejo | Created: October 23, 2023 | Last updated: June 19, 2025 | Read Time: 35 minutes

- Una suave introducción 

Pei Wang 

Original article: cis.temple.edu/~pwang/AGI-Intro.html

[Esta página contiene información actualizada sobre el campo de la Inteligencia Artificial General (IAG), recopilada y organizada según mi criterio, aunque se procura evitar sesgos personales]. 

Contenido 

  • 1 De la IA a la AGI 
  • 1.1 AI: en diferentes direcciones, y a través de ciclos estacionales. 
  • 1.2 Un nuevo muelle 
  • 1.3 Ya es verano otra vez 
  • 2 AGI Básico 
  • 2.1 Qué es el AGI 
  • 2.2 Limitaciones y objeciones 
  • 2.3 Estrategias y técnicas 
  • 2.4 La ética de la AGI 
  • 3 Proyectos representativos de AGI 
  • 4 Literaturas y recursos AGI 

De la IA a la IAIG 

AI: en diferentes direcciones, y a través de ciclos estacionales 

La Inteligencia Artificial (IA) comenzó con la "máquina pensante" o la "inteligencia comparable a la humana" como objetivo final, tal y como documenta la siguiente bibliografía: 

En el pasado hubo algunos proyectos ambiciosos que perseguían este objetivo, aunque todos fracasaron. Los ejemplos más conocidos son los siguientes: 

En parte debido a la dificultad reconocida del problema, en la década de 1970-1980 la corriente principal de la IA se alejó gradualmente de los sistemas inteligentes de propósito general y se orientó hacia problemas específicos de dominio y soluciones de propósito especial, aunque existen actitudes opuestas hacia este cambio: 

En consecuencia, el campo actualmente denominado "IA" está formado por muchos subcampos vagamente relacionados, sin una base o marco común, y sufre una crisis de identidad: 

  • Reconocimiento externo: En cuanto se resuelve un problema, ya no se considera que requiera "inteligencia", por lo que la comunidad de la IA rara vez recibe reconocimiento. 
  • Fragmentación interna: Los subcampos de la IA se asocian cada vez menos entre sí, aunque sus problemas estén estrechamente relacionados. 

Una nueva primavera 

Aproximadamente entre 2004 y 2007, volvieron las peticiones de investigación sobre sistemas de propósito general, tanto dentro como fuera de la corriente principal de la IA. 

Los aniversarios son un buen momento para revisar el panorama general del campo. En las siguientes colecciones y eventos, muchos investigadores de IA bien establecidos plantearon el tema de la inteligencia de propósito general y de nivel humano: 

Más o menos casualmente, desde fuera de la corriente principal de la IA, aparecieron varios libros con títulos atrevidos y enfoques técnicos novedosos para producir inteligencia en su conjunto en los ordenadores: 

También había varios libros menos técnicos pero más influyentes, con el mismo optimismo sobre la posibilidad de construir una IA de propósito general: 

Así que, después de varias décadas, "sistema de propósito general", "IA integrada" e "IA a nivel humano" se convierten en temas menos tabú (aunque todavía lejos de ser populares), como demuestran varias reuniones relacionadas: 

Ya es verano otra vez 

Se han publicado más libros de investigación: 

Joscha Bach, Principios de inteligencia sintética PSI: una arquitectura de cognición motivada, 2009 

John Laird, La arquitectura cognitiva Soar, 2012 

Pei Wang y Ben Goertzel (editores), Theoretical Foundations of Artificial General Intelligence, 2012 

Pei Wang, Lógica no axiomática: Un modelo de razonamiento inteligente, 2013 

Ben Goertzel et al., Ingeniería de la inteligencia general, Parte 1 y Parte 2, 2014. 

En la corriente principal de la IA, el aprendizaje profundo ha hecho progresos impresionantes en los últimos años, lo que hace que muchas personas vuelvan a tener esperanzas en una IA "de nivel humano". La afirmación "El Test de Turing ha sido superado" y el éxito de AlphaGo en el juego de mesa Go renovaron el debate sobre qué es realmente la "inteligencia artificial" y cómo alcanzarla. Aún no hay consenso, y las opiniones ni siquiera convergen. Varias grandes empresas han etiquetado sus resultados como "pasos hacia la AGI", y sus enfoques son extensiones del aprendizaje profundo o integraciones de las técnicas de IA existentes. Este enfoque se ejemplifica con GPT-4, que su creador afirma que es "un paso significativo hacia la AGI". 

En parte provocado por los recientes avances, cada vez más gente considera que la AGI, o como quiera que se llame, es realmente posible. Como consecuencia, el riesgo y la seguridad de la misma se convierten en un tema candente: 

AGI Básico 

Las preguntas más generales a las que debe responder todo investigador de AGI son las siguientes: 

  1. ¿Qué es el AGI, especificado con precisión? 
  2. ¿Es posible construir la AGI tal como se especifica? 
  3. Si la inteligencia artificial es posible, ¿cuál es la forma más plausible de conseguirla? 
  4. Aunque sepamos cómo conseguir la AGI, ¿deberíamos hacerlo? 

[Mis propias respuestas a estas preguntas están aquí]. 

A continuación se resumen las principales respuestas en el campo de la AGI. 

Qué es el AGI 

A grandes rasgos, la investigación en Inteligencia Artificial General (IAG) presenta las siguientes características: 

  • Insistir en el carácter polivalente de la inteligencia, 
  • Adoptar un punto de vista holístico o integrador de la inteligencia, 
  • Creemos que ha llegado el momento de construir una IA comparable a la inteligencia humana. 

Por lo tanto, "AGI" está más cerca del significado original de "IA", aunque es muy diferente de la actual corriente dominante de "investigación en IA", que se centra en métodos específicos de un dominio y de un problema. "AGI" es similar o está relacionada con conceptos como "IA fuerte", "IA a nivel humano", "IA completa", "máquina pensante", "computación cognitiva" y otros. He aquí una explicación sobre la selección del término "AGI". 

Aunque existe un vago consenso sobre el objetivo de reproducir la "inteligencia" en su conjunto en los ordenadores, los proyectos actuales de AGI no persiguen exactamente la misma meta. Aunque todos los enfoques de AGI se inspiran en la misma fuente, es decir, la inteligencia humana, aquí "inteligencia" se entiende en varios sentidos. En consecuencia, los proyectos de AGI intentan duplicar la inteligencia humana a distintos niveles de abstracción: 

  • Estructura
    Razón:  inteligencia la produce el cerebro humano. Por tanto, construir un ordenador inteligente significa simular la estructura del cerebro lo más fielmente posible. 
    Antecedentes: Neurociencia, biología, etc. 
    Ejemplos: HTM, Vicarious 
    Reto: Puede haber detalles biológicos que no sea posible ni necesario reproducir en los sistemas de IA. 
  • Comportamiento
    Razón:  inteligencia se manifiesta en cómo se comportan los seres humanos. Por tanto, el objetivo debe ser conseguir que un ordenador se comporte exactamente igual que un ser humano. 
    Antecedentes: Psicología, lingüística, etc. 
    Ejemplos:Test de Turing, ChatGPT 
    Reto: Puede haber factores psicológicos o sociales que no sea posible ni necesario reproducir en los sistemas de IA. 
  • Capacidad
    Razón: La inteligencia se evalúa por la capacidad de resolver problemas. Por tanto, un sistema inteligente debe ser capaz de resolver determinados problemas prácticos que actualmente sólo pueden resolver los humanos. 
    Antecedente:Aplicación informática guiada por el conocimiento del dominio. Ejemplos:IBM Watson, AlphaGo 
    Desafío: No hay problemas definitorios de la inteligencia, y las soluciones de propósito especial carecen de generalidad y flexibilidad. 
  • Función 
    Razón: La inteligencia se asocia a un conjunto de funcionalidades cognitivas, como percibir, razonar, aprender, actuar, comunicarse, resolver problemas, etc. Por tanto, el objetivo es reproducir estas funciones en los ordenadores. 
    Antecedentes:Informática 
    Ejemplos:Libros de texto convencionales sobre IA, Soar 
    Reto: Las técnicas de IA desarrolladas hasta ahora son muy fragmentarias y rígidas, y es difícil que funcionen juntas. 
  • Principio Razón: La inteligencia es una forma de racionalidad u optimalidad. Por tanto, un sistema inteligente debería "hacer siempre lo correcto" de acuerdo con ciertos principios generales. 
    Antecedentes: Lógica, matemáticas, etc. 
    Ejemplos:AIXI, NARS 
    Reto: Hay demasiados aspectos en la inteligencia y la cognición como para explicarlos y reproducirlos con una teoría simple. 

De arriba abajo, corresponden a descripciones de la inteligencia humana en un nivel cada vez más general, y a reproducir esa descripción en sistemas informáticos. Dado que las distintas descripciones tienen una granularidad y un alcance diferentes, los objetivos anteriores están relacionados, pero siguen siendo muy diferentes, y no se subsumen unos a otros. La mejor manera de lograr uno de ellos no suele ser una buena opción para los demás. [Aquí encontrará un análisis más detallado de esta cuestión]. 

La naturaleza de "propósito general" del AGI también ha obtenido diferentes interpretaciones a lo largo de los años, como el significado de 

  1. Puede resolver todos los problemas, 
  2. Puede resolver todos los problemas humanamente solucionables, 
  3. Puede resolver todos los problemas computables, 
  4. Puede intentar resolver todos los problemas representables. 

Debido a esta diversidad de objetivos de investigación, en AGI no existen actualmente criterios de evaluación comúnmente aceptados (como hitos y puntos de referencia). 

Limitaciones y objeciones 

Desde que apareció la idea de la IA o "máquina pensante", ha habido varias objeciones contra su posibilidad. Algunas personas afirmaron haber demostrado que la AGI, o como quiera que se llame, es teóricamente imposible, debido a ciertas limitaciones fundamentales de los ordenadores. 

Muchos investigadores han argumentado en contra de estas objeciones. Los argumentos clásicos pueden encontrarse en las siguientes obras: 

Obviamente, todos los investigadores de la AGI creen que se puede conseguir (aunque tienen diferentes interpretaciones del término). En el capítulo introductorio de las Actas del Taller AGI 2006, Ben Goertzel y yo respondimos a las siguientes dudas y objeciones comunes de esta investigación: 

  • AGI es imposible. 
  • La inteligencia general no existe. 
  • Los sistemas de propósito general no son tan buenos como los de propósito especial. 
  • El AGI ya está incluido en el IA actual. 
  • Es demasiado pronto para trabajar en AGI. 
  • AGI no es más que una exageración. 
  • La investigación sobre AGI no es fructífera. 
  • AGI es peligroso. 

Algunas de las dudas sobre la posibilidad de la AGI provienen de ideas erróneas sobre lo que la AGI intenta conseguir o lo que los ordenadores pueden hacer. En la subsección anterior se ha aclarado la primera cuestión, mientras que aquí puede encontrarse un análisis de la segunda. 

Estrategias y técnicas 

Por un lado, el objetivo último de la AGI es reproducir la inteligencia en su conjunto, mientras que, por otro, la práctica de la ingeniería debe ir paso a paso. Para resolver este dilema, se han propuesto tres estrategias generales: 

  • Híbrido 
    Enfoque: Desarrollar primero las funciones individuales (utilizando diferentes teorías y técnicas) y luego conectarlas entre sí. 
    Argumento:(AA)AI: Más que la suma de sus Ronald Brachman 
    Dificultad: Compatibilidad de las teorías y técnicas 
  • Integrado 
    Enfoque: Diseñar primero una arquitectura y después sus módulos (utilizando diversas técnicas) en consecuencia. 
    Argumento:Sinergia cognitiva: ¿Un principio universal para una inteligencia general viable? Ben Goertzel 
    Dificultad: Aislamiento, especificación y coordinación de las funciones. 
  • Unificado 
    Enfoque: Utilización de una única técnica para partir de un sistema central y, a continuación, ampliarlo y aumentarlo de forma incremental. 
    Argumento:Hacia una inteligencia artificial Pei Wang 
    Dificultad: Versatilidad y extensibilidad de la técnica central. 

Obviamente, la selección de la estrategia de desarrollo depende en parte de la selección del objetivo de la investigación. 

En la actualidad, las principales técnicas utilizadas en los proyectos AGI incluyen, entre otras: 

  • lógica 
  • teoría de la probabilidad 
  • sistema de producción 
  • teoría de grafos 
  • base de conocimientos 
  • algoritmo de aprendizaje 
  • red neuronal 
  • computación evolutiva 
  • robótica 
  • sistema multiagente 

Aunque cada una de estas técnicas también se explora en la IA convencional, su uso en un sistema de propósito general lleva a decisiones de diseño muy diferentes en los detalles técnicos. 

La ética de la AGI 

Aunque hayamos descubierto cómo lograr la AGI, esto no significa necesariamente que realmente queramos hacerlo. Como todos los grandes descubrimientos científicos y avances técnicos, la AGI tiene el potencial de revolucionar nuestra vida e incluso el destino de la especie humana, ya sea de forma deseada o no deseada o, como suelen ser las cosas, una mezcla de ambas. 

Los investigadores de la AGI son conscientes de su responsabilidad en este tema, aunque la mayoría de ellos piensa que, según las pruebas actualmente disponibles, los avances en la investigación de la AGI beneficiarán a la especie humana, en lugar de destruirla. Los debates sobre cómo hacer que la AGI sea "segura" han existido en las reuniones de AGI desde el principio. Algunos ejemplos son 

Por supuesto, muchos problemas cruciales siguen abiertos, pero para encontrar sus soluciones, la investigación de la AGI debería acelerarse, en lugar de ralentizarse. Una vez más, algunas de las preocupaciones y temores generalizados sobre la IAG se basan en ideas erróneas sobre su naturaleza. 

Proyectos representativos de AGI 

Se han seleccionado los siguientes proyectos para representar la investigación actual sobre AGI, ya que de cada uno de ellos puede decirse que 

  1. Está claramente orientado a AGI (por eso no se incluyen Watson de IBM ni AlphaGo de DeepMind) 
  2. Todavía está muy activo (por eso ya no se incluyen el OSCAR de Pollock y el Cog de Brooks) 
  3. Tiene amplias publicaciones sobre detalles técnicos (por eso muchos proyectos AGI recientes no están incluidos todavía, excepto GPT-4 que se utiliza para representar varios proyectos de aprendizaje profundo hacia AGI) 

Los proyectos se enumeran por orden alfabético. Cada nombre de proyecto está vinculado a la página web del proyecto, de donde se extraen las siguientes citas. Las citas se centran en el objetivo de la investigación (1ª pregunta) y la trayectoria técnica (3ª pregunta). Se seleccionan dos publicaciones sobre el proyecto, normalmente una breve introducción y una descripción detallada. 

ACT-R [Una teoría integrada de la mente; los componentes atómicos del pensamiento]. 

ACT-R es una arquitectura cognitiva: una teoría para simular y comprender la cognición humana. Los investigadores que trabajan en ACT-R se esfuerzan por comprender cómo las personas organizan el conocimiento y producen comportamientos inteligentes. A medida que avanza la investigación, ACT-R evoluciona hasta convertirse en un sistema capaz de realizar todas las tareas cognitivas humanas: captar con gran detalle la forma en que percibimos, pensamos y actuamos en el mundo. 

Por fuera, ACT-R parece un lenguaje de programación; sin embargo, sus construcciones reflejan suposiciones sobre la cognición humana. Estos supuestos se basan en numerosos hechos derivados de experimentos psicológicos. Al igual que un lenguaje de programación, ACT-R es un marco: para diferentes tareas (por ejemplo, la Torre de Hanoi, la memoria para texto o para listas de palabras, la comprensión del lenguaje, la comunicación, el control de aviones), los investigadores crean modelos (también conocidos como programas) que se escriben en ACT-R y que, además de incorporar la visión de la cognición de ACT-R, añaden sus propios supuestos sobre la tarea concreta. Estos supuestos pueden comprobarse comparando los resultados del modelo con los resultados de personas que realizan las mismas tareas. 

ACT-R es una arquitectura cognitiva híbrida. Su estructura simbólica es un sistema de producción; la estructura subsimbólica está representada por un conjunto de procesos masivamente paralelos que pueden resumirse en una serie de ecuaciones matemáticas. Las ecuaciones subsimbólicas controlan muchos de los procesos simbólicos. Por ejemplo, si varias producciones coinciden con el estado de los búferes, una ecuación subsimbólica de utilidad estima el coste y el beneficio relativos asociados a cada producción y decide seleccionar para su ejecución la producción con mayor utilidad. Del mismo modo, la posibilidad (o la rapidez) de recuperar un hecho de la memoria declarativa depende de ecuaciones subsimbólicas de recuperación, que tienen en cuenta el contexto y el historial de uso de ese hecho. Los mecanismos subsimbólicos también son responsables de la mayoría de los procesos de aprendizaje en el ACT-R. 

AERA [racionalidad limitada en cualquier momento; arquitectura reflexiva endógena autocatalítica]. 

AERA es una arquitectura cognitiva -y un proyecto- para construir agentes con altos niveles de autonomía operativa, partiendo sólo de una pequeña cantidad de código especificado por el diseñador: una semilla. Utilizando una programación dinámica de prioridades basada en valores para controlar la ejecución paralela de un gran número de líneas de razonamiento, el sistema acumula modelos cada vez más útiles de su experiencia, lo que da lugar a una mejora recursiva que puede mantenerse de forma autónoma después de que la máquina abandone el laboratorio, dentro de los límites impuestos por sus diseñadores. 

AERA demuestra el aprendizaje acumulativo autosupervisado e independiente del dominio de tareas complejas. A diferencia de los sistemas de IA contemporáneos, los agentes basados en AERA destacan en el manejo de novedades -situaciones, información, datos, tareas- que sus programadores no podían prever. Es el único sistema implementable/ejecutado que existe para lograr una autosuperación recursiva acotada. 

Los agentes basados en AERA aprenden acumulativamente de la experiencia interactuando con el mundo y generando micromodelos composicionales causales-relacionales de su experiencia. Utilizando la abducción y la deducción no axiomáticas, predice constantemente cómo alcanzar sus objetivos activos y qué puede deparar el futuro, generando un plan de acción flexible e interrumpible de forma oportunista. 

AIXI [Inteligencia Algorítmica Universal: Un enfoque matemático de arriba abajo; Inteligencia Artificial Universal]. 

Una observación importante es que la mayoría de las facetas conocidas de la inteligencia, si no todas, pueden formularse como impulsadas por objetivos o, más exactamente, como maximización de alguna función de utilidad. 

La teoría de la decisión secuencial resuelve formalmente el problema de los agentes racionales en mundos inciertos si se conoce la verdadera distribución de probabilidad previa del entorno. La teoría de la inducción universal de Solomonoff resuelve formalmente el problema de la predicción de secuencias para una distribución previa desconocida. Combinamos ambas ideas y obtenemos una teoría sin parámetros de la Inteligencia Artificial universal. Damos argumentos sólidos de que el modelo AIXI resultante es el agente insesgado más inteligente posible. 

El mayor inconveniente del modelo AIXI es que no es computable, ... lo que hace imposible su implementación. Para superar este problema, construimos un modelo modificado AIXItl, que sigue siendo efectivamente más inteligente que cualquier otro algoritmo acotado en tiempo t y longitud l. 

Cyc [Cyc: Una inversión a gran escala en infraestructura del conocimiento; construcción de grandes sistemas basados en el conocimiento]. 

Para crear un sistema de inteligencia artificial general sería necesario codificar una enorme cantidad de conocimientos de sentido común que representen la realidad humana consensuada. Para imitar el razonamiento humano, Cyc necesitaría conocimientos básicos sobre ciencia, sociedad y cultura, clima y meteorología, dinero y sistemas financieros, sanidad, historia, política y muchos otros ámbitos de la experiencia humana. El equipo del proyecto Cyc esperaba codificar al menos un millón de hechos que abarcaran estas y otras muchas áreas temáticas. 

La base de conocimientos (KB) Cyc es una representación formalizada de una gran cantidad de conocimientos humanos fundamentales: hechos, reglas empíricas y heurísticas para razonar sobre los objetos y acontecimientos de la vida cotidiana. El medio de representación es el lenguaje formal CycL. El KB se compone de términos -que constituyen el vocabulario de CycL- y aserciones que relacionan esos términos. Estas aserciones incluyen tanto aserciones básicas simples como reglas. 

GPT-4 [Informe técnico GPT-4; Chispas de Inteligencia General Artificial]. 

Hemos creado GPT-4, el último hito en el esfuerzo de OpenAI por ampliar el aprendizaje profundo. GPT-4 es un modelo multimodal de gran tamaño (acepta entradas de imagen y texto, y emite salidas de texto) que, si bien es menos capaz que los humanos en muchos escenarios del mundo real, muestra un rendimiento de nivel humano en diversas pruebas de referencia profesionales y académicas. 

La combinación de la generalidad de las capacidades de GPT-4, con numerosas habilidades que abarcan una amplia gama de dominios, y su rendimiento en un amplio espectro de tareas a nivel humano o superior, nos permite afirmar que GPT-4 es un paso significativo hacia la AGI. 

HTM [Memoria temporal jerárquica; sobre la inteligencia]. 

En el núcleo de cada modelo Grok se encuentra el Algoritmo de Aprendizaje Cortical (CLA), un modelo detallado y realista de una capa de células del neocórtex. Contrariamente a la creencia popular, el neocórtex no es un sistema informático, sino un sistema de memoria. Al nacer, el neocórtex tiene estructura, pero prácticamente ningún conocimiento. Se aprende sobre el mundo construyendo modelos a partir de flujos de información sensorial. A partir de estos modelos, hacemos predicciones, detectamos anomalías y actuamos. 

En otras palabras, la mejor manera de describir el cerebro es como un sistema de modelado predictivo que convierte las predicciones en acciones. A continuación se describen tres principios operativos clave del neocórtex: representaciones distribuidas dispersas, memoria secuencial y aprendizaje en línea. 

LIDA [La arquitectura LIDA; Tutorial LIDA

El modelo conceptual LIDA, que aplica y desarrolla una serie de teorías psicológicas y neurocientíficas de la cognición, pretende ser una "teoría del todo" cognitiva. Con módulos o procesos para la percepción, la memoria de trabajo, la memoria episódica, la "conciencia", la memoria procedimental, la selección de acciones, el aprendizaje perceptivo, el aprendizaje episódico, la deliberación, la volición y la resolución de problemas no rutinarios, el modelo LIDA es ideal para proporcionar una ontología de trabajo que permita el debate, el diseño y la comparación de sistemas AGI. La tecnología LIDA se basa en el ciclo cognitivo LIDA, una especie de "átomo cognitivo". Los módulos cognitivos más elementales desempeñan un papel en cada ciclo cognitivo. Los procesos de nivel superior se realizan a lo largo de varios ciclos. 

La arquitectura LIDA representa entidades perceptuales, objetos, categorías, relaciones, etc., mediante nodos y enlaces ..... Éstos sirven como símbolos perceptivos que actúan como moneda común para la información a través de los diversos módulos de la arquitectura LIDA. 

MicroPsi [La arquitectura de agentes de MicroPsi; principios de la inteligencia sintética]. 

La arquitectura de agentes MicroPsi describe la interacción entre emoción, motivación y cognición de agentes situados, basándose principalmente en la teoría Psi de Dietrich Dorner. La teoría Psi aborda la emoción, la percepción, la representación y la racionalidad limitada, pero al estar formulada dentro de la psicología, ha tenido relativamente poca repercusión en el debate sobre agentes dentro de la informática. MicroPsi es una formulación de la teoría original de un modo más abstracto y formal, al tiempo que la mejora con conceptos adicionales para la memoria, la construcción de categorías ontológicas y la atención. 

El marco de agentes utiliza redes semánticas, llamadas redes de nodos, que son una representación unificada para estructuras de control, planes, esquemas sensoriales y de acción, redes bayesianas y redes neuronales. Así, es posible crear distintos tipos de agentes en el mismo marco. 

NARS [Inteligencia: De la definición al diseño; Flexibilidad rígida: La lógica de la inteligencia]. 

Lo que diferencia al SRNA de los sistemas de razonamiento convencionales es su capacidad para aprender de su experiencia y trabajar con conocimientos y recursos insuficientes. El NARS trata de explicar y reproducir de manera uniforme muchas facilidades cognitivas, como el razonamiento, el aprendizaje, la planificación, etc., con el fin de proporcionar una teoría, un modelo y un sistema unificados para la IA en su conjunto. El objetivo último de esta investigación es construir una máquina pensante. 

El desarrollo del SRNS sigue un planteamiento gradual que consta de cuatro etapas principales. En cada etapa, la lógica se amplía para dotar al sistema de un lenguaje más expresivo, una semántica más rica y un mayor conjunto de reglas de inferencia; a continuación, la memoria y el mecanismo de control se ajustan en consecuencia para soportar la nueva lógica. 

En los NARS, la noción de "razonamiento" se amplía para representar la capacidad de un sistema para predecir el futuro en función del pasado y satisfacer las demandas de recursos ilimitados utilizando la oferta de recursos limitados, mediante la combinación flexible de micropasos justificables en macrocomportamientos de forma independiente del dominio. 

OpenCog [La teoría general de la inteligencia general: A Pragmatic Patternist Perspective; Engineering General Intelligence, Part 1 and Part 2]. 

OpenCog, como marco de software, pretende proporcionar a los científicos investigadores y desarrolladores de software una plataforma común para construir y compartir programas de inteligencia artificial. El objetivo a largo plazo de OpenCog es acelerar el desarrollo de AGI beneficiosas. 

OpenCogPrime es un diseño específico de AGI que se está construyendo dentro del marco OpenCog. Viene con un diseño bastante detallado y completo que cubre todos los aspectos de la inteligencia. La hipótesis es que si este diseño se implementa completamente y se prueba en una red distribuida de tamaño razonable, el resultado será un sistema AGI con inteligencia general a nivel humano y, en última instancia, más allá. 

Aunque un sistema AGI basado en OpenCogPrime podría hacer muchas cosas, inicialmente nos estamos centrando en utilizar OpenCogPrime para controlar agentes virtuales simples en mundos virtuales. También estamos experimentando con su uso para controlar un robot humanoide Nao. Visite http://novamente.net/example para ver algunos vídeos ilustrativos. 

Sigma [Lessons from Mapping Sigma onto the Standard Model of the Mind; The Sigma Cognitive Architecture and System] SigmaSNePS [The GLAIR Cognitive Architecture; SNePS Tutorial]. 

El objetivo a largo plazo del Grupo de Investigación SNePS es comprender la naturaleza de los procesos cognitivos inteligentes desarrollando y experimentando con agentes cognitivos computacionales capaces de utilizar y comprender el lenguaje natural, razonar, actuar y resolver problemas en una amplia variedad de dominios. 

El sistema de representación del conocimiento, razonamiento y actuación SNePS tiene varias características que facilitan la metacognición en los agentes basados en SNePS. La más destacada es el hecho de que las proposiciones se representan en SNePS como términos y no como oraciones lógicas. El efecto es que las proposiciones pueden aparecer como argumentos de proposiciones, actos y políticas sin límite, y sin abandonar la lógica de primer orden. 

Soar [Introducción a Soar; Arquitectura cognitiva de Soar]. 

El colmo de la inteligencia sería la racionalidad completa, que implicaría la capacidad de utilizar todos los conocimientos disponibles para cada tarea a la que se enfrente el sistema. Desgraciadamente, la complejidad de la recuperación de los conocimientos pertinentes pone este objetivo fuera de nuestro alcance a medida que aumenta el acervo de conocimientos, se diversifican las tareas y se endurecen los requisitos en cuanto al tiempo de respuesta del sistema. Lo mejor que puede obtenerse actualmente es una aproximación a la racionalidad completa. El diseño de Soar puede verse como una investigación de una de esas aproximaciones. 

Durante muchos años, un principio secundario ha sido minimizar el número de mecanismos arquitectónicos distintos. En Soar 8, ha habido un único marco para todas las tareas y subtareas (espacios de problemas), una única representación del conocimiento permanente (producciones), una única representación del conocimiento temporal (objetos con atributos y valores), un único mecanismo para generar objetivos (subobjetivos automáticos) y un único mecanismo de aprendizaje (fragmentación). Hemos revisado este supuesto para asegurarnos de que todo el conocimiento disponible pueda capturarse en tiempo de ejecución sin perturbar el rendimiento de la tarea. Esto está dando lugar a múltiples mecanismos de aprendizaje (fragmentación, aprendizaje por refuerzo, aprendizaje episódico y aprendizaje semántico) y múltiples representaciones del conocimiento a largo plazo (producciones de conocimiento procedimental, memoria semántica y memoria episódica). 

Otros dos principios que guían el diseño de Soar son la funcionalidad y el rendimiento. La funcionalidad implica garantizar que Soar disponga de todas las capacidades primitivas necesarias para realizar el conjunto completo de capacidades cognitivas utilizadas por los humanos, incluyendo, entre otras, la toma de decisiones reactiva, la conciencia situacional, el razonamiento y la comprensión deliberados, la planificación y todas las formas de aprendizaje. El rendimiento implica garantizar la existencia de algoritmos computacionalmente eficientes para realizar las operaciones primitivas de Soar, desde la recuperación de conocimientos de la memoria a largo plazo hasta la toma de decisiones y la adquisición y almacenamiento de nuevos conocimientos. 

Una clasificación aproximada 

Los proyectos AGI anteriores se clasifican a grandes rasgos en la siguiente tabla, según el tipo de sus respuestas a la 1ª pregunta (sobre el objetivo de la investigación) y la 3ª pregunta (sobre la trayectoria técnica) anteriormente enumeradas. 

objetivo \ camino 


híbrido 


integrado 

unificado 

principio 

  

  

AERA, AIXI, NARS 

función 

  

OpenCog, Sigma, Soar 


SNePS 

capacidad 

  

  

Cyc 

comportamiento 

  

ACT-R, LIDA, MicroPsi 


GPT-4 


estructura 

  

  

HTM 

Dado que esta clasificación se hace a un nivel alto, los proyectos de una misma entrada de la tabla siguen siendo bastante diferentes en los detalles de sus objetivos de investigación y trayectorias técnicas. 

En resumen, los proyectos AGI actuales se basan en teorías y técnicas muy diferentes. 

Literaturas y recursos AGI 

Colecciones AGI: 

La primera recopilación de obras sobre AGI es Inteligencia General Artificial. Aunque este libro se publicó en 2007, el manuscrito se terminó en 2003. 

La serie de conferencias internacionales anuales de AGI se inició en 2008. Los sitios web de las conferencias ofrecen enlaces a todas las ponencias aceptadas, además de material adicional como archivos de presentaciones y grabaciones de vídeo. 

Journal of Artificial General Intelligence (JAGI) es una revista revisada por pares con acceso abierto, iniciada en 2009. 

La conferencia y la revista AGI están gestionadas por la Sociedad de Inteligencia General Artificial (AGIS). Todos los interesados en AGI pueden hacerse miembros. 

Espacios de comunicación y medios sociales dedicados a la AGI o a la investigación relacionada: 

Material educativo para estudiantes: 

Otros recursos AGI: 


Author profile
Jose Melgarejo

Jose Melgarejo is a seasoned writer with extensive experience in detailed analysis and narrative construction. He specializes in producing well-researched, clear, and informative content for various publications, effectively communicating complex topics to a broad audience.


Related Articles
logo
Estadísticas Descriptivas Estadísticas Descriptivas CSR

Original article: https://hawksites.newpaltz.edu/glenngeher/descriptivestats/
By: Dr. Glenn Geher


Funciones Básicas de SPSS

1.Frecuencias, Descriptivos, Histogramas

Al trabajar con datos, un primer paso típico es calcular frecuencias para todas las variables categóricas y calcular estadísticas descriptivas para todas las variables continuas. Además, crear histogramas para variables continuas es un buen primer paso. En esta primera sección, donde está aprendiendo estas habilidades, podría ser útil si elige variables específicas de su propio conjunto de datos para analizar.

Así es como se hace todo esto divertido:

El comando "frecuencias" en SPSS le permite saber qué tan comunes son los diferentes valores de una variable categórica en la muestra. Por ejemplo, puede usar este comando para determinar cuántos hombres y mujeres (en una variable, quizás, llamada "género") se incluyeron en su muestra. Para calcular las frecuencias, haga lo siguiente:

A. Elija una variable categórica.

B. En la vista de datos, haga clic en "analizar", luego en "estadísticas descriptivas", luego en "frecuencias".

C. Elija la variable categórica apropiada para incluir en su lista de variables.

D. Luego haga clic en "pegar" para colocar el comando en un archivo de sintaxis.

E. Ejecute esa parte del archivo de sintaxis.

El comando "descriptivos" proporciona información sobre variables continuas. Por ejemplo, puede obtener información sobre el rango de puntuaciones, la media de la variable, la desviación estándar y el número de casos. Para ejecutar este comando, haga lo siguiente:

A. Elija una variable continua.

B. En la vista de datos, haga clic en "analizar", luego en "estadísticas descriptivas", luego en "descriptivos".

C. Elija la variable continua apropiada para incluir en su lista de variables.

D. Luego haga clic en "pegar" para colocar el comando en un archivo de sintaxis.

E. Ejecute esa parte del archivo de sintaxis.

El comando "histograma" proporciona un gráfico de cuán común es cada puntuación para una variable continua. Este gráfico puede, por ejemplo, darle una idea de si su variable está distribuida normalmente. Para ejecutar este comando, haga lo siguiente:

A. Elija una variable continua.

B. En la vista de datos, haga clic en "gráficos", luego en "cuadros de diálogo heredados", luego en "histograma".

C. Elija la variable continua apropiada para incluir en su lista de variables.

D. Luego haga clic en "pegar" para colocar el comando en un archivo de sintaxis.

E. Ejecute esa parte del archivo de sintaxis.

F. ¡Mire su hermoso gráfico!

2. Frecuencias, Descriptivos, Histogramas para datos medidos en clase.

Para esta parte, necesita recopilar datos de las personas en el laboratorio sobre una variable continua y una variable categórica. Recopilará estos datos en grupo (es decir, toda la clase acordará la variable a medir). Un ejemplo de la variable continua podría ser la altura (en pulgadas); un ejemplo de la variable categórica podría ser el género (masculino o femenino). Recopile datos de todos en el laboratorio. A continuación, analizará estos datos y redactará un breve informe de laboratorio.

A. La variable continua.

Para esta variable, usará SPSS para calcular estadísticas descriptivas. En su informe, indique el rango, la media, la desviación estándar y la N para esta variable. A continuación, use SPSS para crear un histograma para esta variable. Resuma brevemente este histograma e incluya la salida de SPSS (como un archivo adjunto) tanto con el resumen de los descriptivos como con el histograma.

B. La variable categórica.

Para esta variable, usará SPSS para calcular frecuencias. Simplemente resuma la frecuencia de los diferentes valores en su informe. Incluya también la salida de SPSS para el comando de frecuencias como un archivo adjunto. Si tiene algo interesante que decir sobre estos resultados, describa estos puntos en su informe.

Qué entregar:

Su informe resumiendo (a) qué variables se examinaron y (b) los resultados con respecto a estos análisis.

Una impresión del archivo(s) de sintaxis para todos los comandos.

Una impresión del archivo(s) de datos.

Una impresión del archivo(s) de salida.

logo
Una charla divertida sobre teletransportación Una charla divertida sobre teletransportación CSR

Artículo original: https://www-users.york.ac.uk/~sb54/tport.html

Por:Samuel L. Braunstein

Di una charla al Club de Ciencia Ficción de Rehovot el 31 de enero sobre teletransportación cuántica y otras cosas locas. Me pidieron que intentara escribir la primera parte de mi charla donde consideraba qué significa "teletransportación" y cuán difícil podría ser realmente. No pretendo que esto sea definitivo sobre el tema, solo mis pensamientos al respecto. Mis propios intereses de investigación se encuentran realmente en los fenómenos cuánticos fundamentales y fuera de ese campo es probable que tropiece como cualquier otro.

Para empezar, preguntémonos qué podríamos querer decir con el término "teletransportación". Después de todo, si alguien se te acerca diciendo "mira, finalmente lo hice, descubrí cómo teletransportar...", nos gustaría poder decidir si estábamos hablando el mismo idioma. Bien, así que he visto Star Trek®, así que creo que puedo intentar definirlo:

La teletransportación es algún tipo de transporte "desmaterializado" instantáneo.

¡Ahora espera un segundo, no puedo comprar eso! La teoría de la relatividad de Einstein, y muchas décadas de evidencia experimental lo respaldan hasta el fondo, dicen que la velocidad más rápida es la velocidad de la luz. Si tomamos esto como parte de la ciencia normativa, tendremos que cambiar nuestra definición inmediatamente a:

La teletransportación es algún tipo de transporte "desmaterializado".

(Al menos por el momento.)

Bueno, eso es un poco mejor, pero he sido bastante vago con lo que quiero decir con desmaterializado. Quizás debería dejar que la siguiente figura sea nuestra mejor guía sobre lo que eso podría significar:

Creo que si pienso en esta definición por un rato, empiezo a darme cuenta de que ya tenemos muchos ejemplos de teletransportación a nuestro alrededor todos los días:

  • teléfono: transporta ondas de sonido como electricidad.
  • fax: transporta una imagen.
  • Red mundial:...

Bueno, ¿esto cuenta como teletransportación? Son realmente procesos de copia. Dejan el sonido, la imagen, lo que sea atrás y envían la copia disparándose a través del espacio de una manera incorpórea. Mmm, ¿deberíamos comprar esto? No dejan una copia atrás en nuestro programa de televisión favorito. Bueno, tal vez eso es lo que hacen. Tienen una máquina que mide las posiciones y velocidades y los tipos de átomos a través de toda la persona y luego envían esa información (digamos por ondas de radio) al lugar donde el cuerpo es reconstruido por otra máquina. Bueno, en la televisión también aprendieron a recrear a la persona a partir de la información aparentemente sin una máquina para recibirla. (¡Una cosa a la vez, por favor!)

¿Qué pasa con el original? Bueno, tal vez la máquina que mide todos esos átomos tenga que cortar a la persona en pedazos para hacerlo. Supongo que sería como una fotocopiadora con una lámpara de flash que estaba demasiado caliente (vaporizando el original). Esto no sería un requisito absoluto. Tan pronto como alguien descubriera cómo construir un proceso de copia más suave, podrían dejar el original atrás. ¿Quisieran? ¿Se copiaría el alma? ¿Tendría que seguir pagando impuestos la copia si el original todavía estuviera presente? Supongo que no puedo responder todas las preguntas urgentes.

Por supuesto, si alguna vez pudiéramos aprender a hacer esto, podríamos encontrar nuevos campos de investigación como la "religión experimental". ¿Quién sabe?

¿De cuánta información estamos hablando de todos modos? Bueno, el proyecto del cuerpo humano visible del Instituto Nacional de Salud de Estados Unidos requiere aproximadamente 10 Gigabytes (eso es aproximadamente 10^11 = 100,000,000,000 "bits", o respuestas sí/no, esto es aproximadamente diez CD ROM) para dar los detalles tridimensionales completos de un humano hasta una resolución de un milímetro en cada dirección. Si olvidamos reconocer los átomos y medir sus velocidades y simplemente escalamos eso a una resolución de una longitud atómica en cada dirección, eso es aproximadamente 10^32 bits (un uno seguido de treinta y dos ceros). ¡Esta es tanta información que incluso con las mejores fibras ópticas concebibles tomaría más de cien millones de siglos transmitir toda esa información! ¡Sería más fácil caminar! Si empaquetáramos toda esa información en CD ROM cabría en un cubo de casi 1000 kilómetros de lado! ¿Suficiente dicho?

Oye, pero todos ustedes están gritando "¿qué pasa con el principio de incertidumbre, puedes realmente medir las cosas con tanta precisión?" Bueno, la teoría cuántica nos dice que la precisión con la que podemos medir la posición y la velocidad de cualquier partícula está limitada por una fórmula muy simple:

Si queremos medir cada átomo dentro de un tamaño atómico típico, esto significa que las velocidades serán inciertas en aproximadamente 300 metros por segundo (si la partícula pesa tanto como un átomo de hidrógeno, digamos).

Esto suena rápido, pero no es tan malo. El bamboleo ordinario de nuestros átomos debido a que estamos a temperatura ambiente es más grande que esto en un factor de tres o más. En otras palabras, el principio de incertidumbre no parece ser demasiado restrictivo en términos de cuán bien podemos medir esos átomos.

Por supuesto, eso no es todo. ¿Qué pasa con el "estado cuántico" de esos átomos? ¿Importa en qué niveles de energía están todos? ¿Necesitan las reacciones químicas tener esta información para funcionar una vez que volvamos a ensamblar los átomos para hacer una persona? Bueno, ¡mi mejor suposición es que no! Como lo es la mejor suposición de varios otros científicos a los que también les he preguntado. Pero esa no es una respuesta definitiva. Creo que lo que tiende a convencerme de que el estado cuántico detallado no es importante para hacerlo bien cuando quieres copiar a una persona y hacer una nueva a partir de la información parcial es que las personas suelen ir a los hospitales para realizar resonancias magnéticas nucleares (RMN) y resonancias de espín electrónico (ESR) escaneos para ver dentro de ellos. Estos procedimientos mezclan los estados cuánticos de al menos un gran número de átomos y núcleos de las personas escaneadas, pero no parece perturbar su apetito (eso los hace seguir siendo humanos en mi libro). Así que aquí nuevamente la naturaleza cuántica de nuestros átomos y moléculas no parece descartar el método de copia para la teletransportación.

¡La enorme cantidad de información involucrada sigue siendo alucinante! ¡Quizás deberíamos empezar con algo más pequeño ...!

logo
Limitaciones de la arquitectura IBM PC Limitaciones de la arquitectura IBM PC CSR

Limitaciones de la arquitectura IBM PC

o

La maldición de los segmentos

Artículo Original: https://theworld.com/~swmcd/steven/rants/pc.html

Por: Steven W. McDougall

Historia antigua

Altair comercializó el primer "ordenador personal" en 1975. Era un verdadero ordenador, y podía comprarse en forma de kit, por 400 dólares. La entrada se realizaba a través de interruptores de palanca en el panel frontal; la salida a través de LEDs en el panel frontal (encendido/apagado, no de 7-segmentos). Su mercado estaba formado principalmente por aficionados y piratas informáticos.

A finales de los 70, había ordenadores personales de muchos fabricantes como Tandy, Commodore, TI y Apple. Los ordenadores de distintos fabricantes no eran compatibles. Cada fabricante tenía su propia arquitectura, su propio sistema operativo, su propia interfaz de bus y su propio software. Cuando se compraba un ordenador, implícitamente se asumía un importante compromiso con los estándares de ese proveedor.

El 6502

En 1980, el Commodore 6502 ejemplificaba el estado del arte de la arquitectura. El 6502 es un microprocesador de un solo chip, con una arquitectura 8/16, es decir, un bus de datos de 8 bits y un bus de direcciones de 16 bits. El modelo de programación refleja la arquitectura del hardware: los registros que contienen valores de datos, como el acumulador, son de 8 bits, mientras que los registros que contienen direcciones, como el contador de programa, son de 16 bits. Un bus de direcciones de 16 bits produce un espacio de direcciones de 64K bytes. A principios de los 80, las DRAM de 64K estaban ampliamente disponibles, y los ordenadores basados en el 6502, como el Commodore 64 y el Apple ][, se comercializaban con un complemento completo de 64K bytes de RAM.

En 1980, IBM decidió entrar en el mercado de los PC. Se dieron cuenta -correctamente- de que la interminable caída de los precios de la DRAM pronto dejaría obsoleta la arquitectura 8/16. El siguiente paso lógico habría sido, digamos, una arquitectura 16/32, como la del Motorola 68000. Una arquitectura 16/32 habría mejorado el rendimiento duplicando el ancho de banda de la memoria y habría proporcionado un espacio de direcciones de 4G bytes, suficiente para el futuro previsible.

Lamentablemente, el 68000 no estaba disponible en 1980, como tampoco lo estaba ningún otro microprocesador de un solo chip con arquitectura 16/32. El problema es que el tamaño de la matriz aumenta directamente con la anchura de registro. Cuando se pasa de 8/16 a 16/32, todos los registros son el doble de grandes, todas las rutas de datos son el doble de anchas, la cadena de transporte del sumador de la ALU tiene el doble de términos... Todo el diseño duplica su tamaño. Y en 1980, la tecnología de procesos no había alcanzado el punto en el que se pudiera fabricar un microprocesador 16/32 de un solo chip a un precio comercializable.

El 8086

Lo que estaba disponible era el Intel 8086. El 8086 fue un intento mal concebido de proporcionar un espacio de direcciones mayor de 64K bytes sin incurrir realmente en los costes de una arquitectura mayor. El 8086 es básicamente una arquitectura 16/16. Tiene un contador de programa de 16 bits, una ALU de 16 bits, cuatro registros de propósito general de 16 bits y algunos registros de índice de 16 bits. También tiene cuatro registros de segmento de 16 bits. El 8086 realiza todos los cálculos y transferencias de datos en aritmética de 16 bits, con una excepción. Inmediatamente antes de pasar una dirección al bus de direcciones externo, el 8086 selecciona uno de los registros de segmento, lo desplaza 4 bits a la izquierda y le añade la dirección, utilizando aritmética de 20 bits. La dirección externa es por tanto de 20 bits, y el procesador tiene un espacio de direcciones de 1M de bytes.

Los cuatro registros de segmento definen cuatro segmentos:

CS

el segmento de código

DS

el segmento de datos

SS

el segmento de pila

ES

el segmento extra

La mayoría de las operaciones utilizan implícitamente el registro de segmento correcto: las búsquedas de instrucciones utilizan CS, las cargas y los almacenamientos utilizan DS, y las inserciones y extracciones utilizan SS. Unas pocas operaciones, como el movimiento de bloque, utilizan tanto DS como ES: uno para el origen y otro para el destino.

La documentación de Intel describe esta arquitectura como una comodidad de programación: aquí está tu código, aquí están tus datos, cada uno almacenado ordenadamente en su propio segmento. A los estudiantes de informática también les gustan las arquitecturas segmentadas por varias razones relacionadas con el diseño de sistemas operativos.

Sin embargo, programar esta máquina es una pesadilla. Nunca se puede abordar cualquier cosa. Primero, tienes que asegurarte de que un registro de segmento está configurado para ello, y luego tienes que construir la dirección como un offset en ese segmento. Un registro de segmento puede apuntar a cualquier lugar en todo el espacio de direcciones de 1M de bytes, pero una vez que se ha configurado, sólo proporciona acceso a un segmento de 64K. Si tienes más de 64K de código o datos, tienes que recargar los registros de segmento sobre la marcha. Un problema particular es que no hay una buena manera de indexar en un array que es mayor de 64K bytes.

IBM y los clones

En circunstancias normales, un diseño tan retorcido y defectuoso como el 8086 simplemente habría sido ignorado por el mercado y se habría desvanecido. Sin embargo, 1980 fue el año de la suerte para Intel. IBM eligió el 8086 como procesador para el PC. Respaldado por el poder de marketing y el reconocimiento del nombre de IBM, el IBM PC se hizo rápidamente con la mayor parte del mercado. Otros fabricantes abandonaron el mercado del PC (TI), se dedicaron a nichos de mercado (Commodore, Apple) o abandonaron su propia arquitectura en favor de la de IBM (Tandy). Con una cuota de mercado cercana al 90%, el PC se convirtió en un estándar de facto. Los fabricantes de software crearon sistemas operativos (MicroSoft DOS, Digital Research DOS), hojas de cálculo (Lotus 123), procesadores de texto (WordPerfect, WordStar) y compiladores (MicroSoft C, Borland C) para PC. Los proveedores de hardware fabrican unidades de disco, impresoras y sistemas de adquisición de datos que se conectan al bus externo del PC.

Aunque IBM acaparó inicialmente el mercado de los ordenadores personales, posteriormente lo perdió en favor de los vendedores de clónicos. Acostumbrada a ser un proveedor monopolístico de ordenadores centrales, IBM no estaba preparada para la feroz competencia que surgió cuando Compaq, Leading Edge, AT&T, Dell, ALR, AST, Ampro, Diversified Technologies y otros se disputaron una parte del mercado de PC. Además de precios bajos y alto rendimiento, los vendedores de clónicos aportaron otra cosa muy importante al mercado de PC: un estándar de hardware absoluto. Para vender un clon de PC, el fabricante tenía que poder garantizar que ejecutaría todo el software de PC existente del cliente y que funcionaría con todo el hardware periférico existente del cliente. La única forma de conseguirlo era diseñar el clon para que fuera idéntico al IBM PC original a nivel de registros. Así, el estándar que definió el IBM PC quedó grabado en piedra cuando docenas de proveedores de clónicos distribuyeron millones de máquinas que se ajustaban a él en todos sus detalles. Esta estandarización ha sido un factor importante en el bajo coste y la amplia disponibilidad de los sistemas PC. También ha sido un serio obstáculo en el intento de superar las limitaciones de la arquitectura del PC.

Espacio de direcciones azul

El 8086 proporciona al PC un espacio de direcciones de 1M de bytes. Esto se muestra convenientemente como dieciséis segmentos disjuntos de 64K bytes, asignados de la siguiente manera:

Segmento

Uso

0-9

RAM

A-B

RAM de vídeo

C-D

ROM en tarjetas de E/S

E-F

ROM BIOS (código del sistema operativo)

Con 10 segmentos permitidos para la RAM, el PC puede direccionar hasta 640K bytes de memoria principal. El espacio entre 640K y 1M se reserva para uso del hardware y del sistema operativo. A mediados de los 80, esta arquitectura se estaba quedando obsoleta. Había disponibles chips DRAM de 256K y 1M bytes; los usuarios compraban PCs con una dotación completa de 640K de RAM y querían más. Desgraciadamente, como muestra la tabla anterior, no hay sitio para poner más memoria en un PC.

Una solución fueron los sistemas de memoria de selección bancaria. Un vendedor diseñaba una tarjeta de memoria, añadía algunos registros de selección de banco y asignaba bloques seleccionados de memoria al espacio de direcciones del PC, normalmente en C0000. Con un sistema de selección de banco, el programador es el responsable de gestionar los registros de selección de banco y de realizar un seguimiento de qué banco tiene qué datos. En la actualidad, los sistemas de selección de banco suelen ajustarse a la especificación de memoria expandida de Lotus/Intel/MicroSoft (LIM-EMS). En este contexto, la palabra "ampliada" se refiere específicamente a un sistema de selección de bancos.

La memoria expandida permitió sin duda que algunos programas utilizaran más de 640K de RAM, pero es claramente inadecuada como solución a largo plazo a la necesidad de más memoria. La única solución real es pasar a una arquitectura más grande. Intel dio el primer paso introduciendo el procesador 80286.

El 80286

El 80286 es similar al 8086 en concepto. Es una arquitectura 16/24. Los buses de datos y registros son de 16 bits. El bus de direcciones externo es de 24 bits, proporcionando un espacio de direcciones de 16M bytes. Las direcciones se especifican con un selector de segmento de 16 bits y un offset de 16 bits. El selector de segmento especifica un descriptor de segmento residente en memoria. El descriptor de segmento tiene una base de segmento de 24 bits, un tamaño de segmento de 16 bits y algunos bits de atributo. Para generar una dirección, el desplazamiento de segmento de 16 bits se añade a la dirección base de segmento de 24 bits utilizando aritmética de 24 bits y, a continuación, se envía al bus de dirección externo.

El 80286 proporciona al programador un espacio de direcciones de 16M bytes. Sin embargo, todavía está limitado por la necesidad de manipular registros de segmento, y el hecho de que cada segmento está limitado a 64K bytes, como en el 8086. Más importante aún, el 80286 está limitado por la necesidad de seguir siendo compatible con PC.

Intel sabía que no podría comercializar un nuevo procesador a menos que pudiera ejecutar los programas de PC existentes. Por lo tanto, diseñaron el 80286 con dos modos de ejecución diferentes: modo real y modo protegido. El modo protegido es la arquitectura 16/24 que acabamos de describir. El modo real es una emulación exacta de la arquitectura 8086 16/16. El modo real es a veces llamado modo DOS. Cuando un 80286 se enciende, arranca en modo real. Esto le permite funcionar como el procesador de un clon de IBM PC. Utilizado de esta manera, el 80286 proporciona un aumento de rendimiento, debido a sus relojes más rápidos y buses de datos de 16 bits. Sin embargo, el programador aún está restringido a la arquitectura PC, con su espacio de direcciones de 1M de bytes y la limitación de 640K de RAM. Dado que los programas DOS y PC no se ejecutarán en un procesador 80286 en modo protegido, la mayoría de los procesadores 80286 se ejecutan en modo real.

La locura de la memoria extendida

Hoy en día, la mayoría de los PCs 80286 se entregan con varios megabytes de RAM. Dado que el 80286 tiene un espacio de direcciones de 16M bytes, esta memoria se direcciona linealmente-no es necesario hardware de selección de banco. En modo protegido, toda la memoria es utilizable. En modo real, los primeros 640K de memoria son accesibles, como en la arquitectura estándar de PC, y el resto no. La memoria que es inaccesible porque se encuentra por encima del límite de 640K de la arquitectura original del PC se denomina memoria extendida, que no debe confundirse con la memoria expandida.

El uso más común de la memoria extendida es proporcionar un disco RAM para un sistema DOS. Cuando el programa quiere acceder a los datos almacenados en el disco RAM, activa un bit de modo que cambia el 80286 a modo protegido. Esto le da acceso a la memoria extendida. El programa entonces realiza la transferencia de datos deseada entre su propio espacio de memoria y el disco RAM en la memoria extendida. Resulta que no hay forma de volver del modo protegido al modo real, por lo que el programa debe entonces guardar su estado y reiniciar el procesador. Al reiniciarse, el procesador reanuda la ejecución del programa original en modo real. En la práctica, todo esto es manejado por un controlador de dispositivo para el disco RAM, como RAMDRIVE.SYS.

Intel pretendía que el 80286 proporcionara un camino para la evolución ascendente de los sistemas de PC. En concreto, esperaban que su modo de compatibilidad con DOS le permitiera ganar aceptación y que, una vez que hubiera una base instalada suficiente de procesadores 80286, los desarrolladores de software empezaran a escribir sistemas operativos y programas que utilizaran las características del modo protegido. Lo que ocurrió en realidad fue que los vendedores de clónicos de PC lo utilizaron como un 8086 de alto rendimiento, los usuarios lo ejecutaron casi exclusivamente en modo real y los desarrolladores de software se resistieron a las complejidades y limitaciones de la arquitectura segmentada en modo protegido.

El 80386

La siguiente oferta de Intel fue el 80386. Como el 80286, el 80386 tiene una arquitectura segmentada, y como el 80286, tiene dos modos de ejecución: real y protegido.

En modo protegido, el 80386 es una arquitectura 32/32. El esquema de segmentación es aún más complejo que el del 80286, y te ahorraré los detalles. Sin embargo, permite desplazamientos de segmento de 32 bits, por lo que un único segmento puede tener hasta 4G bytes. Esto permite al programador definir un único segmento que cubra toda la memoria disponible, en lugar de tener que hacer malabarismos continuamente con una colección de segmentos de 64K bytes. También permite indexar en matrices de más de 64K bytes.

En modo real, el 80386 proporciona una emulación exacta de la arquitectura 8086 16/16.

Desafortunadamente, las capacidades del 80386 son poco más utilizadas que las del 80286. Los programas DOS y PC no se ejecutarán en un procesador 80386 en modo protegido, por lo que la mayoría de los procesadores 80386 se ejecutan en modo real. El procesador de mi máquina actual funciona en modo real. Proporciona acceso a 640K bytes de memoria principal y a un disco RAM de 3456K bytes, para un total de 4M bytes de RAM instalada.

Modelos de memoria

Nos guste o no, existen millones de PCs y tenemos que programarlos en modo real. MicroSoft C proporciona amplias facilidades para sacar lo mejor de una mala situación.

Una cuestión es si las direcciones son de 16 bits o de 32 bits. Una dirección de 16 bits proporciona un desplazamiento dentro de un único segmento. El registro del segmento ya debe estar cargado con la dirección base correspondiente. Una dirección de 32 bits proporciona tanto una dirección base de segmento como un desplazamiento dentro de ese segmento. Cuando se accede a la memoria a través de una dirección de 32 bits, el programa carga primero el registro de segmento a partir de los 16 bits superiores de la dirección y, a continuación, utiliza los 16 bits inferiores de la dirección como desplazamiento dentro de ese segmento. Las direcciones de 32 bits requieren más memoria y más ciclos de CPU, pero proporcionan acceso a todo el espacio de direcciones de 1M de bytes del procesador 8086.

Si un programa tiene menos de 64K de datos, entonces puede poner todos sus datos en un único segmento de datos y utilizar direcciones de 16 bits para acceder a él. Del mismo modo, si un programa tiene menos de 64K de código, puede poner todo su código en un único segmento de código y utilizar direcciones de 16 bits para saltos y llamadas a subrutinas. Por el contrario, si el código o los datos no caben dentro de estos límites, el programa debe utilizar direcciones de 32 bits. MicroSoft C contempla las cuatro posibilidades mediante un conjunto de modelos de memoria:

Modelo de memoria

Direcciones de datos

Direcciones de código

Pequeña

16 bits

16 bits

Pequeña

16 bits

16 bits

Compacta

32 bits

16 bits

Mediana

16 bits

32 bits

Grande

32 bits

32 bits

Enorme

32 bits

32 bits

El modelo de memoria Tiny es igual que el modelo Small, salvo que el tamaño de los segmentos de código y datos juntos no debe superar los 64K bytes. Además, el modelo Tiny produce un archivo .COM en lugar de un archivo .EXE. Los archivos .COM son ligeramente más pequeños y se cargan más rápido en DOS.

El modelo de memoria Enorme es el mismo que el modelo de memoria Grande, excepto que las matrices individuales pueden superar los 64K bytes de tamaño. Sin embargo, las direcciones se siguen almacenando como pares segmento:offset, y el compilador no realiza la aritmética completa de direcciones de 32 bits en ellas. En consecuencia, las matrices de gran tamaño están sujetas a la restricción de que el tamaño del elemento de la matriz debe ser una potencia de 2.

La elección del modelo de memoria es una opción en tiempo de compilación, por lo que puede experimentar fácilmente con diferentes modelos.

_________________________________________________________________________________________________________________________

Notas

mal concebido, retorcido y defectuoso

En mi opinión

8086

En realidad, el IBM PC utilizaba el 8088, no el 8086. El 8088 es el mismo que el 8086 internamente, pero tiene un bus de datos externo de 8 bits. De este modo, el ancho de banda de la memoria se sustituye por un menor coste del sistema.

expandido

Piensa en un acordeón, con el fuelle expandiéndose por detrás del teclado.

80286

También existe un procesador 80186. Es esencialmente un 8086 con relojes, controladores de interrupción y otros circuitos de apoyo integrados en un solo chip. Se utiliza principalmente como procesador integrado en equipos de control industrial.

extendido

Piensa en una torre, con pisos adicionales que se extienden cada vez más alto.

reiniciar el procesador

No me lo estoy inventando.

___________________________________________________________________________________________________________________________


Esta obra está bajo una Licencia Creative Commons Atribución 4.0 Internacional.

Steven W. McDougall / curriculum vitae / [email protected] / febrero de 1992

logo
Confrontación con las Autoridades en Greenville, Alabama Confrontación con las Autoridades en Greenville, Alabama CSR

Articulo Original: https://www.crmvet.org/lets/65wolfe.htm

Por crmvet.org

Rev. Dr. Janet E. Wolfe

6 de Agosto de 1945

...¡Aleluya! ¡Acabamos de presenciar la firma de la Ley Federal de Derechos Electorales! Sin embargo, es tan tarde que definitivamente ha limitado la efectividad de nuestro trabajo para registrar negros durante el Proyecto SCOPE.

Tenemos la emoción aquí, en caso de que no lo hayan leído en la prensa. La semana pasada, Hosea Williams, director del Proyecto SCOPE, emitió una orden para manifestaciones generales para acelerar la aprobación final del proyecto de ley de derechos electorales.

Programamos una manifestación sobre eso y sobre el hecho de que los registradores no nos habían notificado quién había pasado la prueba de alfabetización. Solicitamos un permiso; fue denegado; marchamos de todos modos. Bajamos unas dos cuadras por South Park Street desde el árbol chinaberry, nuestra "iglesia", donde se celebraban reuniones masivas. La policía había bloqueado la calle con sus coches y estaba armada con garrotes y gases lacrimógenos. El jefe anunció que no toleraría una violación de la ley. Entonces nos sentamos en medio de la calle, unas 150 personas. Permanecimos sentados en la calle desde las 11:00 a.m. hasta las 6:15 p.m., cantando canciones, escuchando discursos y rezando.

Aproximadamente a las 3:00 p.m., la policía levantó una barricada de madera al otro lado de la calle. A las 6:15, R.B. Cottonreader, líder del Proyecto SCOPE, decidió intentar moverse. Derribó la barricada y nos formamos en una columna. La policía no nos advirtió, pero empezó a lanzar bombas de gas lacrimógeno. Como se había acordado de antemano, nos tiramos al suelo con toallas tapándonos la cara. Algunos corrieron; Sentí que tres o cuatro me pasaban por encima. Retrocedimos lentamente hacia las mangueras de agua instaladas detrás de nosotros por el médico; el mejor tratamiento para el gas lacrimógeno es el agua.

La policía usó gas fuerte; generalmente no lastima a las personas, pero algunos recibieron quemaduras de primer y segundo grado. Una niña fue golpeada con un garrote. ¡La policía les quitó las toallas a algunos de la primera fila, incluso a niños pequeños! Luego les rociaron gas directamente en la cara.

¡Nos reagrupamos debajo del árbol chinaberry y tuvimos la reunión masiva más grande del verano! Ahora tenemos un movimiento. Las madres no se sientan a ver cómo sus hijos reciben gas lacrimógeno y garrotes sin involucrarse en el movimiento.

Como solemos cantar "Ain't gonna let nobody turn me round" (No voy a dejar que nadie me detenga), decidimos volver a la barricada el miércoles. Salimos del árbol chinaberry a la 1:00 p.m. y nos sentamos en la calle, a unos 30 pies detrás de la barricada, hasta las 6:15. En ese momento nos desorganizamos un poco; demasiada gente deambulaba detrás de nosotros. Además, un gran grupo de acosadores blancos se había reunido a media cuadra detrás de la policía. (Todo esto ocurría en el sector de color.)

Estábamos en proceso de reagruparnos. De repente, Elijah Poole, el nervioso abogado de la ciudad, y la policía atravesaron la barrera hacia nosotros. Estábamos cantando "We Shall Overcome" (Venceremos). Poole anunció en su altavoz portátil: "Les doy un minuto para dispersarse. Cualquiera que no sea parte de esta basura, es mejor que se largue." Nos tiramos en la calle, con la cara tapada. Como solo quedaban unas 50 personas, maltrataron a casi todos.

Un bote de gas lacrimógeno explotó muy cerca de mi oído izquierdo y no pude escuchar la orden de R.B. Cottonreader de marcharme. Permanecí acostada durante cinco minutos, según me dijo un periodista. Un policía me tiró de la toalla y me roció gas en la cara, en todo el bolso y la ropa. Le quité la toalla sin golpearlo. Tiré el bolso a los arbustos. Me golpeó en el brazo con un garrote. Cuando finalmente me levanté, no quedaba nadie más que la policía en el área. Caminé detrás de una casa y entré a otra donde me lavé.

Stuckey, el peor policía, golpeó a Cottonreader. Tiene el ligamento de la rodilla torcido. Varias personas sufrieron quemaduras peores esta vez.

La confrontación directa es lo que saca a relucir el amor y el odio en las personas. Habíamos cantado "Amo a todos", modificamos 1 Corintios 13 como grupo, etc., y aún así el odio y la confusión volvieron a nosotros a través de la barricada. A veces parecía que les estábamos llegando. De hecho, molestamos tanto la conciencia de Elijah Poole que instaló un altavoz que reproducía "Waltzing Matilda" y "Brahms' Lullaby" para tratar de ahogarnos.

El significado de la fe se vuelve mucho más claro bajo una situación de sufrimiento por una causa de un grupo grande. Todos nos sentimos más unidos y la mayoría de nosotros no odiamos a la policía. La Sra. Lula Robinson, la mujer de 72 años con quien Pam y yo nos quedamos, la que usa la "túnica del profeta" blanca cuando sale, se paró justo en medio del gas con su túnica ambos días. Varias otras personas mayores también estaban allí. Pudimos evitar la violencia grave por parte de los negros. Se necesita verdadera fuerza para evitar ser violento cuando los tuyos están siendo castigados. La mayoría de la gente puede soportar el castigo por sí misma, pero es más difícil dejar que otros lo soporten también. Charles Cheatham, un joven que trabajaba con nosotros, tuvo una verdadera lucha para evitar ir tras Stuckey porque le había rociado gas lacrimógeno en la cara a su hermana pequeña, su hermano y su madre.
Ayer planeamos marchar de nuevo, ya que aún no habíamos llegado a nuestro objetivo, el juzgado, y queríamos protestar por el trato que habíamos recibido el día anterior. Esta vez, el alcalde envió a uno de sus "títeres" para averiguar qué queríamos. Dijimos que queríamos ir al juzgado. Esta vez emitió un permiso. Hicimos una marcha silenciosa hacia el juzgado, esta vez con escolta policial, y celebramos una reunión de oración y canto de 20 minutos en las escalinatas. La gente blanca estaba asomándose por las ventanas todo el tiempo. En el distrito de negocios vimos algunos gestos obscenos, pero el efecto general en la comunidad blanca fue de asombro ante la procesión ordenada, de dos en dos, de 205 negros hacia el juzgado. Incluso Elijah Poole se quitó el casco verde durante la oración. Sin embargo, ningún otro blanco lo hizo.

... Por ahora hemos terminado de manifestarnos. Se demostró nuestro punto, la comunidad negra está mucho más unida en la lucha, los negros se han enfrentado a los blancos con la fuerza del amor y Elijah Poole está empezando a aprender que el mundo le pasó por encima. Habrá mucho más trabajo aquí: empleos, escuelas, biblioteca, lugares públicos y registro continuo de votantes. Necesitaremos a cientos de personas en el juzgado el lunes 16 de agosto para demostrar que necesitamos un registrador federal para dirigir este condado de manera justa. Los registradores locales suspendieron a casi todos bajo la ley de Alabama, pero la prueba de alfabetización ahora está abolida.

Nos marcharemos de aquí después del registro de votantes. Tengo que estar en San Francisco el 23 de agosto para comenzar el seminario. Espero volver aquí varias veces más para trabajar. Es una experiencia tremenda que recomiendo encarecidamente.

P.D., 2014: Según recuerdo, tuvimos una participación masiva en el registro de votantes, algo así como 200. Para incomodarnos lo más posible, los funcionarios apagaron el aire acondicionado en el juzgado y el calor y la humedad estaban alrededor de los 35 grados Celsius (aproximadamente 95 grados Fahrenheit). La espera fue muy larga. Según el informe del Proyecto SCOPE, unos 1.000 intentaron registrarse durante nuestro proyecto, y 325 pudieron hacerlo..