Saltar al Contenido
Este artículo ha sido traducido del japonés usando IA
Leer en japonés
Este artículo es de Dominio Público (CC0). Siéntete libre de usarlo libremente. CC0 1.0 Universal

La Era del Pensamiento de Simulación

Al integrar las capacidades de la IA generativa en los programas, podemos crear mecanismos que antes eran inalcanzables con los programas convencionales.

Además, a medida que la IA generativa sea capaz de generar programas automáticamente, podremos crear y ejecutar programas de forma libre y sencilla basándonos en nuestras ideas.

Hasta ahora, he creado sistemas que pueden traducir mis artículos de blog al inglés y publicarlos en blogs en inglés, crear videos explicativos a partir de videos de presentaciones y subirlos a YouTube, y generar y publicar mis propios sitios de blog con índices, categorías y etiquetas.

De esta manera, un sistema que utiliza contenido original como materia prima e incorpora características de IA generativa para producir diversos contenidos derivados puede denominarse una fábrica intelectual.

También he desarrollado una aplicación web para operar esta fábrica intelectual y gestionar su estado, haciéndola accesible tanto en PC como en teléfonos inteligentes. Además, las partes que realizan procesamiento automatizado activado por eventos se ejecutan en máquinas virtuales preparadas para el procesamiento por lotes en el backend.

Así, desarrollé por mi cuenta los frontends para PC y smartphones, el backend del servidor web, el procesamiento por lotes en máquinas virtuales y la infraestructura para todo esto, todo con el apoyo de la IA generativa.

Esto no es simplemente ingeniería de pila completa (full-stack); puede llamarse ingeniería omnidireccional, ya que implica el desarrollo integral de varios aspectos del sistema.

Además, al mejorar la usabilidad de la aplicación web desarrollada o al agregar nuevas funciones, puedo delegar la programación a la IA generativa, lo que permite realizar mejoras fácilmente mientras la uso.

Esto hace que el software sea aún más flexible y fluido que el software tradicional, permitiéndome crear algo que se ajusta perfectamente a mis patrones de uso. A esto lo llamo "software líquido" (liquidware).

De hecho, he desarrollado y estoy utilizando estas herramientas. No son meros conceptos, sino una realidad en el desarrollo de software.

Aunque aún no lo he desarrollado, anticipo que en el campo de los sistemas empresariales, la metodología de desarrollo conocida como "desarrollo orientado a procesos de negocio" se hará realidad.

Este es un enfoque que no busca la optimización global de los programas, lo que complica los sistemas, sino que segmenta los módulos de software por procesos de negocio individuales.

Solo la definición del marco básico de la interfaz de usuario, la gestión de permisos de usuario y los modelos de datos que necesitan compartirse entre los procesos de negocio se comparten como el marco externo del sistema empresarial.

Otros procesos internos del sistema y datos temporales se gestionan a nivel del proceso de negocio.

Esto puede incluir funciones y estructuras de datos que pueden ser compartidas por dos o más procesos de negocio. Sin embargo, si estas se convierten en módulos compartidos o librerías personalizadas, aunque mejora la reutilización del código y la calidad, la estructura del software se vuelve compleja, y los cambios requieren una consideración constante de los impactos en otros procesos de negocio.

En una situación en la que la IA generativa genera programas automáticamente, la desventaja de lo segundo supera la ventaja de lo primero. Por lo tanto, el enfoque orientado a procesos de negocio, que enfatiza la optimización individual en lugar de la optimización global, se vuelve racional.

Además, imagine unidades como "ingresar información básica de un nuevo empleado", "actualizar información básica de un empleado" y "buscar empleados por nombre" como procesos de negocio individuales.

En las metodologías de desarrollo tradicionales, sus respectivas interfaces de usuario, procesos de frontend, procesos de backend y procesos por lotes se separan en diferentes archivos en diferentes directorios. Además, cada uno es desarrollado por diferentes ingenieros.

Sin embargo, cuando un solo ingeniero realiza ingeniería omnidireccional mientras deja que la IA generativa haga la programación, tiene más sentido consolidar el código requerido para un proceso de negocio en un solo archivo o carpeta.

Además, los resultados del análisis de requisitos, las especificaciones de prueba, los resultados de prueba y los registros de revisión también se pueden consolidar en la misma ubicación.

Esto permite que todos los entregables de la ingeniería de software se gestionen por proceso de negocio. Y debido a que no hay necesidad de considerar la optimización global, las mejoras pueden enfocarse dentro de ese proceso de negocio, y se pueden agregar fácilmente nuevos procesos de negocio al sistema empresarial.

De esta manera, el desarrollo de programas y lo que se puede desarrollar con programas están cambiando significativamente debido a la IA generativa. Esto no es una posibilidad futura; ya es la realidad actual, y en un futuro cercano, su completitud solo puede aumentar, y la siguiente etapa debe ir más allá.

Sistemas de Simulación

Lo que se puede lograr con programas no se limita a los sistemas empresariales y fábricas intelectuales mencionados aquí.

Las áreas restantes que no he mencionado pueden clasificarse a grandes rasgos como sistemas de simulación.

Ya sea resolviendo una ecuación física simple con una única fórmula analítica o calculando fenómenos físicos complejos con programas iterativos, ambos pueden denominarse sistemas de simulación.

Además, los sistemas de simulación pueden utilizarse no solo en física, sino también en química, biología, o incluso sociología y economía. Más aún, las simulaciones se aplican no solo en el ámbito académico, sino también en campos como la ingeniería, la medicina, el diseño institucional y la gestión empresarial.

Los juegos también son un tipo de sistema de simulación. En cualquier juego, se puede decir que la física, la sociedad, las reglas, etc., dentro del mundo de ese juego, están siendo, por así decirlo, simuladas.

Más allá de eso, también realizamos un tipo de simulación cuando planificamos nuestras vidas, viajes o cómo gastar nuestro dinero de bolsillo.

Estas simulaciones se han llevado a cabo de diversas maneras: creando y ejecutando programas, formulando y calculando ecuaciones en papel, pensando en la propia cabeza, organizando ideas con texto y flechas en una pizarra, o dibujando gráficos en Excel.

Desarrollar un programa de simulación para un problema específico permite simulaciones más complejas que las ecuaciones analíticas. Sin embargo, requiere habilidades de programación, esfuerzo y tiempo.

Además, el modelo de simulación necesita ser definido claramente, lo que requiere habilidades, esfuerzo y tiempo para su consideración.

Adicionalmente, las simulaciones solo podían realizarse de maneras que pudieran ser expresadas por programas, y hasta ahora, solo lo que podía expresarse computacionalmente podía ser simulado.

La IA generativa cambiará significativamente esta situación.

La IA generativa no solo permite el desarrollo fácil de programas de sistemas de simulación, sino que, al integrar la IA generativa en los sistemas de simulación, también se pueden simular elementos que no pueden expresarse mediante fórmulas matemáticas. Esto posibilita elementos de simulación cualitativos ambiguos y simulaciones que involucran agentes inteligentes similares a los humanos.

Además, dichos modelos de simulación pueden expresarse no solo en fórmulas matemáticas, sino también en lenguaje natural e interpretarse por la IA generativa.

Esto facilitará la sistematización de las diversas simulaciones que hemos realizado en diversas situaciones.

Esto nos permitirá obtener resultados de simulación más precisos, eficientes y efectivos, reduciendo la posibilidad de omisiones y suposiciones sesgadas.

Además, al discutir o considerar problemas complejos, será posible utilizar sistemas de simulación para la discusión y la consideración, en lugar de depender de simulaciones mentales individuales.

Esto mejora la precisión de la deliberación y hace que las discusiones sean más constructivas. Esto se debe a que, en lugar de señalar la inteligencia o los errores de pensamiento de los demás, las discusiones pueden centrarse en puntos claros como el modelo subyacente de la simulación, cualquier omisión o elemento faltante, cómo se estiman las partes altamente inciertas y qué indicadores entre los resultados se enfatizan.

A medida que los sistemas de simulación se vuelvan fáciles de crear, nuestra forma de pensar cambiará del pensamiento lineal, que se centra en la intuición, las suposiciones y la malicia o los errores de los demás, al pensamiento de simulación.

Es como buscar en internet en el smartphone durante una conversación para verificar fuentes de noticias, Wikipedia o fuentes primarias. Ya no es necesario tener discusiones interminables basándose únicamente en la memoria de cada uno.

Durante una discusión, la IA generativa organizará el modelo de simulación, las reglas de simulación y las precondiciones a partir del contenido de la discusión.

Las personas que discuten simplemente necesitan agregar o corregir información y premisas a ese modelo y reglas, y luego confirmar los resultados de la simulación. Al igual que cuando se encuentra una fuente de noticias fiable, esos resultados de simulación pueden servir como base común para una discusión más profunda.

Esto liberará a los oyentes de la era de preguntarse quién tiene razón o quién es digno de confianza. Tampoco perderán de vista la esencia al intentar comprender la jerga y los conceptos oscuros que aparecen en las discusiones.

Solo necesitarán considerar cosas muy simples: cómo evaluar la incertidumbre y qué valores priorizar.