Libro de notas

Edición LdN
Computacion creativa y otros sueños por Francisco Serradilla

Francisco Serradilla es poeta y doctor en Informática. Su línea principal de investigación se refiere al desarrollo de Softbots (Robots Software) y Agentes Inteligentes en Internet. Ha colaborado abundamentemente con Almacén como articulista. Computación creativa y otros sueños se publicará los 25 de cada mes.

Análisis contra inducción

¿Empiezo por arriba o empiezo por abajo? ¿Empiezo desde la concepción del objetivo que quiero conseguir y voy desmenuzando el producto en sus partes constituyentes, o construyo partes autocontenidas que resuelven aspectos concretos y luego las combino para que de ahí emerja algo útil?

Podríamos denominar estos enfoques como enfoque analítico y enfoque inductivo, o constructivo. Ambos enfoques tienen hondas raíces en la ciencia, en la filosofía y en la ingeniería, y por supuesto no son excluyentes, aunque hay personas más bien analíticas y personas más bien constructivistas.

En programación de ordenadores se dan los dos estilos. En el analítico, uno debe empezar con una idea precisa del producto que quiere desarrollar y a partir de ahí analizar qué componentes debe tener, diseñar cada componente y finalmente codificarlo en un lenguaje de programación. Esto es útil cuando se conoce bien lo que se quiere hacer, por ejemplo, en un programa de contabilidad o una gestión de almacén. Hay poco que inventar en este tipo de programas, y uno conoce perfectamente los problemas generales que debe resolver el programa. En el constructivo o inductivo, se desarrollan pequeños componentes que resuelven problemas concretos, por ejemplo ordenar una lista de cosas, o relacionar una entrada con una salida, y a partir de ahí ensambla componentes para construir componentes más complejos, que quizá resuelvan tareas prácticas. La utilidad viene luego. Un ejemplo paradigmático es twitter: ¿qué utilidad puede tener un sistema que permite a la gente publicar textos de 140 caracteres?

Parece evidente que en el terreno de la Ingeniería del Software es más apropiado el enfoque analítico, porque lo usual es que haya un cliente que pide al ingeniero que le resuelva un problema específico, que (normalmente) el cliente conoce muy bien. Por ello hay un primera fase de especificación de requisitos, en la que se recogen en un documento los aspectos que debería incorporar el programa final.

Pero en el terreno de la Investigación el enfoque analítico sirve de muy poco, porque en muchos casos ni siquiera se sabe qué es lo que se quiere construir, así que se crean módulos que resuelven pequeños problemas con la esperanza de que al combinarlos se produzca algo más complejo que signifique un avance tecnológico.

En el campo concreto de la Inteligencia Artificial también coexisten enfoques analíticos e inductivos. En el área de los Sistemas Expertos, por ejemplo, se suele modelar el razonamiento de los expertos en el dominio de conocimiento en el que debe trabajar el sistema, y luego se formaliza este conocimiento en modelos (normalmente lógico-deductivos) que ya en fase de explotación son capaces de tomar decisiones.

Siempre me han atraído más, sin embargo, los sistemas inductivos: Redes de Neuronas Artificiales, Computación Evolutiva, Aprendizaje Bayesiano… Estos sistemas observan datos obtenidos de procesos reales y aprenden a relacionarlos entre sí, construyendo modelos –muchas veces en forma de números– del conocimiento de utilizarán luego, en fase de explotación, para la toma de decisiones.

El cerebro humano, desde luego, es capaz de funcionar en estos dos estilos, e incluso de encontrar el terreno común en el que puedan interactuar lo que viene de arriba, del análisis, con lo que viene de abajo, de la inducción –o la intuición, como la llamamos los humanos– de modo que el milagro se produce (cuando se produce1) en el campo de encuentro entre la una y la otra.

1 Vale, no voy a aprovechar para meterme otra vez con los políticos.

Francisco Serradilla | 25 de abril de 2012

Comentarios

  1. jaime
    2012-04-28 16:23

    bonito final!


Librería LdN


LdN en Twiter

Publicidad

Publicidad

Libro de Notas no se responsabiliza de las opiniones vertidas por sus colaboradores.
Esta obra está bajo una licencia de Creative Commons
Desarrollado con TextPattern | Suscripción XML: RSS - Atom | ISSN: 1699-8766
Diseño: Óscar Villán || Programación: Juanjo Navarro
Otros proyectos de LdN: Pequeño LdN || Artes poéticas || Retórica || Librería
Aviso legal