CARTAS SIN FRANQUEO (CLXXXII)- REFLEXIONES SOBRE LA IA, LAS TRIPAS

1
28738
96

Hemos hecho varias reflexiones sobre la llamada IA, o mal llamada inteligencia artificial, pero tal vez nos falta una perspectiva básica para poder entender lo que realmente, descartadas las etiquetas, obviadas las presunciones, eliminados los equívocos, sean interesados o desinformados, es un ordenador, un programa, una orden. Cuál es la secuencia lógica que sigue un programador a la hora de enfrentarse a un desafío: conseguir que la máquina ejecute lo más exactamente posible lo que el humano quiere conseguir.

Foto de Possessed Photography en Unsplash

Conozcamos las tripas, el interior, el funcionamiento de un ordenador. Lo primero que nos toca distinguir, cuando nos enfrentamos a un sistema informático, robótico, sea del tipo, y complejidad, que sea, es que hay dos partes fundamentales: la máquina, o parte dura (hardware), y su programa, o parte blanda (software), y no olvidar que cualquiera de las dos, sin la otra, simplemente no es nada. Y esto último es importante tenerlo en cuenta, de cara a la reflexión que nos ocupa.

La parte dura, la máquina propiamente dicha, es cada uno de los chips, tarjetas, circuitos y elementos electromecánicos, mecánicos y eléctricos que conforman, y son parte de, la máquina, y que, sin una programación que los interrelacione, y comunique entre sí, no pasan de ser un catálogo de materiales sin utilidad concreta. Nunca se les podrá suponer otra inteligencia que la de sus creadores.

Respecto a la parte blanda, ahí la cuestión es considerablemente más compleja, ya que hay que tener en cuenta al menos tres niveles de órdenes posibles a la hora de lograr una orden final, ejecutiva. Pero, incluso para entender esto, necesitamos una idea básica, general, de cómo funciona, internamente, la máquina. Y para lograr esto necesitamos saber, ya que al final cada uno es una máquina por si mismo, como funciona un chip.

Un chip es un panel de posiciones activables (bits), con unos puertos de entrada y de salida. Claro que, tal vez, esto, así explicado, no explica nada para alguien que no tenga unas nociones básicas de informática. Intentaré ser más claro. Coja una hoja cuadriculada, normal, de cuaderno. Cada cuadrícula sería una posición activable, pintable, un bit, de tal forma que asignándole un valor a las filas, y otro a las columnas, yo puedo identificar cada cuadrícula, y ver si está rellena (activada), o está en blanco (apagada). Ya tenemos un chip. Ahora necesitamos, para poder dar una orden de activar, o desactivar, esa cuadrícula, y para poder conectar nuestro panel con otros paneles, unos dispositivos que reciban los valores y órdenes que vienen de fuera, los interpreten, y distribuyan a las cuadrículas correctas la información resultante (puerto de entrada), o que recopilen, o interpreten una información solicitada, y permita su envío a otro panel, o dispositivo (puerto de salida). Ya tenemos un ordenador básico, pero no un programa básico.

El programa básico será aquel que gestiones las direcciones de las cuadrículas, interprete los impulsos recibidos a través del puerto de entrada, gestiones la información en función de las órdenes interpretadas, y prepare la salida, si se ha solicitado, de la información resultante de las órdenes.  Ya tenemos el primer nivel de lenguaje, binario puro, que activa el funcionamiento de la parte dura. Un montón de ceros, y unos, que significan cosas: órdenes, datos y decisiones.

Pero, cuando montamos un ordenador, tenemos varios chips, algunos incluso con diferentes funciones, de diferentes fabricantes, que hablan, internamente, cada uno, diferentes idiomas. Y ¿por qué? ¿No sería más fácil que todos los chips, ya que al fin y al cabo solo son paneles binarios, hablaran el mismo idioma? Claro, pero eso significaría que cualquier chip, podría ser reproducido por otro fabricante, y valdría en cualquier dispositivo. El fin de las marcas exclusivas, el fin de los fabricantes exclusivos, el fin de los beneficios comerciales.  Bueno, pues existe un programa de programas, un sistema operativo, que coordina, interpreta y pone de acuerdo a una configuración determinada de máquinas, y que además interpreta esos datos, no solo entre partes de la máquina, si no de cara a su interpretación humana, agrupando esas cuadrículas iniciales, los bits, en grupos de ocho, que permiten la representación de todos los caracteres de todos los idiomas y numeraciones que existen en este mundo. El byte, que así se le llama, almacena, guarda, una letra, o un número, de cara a representarlo en la pantalla, o en la impresora.  Y con esto tenemos ya el segundo nivel de programas, los que sirven de intermediarios entre el alma binaria de la máquina, y la inteligencia humana del programador, los que convierten una orden del lenguaje de programación en un fluido de caracteres binarios que recorren, activando y desactivando bits, toda la máquina hasta lograr la ejecución de esa orden.

Y llegamos al tercer nivel: el lenguaje de programación. Esos lenguajes que permiten dar órdenes en lenguaje humano, un lenguaje recortado, muy concreto, con una estructura muy formal, pero humano, y que la máquina reaccione conforme a él.

Estuvieron de moda, años ha, allá hacia los años setenta del siglo pasado, cuando apenas habían hecho su irrupción en nuestras vidas, los ordenadores de acceso menos restringido –aún no existían los PC, ni los teléfonos móviles, y apenas las grandes empresas tenían sistemas informáticos para su gestión-, aquellos increíbles dibujos monocolor, en papel de impresora, compuestos de caracteres que dibujaban un punto cada uno de ellos, hasta lograr una imagen final, algunas de ellas de gran fuerza.

Esos dibujos no eran otra cosa que un volcado de memoria, de bytes, ya que el carácter a imprimir, números, letras, determinaban la intensidad de la sombra impresa. Y estos dibujos nos podrían proporcionar una idea bastante aproximada de un mapa de memoria, ya traducida, ya procesada, ya pasada a bytes.

Bueno, pues ya podemos tener una noción básica de qué se mueve, cuando un ordenador se mueve. De cuantas personas, elementos e intereses, se ponen en marcha cuando un ordenador, un robot, o cualquier otro tipo de artilugio electrónico se activa. Pero, con todo, apenas acabamos de asomarnos al bonito mundo binario. Aún no hemos hablado de la lógica, que es, en realidad, ese alma inaprensible de la máquina. No es, aunque es, parte dura. No es, aunque es, parte blanda. Hablaremos de la lógica, de la verdadera esencia de la informática, y de la razón fundamental por la que podemos argumentar, que lo haremos, por qué la IA no puede ser una inteligencia.

Pero esa será nuestra próxima reflexión.

1 COMENTARIO

  1. Las reflexiones más brillantes son siempre las más sencillas. En este artículo se reflexiona de una forma muy sencilla, luego,…brillante.

    Me ha encantado la lección de informática básica.

    0
    0

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí