You are on page 1of 46

FACULTAD DE INGENIERIA

ESCUELA DE INFORMÁTICA Y DE SISTEMAS

UNIVERSIDAD SAN PEDRO

FACULTAD DE INGENIERIA
ESCUELA PROFESIONAL DE INGENIERIA INFORMÁTICA Y DE
SISTEMAS
=====================================================

POYECTO DE INVESTIGACION: MODELAMIENTO Y


SIMULACIÓN DE SISTEMAS COMPLEJOS
=====================================================

DOCENTE:
ING. LUIS RAMIREZ MILLA
CURSO:
SIMULACION DE SISTEMAS
ALUMNOS:
ALMENDRAS ALVARADO RONALD
CODIGO:
0200203053
CICLO:
VIII

CHIMBOTE – PERU
2017
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

INTRODUCCIÓN

De manera tradicional se ha afirmado que existen dos formas de ciencia: una basada en
la inducción y otra fundada en deducciones o, lo que es equivalente, en criterios y
principios hipotético-deductivos. La primera ha sido conocida como ciencia empírica y
su problema fundamental es el de la inducción; es decir, el de establecer cuáles, cómo
y cuántas observaciones (o descripciones) particulares son suficientes (y/o necesarias)
para elaborar generalizaciones. Esta es una clase de ciencia que trabaja a partir de
observaciones, descripciones, acumulación de evidencias, construcción de datos, y
demás, a partir de los cuales puede elaborar procesos de generalización o
universalización. Este tipo de ciencia coincide con los fundamentos de toda la
racionalidad occidental, a partir de Platón y Aristóteles, según la cual sólo es posible
hacer ciencia de lo universal. Por su parte, el segundo tipo de ciencia consiste en la
postulación de principios primeros o axiomas, y se concentra en el estudio de las
consecuencias –igualmente, de los alcances– de dichos principios. Esta clase de ciencia
tiene como problema fundamental la demostración de determinados fenómenos,
valores, aspectos, dicho en general; y esto se fundamenta en el rigor con el que se han
postulado los axiomas y los teoremas subsiguientes. Por derivación, esta clase de ciencia
incorpora y trabaja con lemas y otros planos semejantes. Cultural o históricamente, esta
clase de ciencia se inicia con la lógica de Aristóteles y se sistematiza por primera vez en
la geometría de Euclides. Toda la ciencia medieval, llamada theologia, opera de esta
manera. En el marco de la ciencia contemporánea estas dos clases de ciencia se pueden
ilustrar profusamente. En el primer caso, por ejemplo, desde el derecho que afirma que
las evidencias se construyen; las ciencias forenses (antropología forense, odontología
forense y demás) que sostienen algo semejante; o el periodismo y la comunicación social
que trabajan a partir del reconocimiento de que la noticia no existe, sino que se
construye (vía la crónica, la reportería y otras). De otra parte, en el segundo caso, desde
las matemáticas y la lógica hasta las ciencias y las disciplinas que incorporan parámetros
y metodologías basadas en hipótesis. (Vale la pena recordar siempre aquella idea clásica
del propio I. Newton de acuerdo con la cual la buena ciencia y en las palabras de Newton:
hipothese non fingo). Pues bien, por caminos, con motivaciones y con finalidades
diferentes y múltiples, recientemente ha emergido una tercera clase de ciencia, que ya
no trabaja con base en la inducción y en la deducción, sino de una manera radicalmente
distinta. Esta tercera manera es el modelamiento y la simulación, y la forma más
acabada de esta ciencia son las ciencias de la complejidad.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

1. MODELAMIENTO Y SIMULACIÓN

El modelamiento y la simulación consisten en el trabajo con el computador y, más


específicamente, en el trabajo con o el desarrollo de software para, justamente,
modelar y simular. Las aplicaciones de software pueden ser comprendidas sucintamente
en los siguientes términos: Existe el software propietario, el software libre y el software
de dominio público (sin licencia)1 . En el caso particular de la computación científica,
empresarial y de negocios, los productos de software propietario son todos aquellos que
trabajan bajo licencias de código cerrado, tales como Mathematica, MatLab, EcoSim,
Arena, IThink, Stella, ProModel, Visim y muchos más. No podemos hacer uso de estos
productos sin pagar las licencias, además, por lo general, no es permitido (= legal)
modificar, desensamblar, copiar o distribuir dicho software. El software libre, por su
parte, permite todo aquello que el software propietario no admite, salvo algunos
compromisos o restricciones contractuales (como poner al servicio del público las
mejoras realizadas a un producto dado o que dichas modificaciones posean, a su vez,
licencias tecnológicamente neutrales). Las licencias para el software libre se pueden
clasificar en licencias de código abierto permisivas y licencias de código abierto robustas
e incluyen productos de software como SciLab, E-Cell Simulation Environment, Swarm,
Simex, Biome, Cage, ParadisEO2. Los productos de software, a su vez, modelan o
simulan objetos y series o procesos. En el primer caso se trata básicamente del trabajo
mediante el cual logramos modelar o simular objetos en tres dimensiones y podemos
rotarlos. En el segundo caso, el tema es el de la simulación o modelamiento,
esencialmente, de series de tiempo. La primera advertencia que cabe hacer es que no
por hablar de modelamiento y de simulación se trabaja necesariamente con fenómenos
y sistemas complejos. Existe, manifiestamente, modelamiento y simulación de
fenómenos lineales, de procesos rígidos y centralizados, en fin de dinámicas
deterministas. En contraste, el modelamiento y la simulación en contextos de
complejidad es una circunstancia perfectamente novedosa y tiene como base, más que
el trabajo de programación con el computador, el conocimiento, el estudio y el trabajo
con sistemas complejos no-lineales con la ayuda del computador. En efecto, el
computador es una herramienta conceptual que permite el trabajo con problemas
algorítmicos y con problemas computacionales. El trabajo con ambos tipos de
problemas implica, exige, en ocasiones, el trabajo con programación. Al margen de esto,
el uso habitual del computador es como el de una máquina de escribir más desarrollada.
El modelamiento y la simulación suponen, exigen o implican un trabajo (previo) de
formalización matemática. Pero esta no es una regla. En ocasiones, la matematización
puede venir posteriormente como una verificación o una demostración de lo que se ha
modelado o simulado. Lo que sí es imperativo es reconocer que la simulación y el
modelamiento demandan un trabajo conceptual y/o teórico previo que conduce
precisamente a la necesidad de considerar problemas algorítmicos o computacionales,
computacionalmente tratados, justamente.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

En términos más elementales, cuando buscamos explorar o comprender procesos


fundamentales, los modelos deben ser juzgados por cuán fructíferos son, no por su
precisión o exactitud. Pero, cuando la finalidad es anticipar productos o procesos con
una finalidad eminentemente práctica, lo importante entonces es la precisión o el rigor
del modelamiento o la simulación. Esta observación contribuye enormemente para
abocar una distinción metodológica fundamental entre la investigación o
experimentación in silico, in vivo o in vitro. La distinción entre ellas estriba en la finalidad
que se busca, si se trata de comprensión o aplicación y anticipación con finalidad
práctica. El siguiente esquema permite, por tanto, una distinción entre modelamiento y
simulación:

En general modelamos o simulamos con tres finalidades:


a) Cuando buscamos comprender (y explicar) procesos fundamentales;
b) Cuando queremos que un fenómeno o sistema se comporte como
deseamos/desearíamos;
c) Cuando queremos lograr ver emergencias, dinámicas, procesos, elementos y
demás que no logramos ver (= comprender) habitualmente; es decir,
justamente, por fuera de la simulación y el modelamiento.
En términos generales, dada la novedad de las ciencias de la complejidad y el estudio de
los sistemas de complejidad creciente, en el tema o el problema de comprender
dinámicas fundamentales –por ejemplo, la propia complejización creciente de un
fenómeno, las sinergias y emergencias presentes o potenciales, la autoorganización real
o virtual y la explicación de la misma, en fin, las turbulencias, inestabilidades y rupturas
de simetría– el modelamiento y la simulación son del primer tipo mencionado. En el
segundo caso, el tema al que conducen el modelamiento y la simulación es el de la
importancia de las metaheurísticas. En este sentido, el trabajo con metaheurísticas
implica claramente no la búsqueda de una solución (específica o determinada) a un
problema, sino, mejor aún, el trabajo de exploración con espacios de soluciones o, lo
que es equivalente, con conjuntos y redes de soluciones. Desde este punto de vista, lo
que el investigador busca es que el sistema o fenómeno de estudio se comporte como
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

él desearía. Así, se pone de manifiesto el fundamento mismo de toda modelación y


simulación, a saber: la intuición –estrictamente, las pompas de intuición− y los
experimentales son los nutrientes mismos del modelamiento y simulación de los
sistemas complejos. Por su parte, la tercera finalidad de la simulación y el modelamiento
pone de manifiesto la distinción –no banal− entre computación gráfica, de un lado, y el
modelamiento y la simulación propiamente dichos, ya que una cosa es graficar –por
ejemplo, en representaciones bidimensionales o tridimensionales; incluso en
graficación que se corre en el tiempo− un texto, un concepto o un problema y otra,
absolutamente distinta, el modelamiento y la simulación. El rasgo más sobresaliente de
esta distinción radica en el reconocimiento explí- cito de que –particularmente en el
contexto del estudio de sistemas complejos no-lineales− la simulación y el
modelamiento contribuyen a la comprensión del fenómeno de estudio (y no
simplemente a la visualización del tema o del problema considerado).
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

2. PROBLEMAS P Y N-P

En 1972, S. Cook, R. Karp y L. Levin descubrieron lo que se denomina la teoría


matemática de la complejidad. Sucintamente, esta teoría consiste en el estudio de las
relaciones entre P y N-P. P designa el conjunto de problemas que se conocen como
polinomiales. Se dice que un problema es polinomial cuando puede ser:
a. abordado, estudiado o comprendido y
b. resuelto en términos polinomiales, es decir, descomponiendo el
problema en los términos que lo componen.
Quizás la mejor expresión de esta clase de problemas es el conjunto de organigramas,
flujogramas, cronogramas, histogramas, cladogramas y demás herramientas que son
justamente la comprensión de un problema (= estructura, dinámica) en términos
analíticos y de agregados de partes. En una palabra, P designa toda la clase de problemas
que implican necesariamente un tiempo polinomial, por ejemplo, un tiempo que es
susceptible de ser dividido en lustros, años, meses, semanas u horas. Los problemas P
se designan como problemas fáciles en general y, dicho en términos matemáticos, se
dice que son irrelevantes precisamente porque se pueden resolver. Por su parte, los
problemas N-P son todos aquellos problemas no-polinomiales que, por consiguiente, no
pueden ser ni abordados ni resueltos por vía de la fragmentación del problema (en los
términos que componen al mismo). Para los problemas N-P no existe ningún tiempo
polinomial que pueda resolverlos. Por el contrario, esta clase de problemas remiten a
otros tipos de temporalidad, ciertamente no analítica. Esta clase de problemas se
conocen como problemas difíciles y se designan como problemas relevantes. En
términos algorítmicos, mientras que un problema de la clase P puede ser resuelto por
un algoritmo de tiempo polinomial en una máquina determinista, los problemas de la
clase N-P requieren algoritmos no convencionales, o mejor, no deterministas para
resolver el problema en tiempos igualmente polinomiales, aunque de forma aproximada
(Talbi, 2009).
Pues bien, la teoría matemática de la complejidad estriba exactamente en las relaciones
entre P y N-P. Los problemas P y N-P constituyen los parámetros, por así decirlo, del
trabajo en modelamiento y en simulación de sistemas complejos y, en general, del
estudio y la investigación sobre ciencias de la complejidad. Los problemas que
conforman la teoría matemática de la complejidad son igualmente conocidos como
problemas de complejidad computacional. Son todos aquellos problemas que consisten
en el estudio del tiempo de computación para la resolución de los mismos y, en general,
contrastan con los problemas que implican complejidad algorítmica y que son aquellos
que demandan la consideración del programa más breve para la resolución de los
mismos. El siguiente esquema de relaciones contiene, de manera breve, la serie de
problemas constitutivos de la teoría matemática de la complejidad:
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

P = N-P
P ≠ N-P
N-P ≥ P
P ∈ N-P
Los problemas P y N-P se articulan como problemas N-P difíciles (Hard N-P problems) y
como problemas N-P completos (N-P complete problems) y, por consiguiente, hacen
referencia a la tercera y a la cuarta de las relaciones mencionadas en el esquema
anterior. Pues bien, el tema consiste exactamente en el hecho de que ninguna de estas
relaciones ha podido ser confirmada o negada hasta la fecha. Una parte de las mejores
mentes de filósofos, matemáticos, lógicos y expertos en sistemas computacionales
trabajan en la resolución de estas relaciones. La idea básica al respecto es que no deben
separarse P y N-P, como si hubiera que abordar y acaso satisfacerse, con justificaciones
metodológicas, de tiempo, de recursos, pragmáticas u otras, con los problemas fáciles
que son efectivamente resolubles, y luego, acaso, eventualmente, pudiéramos o
debiéramos avanzar hacia los problemas difíciles. En la vida, como en la ciencia, la
tragedia estriba en el hecho de que siempre abordamos primero los problemas fáciles y
delegamos, postergamos o relegamos los problemas difí- ciles. El drama consiste en el
hecho de que los problemas difíciles al cabo se revelan como los verdaderamente
significativos desde varios puntos de vista.
Como quiera que sea, el trabajo en complejidad consiste en identificar ambas clases de
problemas y avanzar lo más rápidamente posible de los problemas P hacia los problemas
N-P (este tema exige otro texto consistente en el estudio de los problemas de
complejidad computacional, el cual está siendo preparado por nosotros en este
momento y podrá ser publicado más adelante). Exactamente en este sentido y dirección,
el modelamiento y la simulación se revelan como la mejor herramienta y, si se prefiere,
como “el” método cuando se trata de problemas, sistemas, fenómenos y
comportamientos complejos. Sin ambages: la metodología en complejidad atraviesa
transversalmente por el trabajo con problemas de complejidad algorítmica y de
complejidad computacional.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

3. BREVEMENTE: LAS CIENCIAS DE LA COMPLEJIDAD


Las ciencias de la complejidad son fundamentalmente el resultado del desarrollo del
computador y se puede decir, sin dificultad, que tanto obedecen a la existencia y al
trabajo con computación, como que contribuyen, a su vez, al desarrollo de la
computación y en general de los sistemas informáticos (o informacionales). H. Pagels
(1991) fue el primero en advertir expresamente esta circunstancia. Las ciencias de la
complejidad se encuentran en la base, son el fundamento del modelamiento y la
simulación de sistemas, fenómenos y comportamientos complejos. Con ellas, las lógicas
no-clásicas atraviesan transversalmente tanto el estudio de los sistemas dinámicos no-
lineales como el propio modelamiento y simulación. Algunas de las lógicas no-clásicas –
igualmente conocidas como lógicas filosóficas− son: la lógica difusa, la lógica de la
relevancia, la lógica para consistente, la lógica libre, la lógica epistémica, la lógica
temporal, la lógica cuántica, la lógica intuicionista y la lógica de fábrica (o fabricación).
Desde el punto de vista computacional, lo más significativo es el reconocimiento de que
la única lógica no-clásica que ha logrado ser incorporada informacional, algorítmica y
computacionalmente ha sido la lógica difusa; esto explica su importancia y ubicuidad en
la casi totalidad de las nuevas tecnologías. El trabajo de incorporación computacional de
las demás lógicas no-clásicas permanece hasta ahora como una tarea abierta sobre la
cual, sin embargo, existen notables y vertiginosos avances recientes. El trabajo en
ciencias de la complejidad consiste, de cara a fenómenos lineales, deterministas y
periódicos, en el estudio acerca de la posibilidad de transformar la linealidad en no-
linealidad. Esto se dice fácilmente, pero es extremadamente difícil y de hecho en esto
radica, exactamente, todo el trabajo de los complejos logos. Sólo que es fundamental
atender al reconocimiento explícito de que, cuando se logra convertir o transformar el
fenómeno de estudio de lineal a no-lineal, el fenómeno mismo sufre una transformación
radical. En numerosos casos esta transformación acarrea un cambio de paradigma, un
giro lingüístico o una novedad semántica, en fin, una modificación del aparato
herramental o conceptual con el que habitualmente se trabajaba. Sin que sea una regla,
el modo más usual para transformar un fenómeno o sistema lineal en uno no-lineal es a
través del siguiente decurso: se trabaja en la transición de un sistema determinista a un
sistema estocástico y, posteriormente, de un sistema estocástico a uno determinista no-
lineal (Anderson, Arrow y Pines, 1988). Sin embargo, es preciso advertir explícitamente
que no siempre y no todo sistema lineal puede ser transformado en un fenómeno no-
lineal. Lo que sí es claro es que el trabajo en complejidad implica una distancia con
respecto a distribuciones normales: ley de grandes números, campanas de Gauss,
descripciones estadísticas, incluso matriciales. Ahora bien, de manera complementaria
al trabajo de estudio acerca de la posibilidad de transformar un sistema lineal y
determinista en uno no lineal, los complejólogos estudian, mediante la ayuda de la
simulación y el modelamiento, la forma en que los sistemas caracterizados por
emergencias, sinergias, auto organización, turbulencias y fluctuaciones, por ejemplo, se
comportan de manera compleja, es decir, impredecible, aperiódica, y qué consecuencias
se siguen de ello. En efecto, se puede decir que el espíritu de las ciencias de la
complejidad no se reduce sencillamente a transformar, cuando es posible, un fenómeno
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

lineal en uno no-lineal, así como tampoco simplemente a encontrar –acaso en haber
convertido un sistema determinista en uno no-lineal− un comportamiento complejo;
esto es, impredecible, que exhibe las propiedades y características suficientemente
reconocidas de los sistemas complejos (auto organización, interacciones entre partes
elementales que dan como resultado un todo que es más que la sumatoria de las partes,
emergencias y otras). Antes bien, la complejidad es ante todo un tipo de ciencia de
posibilidades y es ciencia para tiempos de crisis y de fenómenos que están en crisis, así:
• En tanto que la crisis existe y/o es inminente.
• O bien porque la crisis no tiene (aún) lugar pero podría llegar a suceder.
• E incluso aunque la crisis sea probable o posible y jamás llegue a tener lugar.
Las consecuencias éticas, políticas, científicas y filosóficas de esta triple consideración
no escapan a una mirada sensible. De esta suerte, las ciencias de la complejidad avanzan
por un dúplice camino, por así decirlo. De una parte, análogamente al espíritu de la
ciencia en general, avanzan en la resolución de problemas, o mejor, de conjuntos de
problemas, de espacios de soluciones. Es en este contexto que los problemas de
optimización y, en general, la heurística y las metas heurísticas desempeñan un papel
fundamental en complejidad. De otro lado, al mismo tiempo, dado el carácter radical
del trabajo en complejidad, el trabajo de los complejólogos consiste en la formulación o
concepción de nuevos problemas, para la cual la combinación de intuiciones (= pompas
de intuición), los experimentos mentales (= fantasía, imaginación) y el recurso del
modelamiento y la simulación resultan invaluables, es decir, fundamentales,
estratégicos si se prefiere. En efecto, es una especificidad de las ciencias de la
complejidad que no únicamente de forma prioritaria resuelven problemas, sino, además
y fundamentalmente, exploran espacios, abren horizontes y anticipan procesos,
fenómenos y dinámicas. Es exactamente en este sentido que el uso del modelamiento y
la simulación se revela esencial, ya que justamente las ciencias de la complejidad tratan
antes que con realidades –en el sentido empírico de la palabra− con posibilidades. Las
ciencias de la complejidad son ciencias de posibilidades y la realidad es, en rigor, tan
solo un modo de la posibilidad (Maldonado, 2009). De este modo, el modelamiento y la
simulación no simplemente cumplen un papel representativo o representacional, sino
heurístico en el sentido al mismo tiempo más fuerte y preciso del término. En otras
palabras, la heurística, en general, y las meta heurísticas, en especial, exploran modelos,
espacios de soluciones, dimensiones y cruces entre ellas. En fin, son el estudio de
comportamientos caracterizados por inestabilidad, incertidumbre, adaptación, no-
linealidad.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

4. ¿QUÉ ES UN MODELO?
La primera caracterización de un modelo suele ser descriptiva, por ejemplo, existen
modelos físicos, matemáticos, computacionales, económicos, epidemiológicos, políticos
y administrativos. Cada investigador en estas áreas puede identificar racional o
intuitivamente el tema. Sin embargo, en términos conceptuales, es bastante más
afortunado recordar que un modelo –teórico o conceptual− es sencillamente una
interpretación del mundo o de una región del mundo. Este modelo puede implicar o
basarse en elementos matemáticos, conceptuales u otros, pero consiste en una
interpretación sólida, con frecuencia sometida a pruebas, verificaciones, falsaciones o
refutaciones, o bien, igualmente, en una hipótesis consistente. El tema fuerte en el
estudio de los modelos tiene tres frentes:
a. Estudiar cómo surgen los modelos;
b. Establecer cómo se defienden y se mantienen;
c. Comprender por qué se echan abajo, mueren y se eliminan unos modelos
por otros (Maldonado, 2010).
Sin embargo, la contribución del modelamiento y la simulación radica en la puesta a
prueba de modelos –reales o potenciales− gracias precisamente al desarrollo de
programas centrados en problemas, comportamientos y sistemas que responden a leyes
de potencia, auto organización, sincronización y a redes libres de escala, en
correspondencia precisamente con las ciencias de la complejidad. Así, mientras que la
ciencia clásica formula modelos que son, en últimas, esencialmente esquemas fijos,
representaciones rígidas de sistemas o fenómenos determinados, las ciencias de la
complejidad elaboran modelos dinámicos que son el resultado justamente de la
simulación y el modelamiento. Esta idea puede y debe ser ilustrada en los siguientes
términos: La historia de la humanidad es el tránsito que se inicia con los dibujos y las
pinturas, continúa luego con la fotografía y llega finalmente a la película y el video. De
esta forma, hemos hecho el tránsito de una concepción y representación estática del
universo, el mundo y la sociedad a una comprensión y explicación dinámica de los
mismos. Retrospectivamente, desde luego cabe incorporar fotografías y fotogramas,
dibujos, bocetos y pinturas del mundo, pero todo ello constituye instantáneas de una
visión dinámica. Tal es exactamente la especificidad de la simulación y el modelamiento
respecto a los modelos. Esta observación se extiende, en toda la extensión de la palabra,
a los campos sintácticos y semánticos con los que explicamos y comprendemos la
naturaleza en general. En cualquier caso, el modelamiento y la simulación trabajan,
esencialmente, en tres dominios:
• Modelamiento y simulación de comportamientos, fenómenos y sistemas
• Modelamiento y simulación de modelos
• Modelamiento y simulación de problemas
En el primer caso, se trata de estudiar, con la ayuda del computador, aquellos
fenómenos, sistemas y comportamientos que responden a las teorías, los conceptos,
enfoques, modelos y métodos constitutivos de las ciencias de la complejidad. En otras
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

palabras, la condición sine qua non del modelamiento y la simulación de sistemas


complejos estriba en el estudio mismo de temas como adaptación y evolución, auto
organización y redes booleanas, vida artificial y redes complejas, problemas de
optimización y catástrofes, fractales y criticalidad autoorganizada, lógicas no clásicas y
comportamientos imprevisibles y aperiódicos, control local y ausencia de control central
rígido, emergencias, flexibilidad y robustez, para mencionar algunos. En el segundo
dominio, la contribución específica de la simulación y el modelamiento se refiere a la
puesta dinámica de los modelos clásicos, de esa forma se hace en este punto la conexión
con la posibilidad de transformar sistemas lineales en no-lineales. Pero, al mismo
tiempo, se trata igualmente de explorar modelos dinámicos que aún no han sido
avizorados por la comunidad científica y académica, siempre en correspondencia con el
hecho de si se trata de una finalidad práctica empírica o de comprensión y explicación,
como se mencionó al comienzo. Finalmente, el modelamiento y la simulación de
problemas hace referencia a la toma de distancia con respecto a esquemas teóricos y
conceptuales de eficacia, eficiencia, maximización, second best y otros semejantes, para
enfocarse en problemas de optimización que se ilustran, por ejemplo, en el estudio de
temas conspicuos como el Problema del Agente Viajero, el estudio de la imposibilidad
(Barrow, 1998), las paradojas, las inconsistencias, las contradicciones no-triviales, el
estudio de la adaptación y los posibles adyacentes, criticalidad, subcriticalidad y
supracriticalidad, en fin, en las relaciones reales o posibles entre problemas P y N-P. Con
ello, el campo magnífico de la simulación y el modelamiento de sistemas de complejidad
creciente es el de la complejidad algorítmica y la complejidad computacional de un
sistema o fenómeno y las relaciones entre ellas (Chaitin, 2007).
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

5. COMPUTACIÓN BIO-INSPIRADA E INGENIERÍA DE


SISTEMAS COMPLEJOS
El tipo de computación que demanda el estudio de sistemas de complejidad creciente
se expresa, desarrolla y es conocido como computación bio-inspirada, computación
motivada biológicamente o computación con metáforas biológicas, tres formas de
referirse a un mismo conjunto de intereses o problemas (De Castro y Von Zuben, 2005).
Se trata esencialmente de todos aquellos programas desarrollados con base en el
estudio de los sistemas vivos y de las dinámicas de los sistemas vivos. Así, la metáfora
compleja proviene y se nutre de la biología, en el sentido más amplio y fuerte de la
palabra, y de la ecología. Hablamos entonces, por ejemplo, de redes neuronales,
autómatas celulares, computación inmune o inmunológica, computación evolutiva,
computación con ADN, computación orgánica y de dinámicas de homeostasis, de
homeorhesis y de metabolización. Estas tendencias constituyen verdadera investigación
de punta y se condensan en lo que se ha denominado el nuevo ABC de la computación:
adaptación, bio-inspiración y complejidad.
Es necesario, sin embargo, hacer algunas precisiones. En primer lugar, las tendencias
contemporáneas en computación orientadas al estudio de sistemas complejos no sólo
trabajan con sistemas biológicos y se han desplazado hacia el pensamiento en términos
de los mismos, sino que, de forma más amplia y genérica, lo han hecho hacia el estudio
de sistemas naturales en general. En este sentido, fue introducido, a finales de los años
noventa, el concepto de computación natural para referirse al estudio de los procesos
de cómputo en la naturaleza (captura, almacenamiento, procesamiento y transmisión
de información) y a su aplicación en diversos campos del conocimiento. La computación
bio-inspirada resulta ser una categoría (la más amplia e importante) de la computación
natural. Son tres las ramas principales que componen la investigación en computación
natural (De Castro, 2007):
• El modelamiento, la simulación y la emulación de sistemas, dinámicas y
estructuras naturales a través de medios computacionales. Más precisamente,
consiste en la síntesis y el estudio (computacional) de tales estructuras,
dinámicas y sistemas. La finalidad de este campo es dúplice: de un lado, se
orienta a la comprensión y explicación de problemas y sistemas naturales que
han sido pobremente abordados por la ciencia tradicional, así como a la
formulación y el estudio de problemas obliterados o nunca antes abordados. Por
otra parte, consiste en la posibilidad de juzgar, probar y validar, mediante
simulaciones computacionales, hipótesis, conjeturas y teorías sobre los sistemas
naturales. Los modelos así construidos sirven de insumo para el siguiente
componente.
• El desarrollo de técnicas inspiradas por la naturaleza para la resolución de
problemas en ciencia, ingeniería y negocios. Consiste en dos pasos: a) la
formulación de modelos teóricos que puedan, ulteriormente, ser
implementados en un ambiente computacional con el fin de reproducir las
estructuras o dinámicas del fenómeno natural estudiado y b) la utilización de
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

tales modelos para construir algoritmos capaces de resolver problemas


complejos, sean naturales o no. La motivación es, claramente, la de proveer
técnicas y algoritmos alternativos para solucionar problemas que no pueden ser
resueltos (satisfactoriamente) por algoritmos y técnicas tradicionales como las
que suministra la investigación de operaciones o la inteligencia artificial clásica.
Es aquí donde el trabajo con metaheurísticas se hace posible, necesario y más
fructífero (más adelante volveremos sobre este punto).
• El uso de materiales naturales para llevar a cabo procesos de computo. Se trata
de la búsqueda de nuevas técnicas, metodologías y máquinas, basadas en
materiales naturales (por ejemplo, moléculas, células u organismos), para el
tratamiento y la resolución de problemas no computables. Técnicamente, estos
trabajos se condensan en un programa de investigación, conocido como
hipercomputación, abierto por Alan Turing en su tesis doctoral en 1938.
Cada una de estas ramas se compone, a su vez, de diversas líneas de investigación,
teorías, conceptos y metodologías (tabla 1). Sin embargo, esta distinción está lejos de
ser rígida y de establecer fronteras tajantes entre una y otra. De un lado, el
modelamiento y la simulación de un fenómeno natural (p. ej. selección natural) suele
desembocar en estrategias para resolver problemas (p. ej. programación evolutiva) y,
ulteriormente, en nuevas formas potenciales para llevar a cabo tareas de computo (p.
ej. computación con ADN). Desde otro punto de vista, el abordaje de problemas
complejos implica, cada vez más, de cara a su resolución, la integración, la mezcla o el
cruce de técnicas de modelamiento y simulación, heurísticas y metaheurísticas de
optimización, adaptación y/o aprendizaje, y potentes arquitecturas (paralelas) que
soporten, en cada caso, el problema a resolver. El eje se traslada, pues, de un conjunto
de técnicas y algoritmos hacia el trabajo con sistemas integrados. Más precisamente, el
trabajo con sistemas híbridos.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

En condiciones similares a las de la computación natural, otros paradigmas


computacionales han surgido a partir de, basándose en, o tomando prestados
elementos de, la computación bio-inspirada. Los dos casos más conspicuos son la
computación suave, a partir de los trabajos en lógica difusa de L. Zadeh, y el tránsito de
la inteligencia artificial clásica a la nueva inteligencia artificial, también conocida como
inteligencia computacional o inteligencia artificial bio-inspirada. En ambos casos, lo que
se encuentra en la base es, justamente, la idea de la “hibridación” de modelos y técnicas
para resolver problemas de complejidad creciente relacionados con optimización global,
toma de decisiones, control descentralizado y difuso, clasificación, reconocimiento de
patrones, seguridad computacional, imprecisión, búsqueda, aprendizaje, adaptación,
evolución y autoorganización e incertidumbre, entre otros. La computación suave en sus
orígenes se caracterizó por una triada de técnicas que buscaba resolver tres de los
problemas citados en el párrafo anterior: lógica difusa (imprecisión), redes neuronales
artificiales (aprendizaje) y razonamiento probabilístico (incertidumbre). Más adelante,
se sumaron a la computación suave otros campos como las redes de creencias, la teoría
del aprendizaje, los algoritmos genéticos y la teoría del caos. Por su parte, los
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

paradigmas que conforman la inteligencia computacional, aunque las opiniones suelen


diferir entre autores, son las redes neuronales artificiales, los sistemas inmunes
artificiales, la computación evolutiva, la inteligencia de enjambres y los sistemas difusos.
Con frecuencia, estas técnicas se suelen integrar con técnicas probabilísticas. En los
últimos años, la computación suave ha convergido hacia la inteligencia computacional y
esta última, como se aprecia, hacia los sistemas bio-inspirados. El esquema de la figura
2 ilustra las posibilidades de construir sistemas híbridos en computación suave e
inteligencia computacional. De cara al futuro de la computación bio-inspirada en general
y de otros campos, como la computación natural, la inteligencia computacional
(incluida, por ejemplo, la inteligencia de negocios) o la computación suave en particular,
no sobra insistir en el papel de los sistemas híbridos (sean clásicos o contemporáneos,
de optimización o simulación) en la resolución de problemas cada vez más complejos, o
también en el tránsito de los problemas P a los problemas N-P. En segundo lugar, las
metáforas provenientes de la biología no se agotan en, ni se reducen a, la computación
bio-inspirada. Podemos fácilmente distinguir entre sistemas bio-inspirados (Floreano y
Mattiussi, 2008 y Negoita e Hintea, 2009), computación bio-inspirada (Komosinski y
Adamatzky, 2009) y optimización bio-inspirada (Lewis, Mostaghim y Randal, 2009).
Véase la figura 3.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

Hacia arriba, la computación bio-inspirada se inscribe en el estudio de los sistemas bio-


inspirados. Los sistemas bio-inspirados emplean, además de la computación,
componentes inorgánicos (en hardware y robótica) y orgánicos (en síntesis bioquímica)
para construir sistemas que exhiban características propias de los sistemas biológicos
naturales. En otras palabras, el campo de los sistemas bio-inspirados se compone de tres
ramas fuertemente relacionadas: software, hardware y wetware.
En términos generales, la mejor expresión de los sistemas bio-inspirados es la vida
artificial fundada por Ch. Langton en 1987 a expensas del Instituto Santa Fe y del Centro
de Estudios No Lineales del Laboratorio Nacional de Los Álamos. La vida artificial puede
ser comprendida fácilmente desde dos puntos de vista complementarios: como el
enfoque sintético de la biología, o como la ciencia de los artefactos que se comportan
como la vida. Dicho de otro modo, la vida artificial es el estudio de la vida desde un
enfoque productivo antes que histórico (F. Varela). Tal enfoque productivo se refiere a
la idea según la cual la mejor manera de comprender (y explicar) la complejidad de un
fenómeno, sistema o comportamiento dado consiste en crear (=construir), literalmente,
dicho comportamiento, sistema o fenómeno. Es justo en este punto donde el
modelamiento y la simulación juegan un papel central. Además, el enfoque productivo
de la vida artificial tiene implicaciones serias y profundas para la ingeniería al permitirle
construir sistemas y solucionadores de problemas capaces de evolucionar, adaptarse y
autoorganizarse, entre muchas otras cosas. Es aquí donde las metaheurísticas y la
hipercomputación hacen su aparición. Pues bien, gracias a la vida artificial, se sentaron
y consolidaron las bases de las técnicas contemporáneas de modelamiento, simulación
y resolución de problemas, las cuales se pueden resumir en los siguientes elementos:
• Síntesis antes que análisis.
• Modelamiento de abajo hacia arriba (bottom-up) antes que de arriba hacia abajo
(top-down).
• Control local antes que global.
• Especificaciones simples antes que complejas.
• Simulación de poblaciones antes que de individuos.
• Dinámica (no-lineal) antes que composición o estructura.
• Procesamiento paralelo antes que seriado.
• Comportamiento emergente antes que pre-especificado (o causal).
• Posibilidades antes que facticidades.
Hacia abajo, de otra parte, la computación bio-inspirada circunscribe el estudio de
técnicas para la optimización de problemas complejos. Este campo, aún en crecimiento,
se conoce como optimización bio-inspirada. Los problemas complejos de optimización
requieren ser modelados y posteriormente simulados para explorar sus vastos espacios
de soluciones. Por tanto, podemos hablar en términos de modelos de optimización y de
optimización simulada. La historia de la optimización puede rastrearse en tres
momentos principales: desde la investigación de operaciones, desde la inteligencia
artificial y desde la vida artificial. La investigación de operaciones se consolidó como una
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

rama de las matemáticas a finales de los años treinta y se mantuvo vigente hasta finales
de los años ochenta. A ella se deben buena parte de los métodos clásicos de
optimización, entre los que se encuentran las técnicas de programación matemática
(continua, entera, mixta), los modelos de satisfacción de restricciones, la teoría de colas
y los inicios de la optimización combinatoria. La inteligencia artificial, por su parte,
retomó y amplió los problemas de optimización combinatoria, inició el trabajo con
problemas de optimización dinámica y multi-objetivo e inauguró el estudio de métodos
no analíticos (heurísticos) de optimización como las redes neuronales, la búsqueda tabú
o el temple simulado. Las heurísticas y las metaheurísticas basadas en soluciones únicas
comenzaron a tomar fuerza en la resolución de problemas N-P. El auge de los modelos
de la inteligencia artificial (clásica) se mantuvo hasta finales de los años noventa. La vida
artificial es el plano más reciente para la resolución de los problemas complejos de
optimización y se concreta en la construcción de metaheurísticas (y no simplemente de
heurísticas) y, más recientemente, en el trabajo con hiperheurísticas. Una
metaheurística es una metodología (o un marco algorítmico) de alto nivel que posibilita
el diseño de heurísticas subyacentes para resolver problemas complejos de
optimización, mientras que las hiperheurísticas apuntan a la elección automática de
métodos heurísticos o metaheurísticos que resuelvan, cada vez, uno de los posibles
puntos de decisión o de solución que caracterizan a los problemas complejos (Cotta,
Sevaux y Sörensen, 2008). Las hiperheurísticas utilizan información limitada del
problema dado y no requieren un conocimiento explícito de las heurísticas y
metaheurísticas disponibles para su resolución. A diferencia de los métodos analíticos y
exactos tradicionales, las heurísticas y metaheurísticas no garantizan, en la mayoría de
las ocasiones, soluciones óptimas o cercanas a un óptimo, supuesto el número
astronómico de soluciones posibles característico de los problemas de complejidad
creciente. Mejor aún: el objetivo principal de las heurísticas y metaheurísticas es
producir soluciones de calidad aceptable en un tiempo razonable. Por tanto, en el
ámbito de la optimización bio-inspirada, los temas que se revelan como centrales son la
optimización dinámica (problemas que cambian su estructura y/o los datos del
problema, mientras la metaheurística intenta resolverlos), la optimización multi-criterio,
la optimización multi-objetivo evolutiva y la optimización robusta, principalmente.
Finalmente, y con base en los sistemas, la computación y la optimización bio-inspiradas,
a partir del año 2006, ha emergido un nuevo y radicalmente distinto tipo de ingeniería
llamado (en español) ingeniería de sistemas complejos (ISC), cabe anotar que su nombre
en inglés es bastante más afortunado: complex engineered systems (CES). La diferencia
(semántica y, sin embargo, fundamental) es que el término en español haría pensar en
una nueva clase de ingeniería, al lado, por ejemplo, de la ingeniería química, la ingeniería
de alimentos, la ingeniería administrativa o de transportes, cuando no como una clase
más, distinta, al lado de la ingeniería civil, de sistemas, o militar, por ejemplo. En
contraste, en inglés el foco no es la ingeniería, sino el tema, el problema mismo de que
se trata, a saber: cómo “ingenierar” los sistemas complejos. En otras palabras, en inglés
el centro lo ocupa el problema o el sistema de estudio, no la mirada que ve dicho sistema
o problema (= la ingeniería).
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

6. METODOLOGIA SISTEMICA
Objetivo del tema: después de una introducción al pensamiento sistémico y antes de la
presentación formalizada de la Teoría General de Sistemas (presentación formalizada
de conceptos y relaciones entre los mismos, demasiado ardua de entrada) se pretende
dar una primera visión de la metodología sistémica general, que normalmente conduce
a la construcción de modelos ad-hoc para cada tipo de problema, para experimentar
sobre ellos y, como consecuencia, tomar decisiones. Se proponen, por tanto, los
siguientes objetivos de aprendizaje:
1. distinguir entre modelos mentales y modelos para computadora, modelos cualitativos
y modelos cuantitativos, modelos discretos y modelos continuos, etc.;
2. adquirir un conjunto de métodos para la construcción de modelos;
3. aplicar estos métodos a la construcción de algunos modelos de sistemas complejos
“sencillos”.

6.1. EL METODO CIENTIFICO Y LA TEORIA DE SISTEMAS


La construcción de modelos lógico-matemáticos y de simuladores sigue el método
científico. Asumimos que trabajamos “científicamente”, pero ¿qué es trabajar
científicamente? Para responder a esta pregunta con pocas palabras podríamos decir
que trabajamos tratando de asegurarnos de que lo que decimos es cierto o, al menos,
tiene un grado de certeza conocida y aceptable. No obstante, somos conscientes de que
cualquier explicación que damos a un fenómeno de la vida real es válida siempre
provisionalmente. En los siguientes párrafos encontraremos una respuesta más
detallada.

El método científico puede ser resumido de la siguiente manera (Wartofsky, 1968):


- Observación del colectivo objeto de estudio.
- Formulación de una teoría que explique las propiedades de sus elementos y de las
relaciones entre los mismos.
- Uso de la teoría para la predicción de eventos relacionados con el colectivo.
- Experimentación-para determinar si las predicciones son acertadas o no. Cuando
no lo son procede modificar la teoría o aparcar el problema provisionalmente
(Kuhn, 1962).

Una teoría es siempre provisional y se mantiene mientras no se observen sucesos


importantes que esta teoría prohíbe. Cuando uno de estos sucesos aparece procede
modificar la teoría a fin de explicar este suceso y todos los anteriores, usando la
imaginación, la observación y la experimentación cuantas veces sea necesario. El punto
de comienzo no es necesariamente la observación porque el investigador puede tener
suficiente conocimiento previo del colectivo objeto de estudio para poder elaborar su
primera teoría. Hay situaciones en las que el concepto "programa de investigación"
(Lakatos, 1970) es más adecuado que el concepto de "teoría", pero 1os principios
inductivistas, convencionalistas, sistémicos y falsacionistas que subyacen en la anterior
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

síntesis pueden ser mantenidos en su justa medida, por el momento. Es posible conectar
la Epistemología con la Teoría de Sistemas (Buckley, 1972). La contribución más
importante para la Epistemología que se deriva de esta conexión es la referencia al
control. En otras palabras, la Naturaleza es algo que, no solamente puede ser observado,
sino que puede ser transformado y controlado por el ser humano. Y, el conocimiento es
algo más que contemplación y entendimiento. Siguiendo esta idea, es posible decir que
un conocimiento es una representación fiable de una parte de la realidad. Y, llegados a
este punto, consideramos conveniente recordar los siguientes conceptos:
- Un sistema es un conjunto de elementos interrelacionados. (Von Bertalanffy,
1972).
- Analizar un sistema es identificar sus elementos y las interrelaciones entre los
mismos.
- Describir un sistema es presentar un modelo del mismo, es decir, hacer sus
elementos e interrelaciones visibles y comprensibles.
- Para un observador O, un objeto M, es un modelo de otro objeto A, en la medida
en que O puede obtener de M respuestas a cuestiones que se refieren a A.
(Minsky, véase Melése, 1968).

Así pues, el problema del conocimiento puede ser reducido a uno o más problemas de
modelización de sistemas. Puede haber diferentes clases de modelos:
- modelos verbales, que son las descripciones tradicionales, donde los elementos
son conceptos y las relaciones son conexiones lógicas; modelos gráficos, como por
ejemplo diagramas, dibujos, etc.;
- modelos físicos, como son las maquetas (modelos estáticos), o los simuladores de
vuelo para entrenamiento de pilotos (modelos dinámicos);
- modelos de estructura, donde se representan solamente aspectos como la
posición relativa o la dependencia causal;
- modelos de comportamiento, donde se representan las reacciones del sistema a
las influencias externas, teniendo en cuenta aspectos tales como
retroalimentación, control, etc.
- etc.

Consideramos conveniente también puntualizar la diferencia entre el significado de la


palabra modelo en Lógica y en Teoría de Sistemas. En Lógica una teoría es, en síntesis,
una lista de axiomas y una lista de consecuencias de estos axiomas. Y, un modelo de una
teoría es un colectivo que satisface estos axiomas. En otras palabras, una teoría es un
"sistema formal" (véase, por ejemplo, Hackstaff, 1966) cuyos elementos y relaciones
son:
- símbolos primitivos, sin ningún significado;
- secuencias de símbolos;
- reglas de formación, que indican cuando una secuencia de símbolos "es una
fórmula" (está bien formada, pertenece al sistema);
- axiomas, que son las fórmulas iniciales; y
- teoremas, que son fórmulas obtenidas a partir de los axiomas aplicando las reglas
de formación;
y un modelo es una "interpretación" de una teoría, o bien, un modelo es un sistema
cuyos elementos y relaciones se corresponden con los de la teoría.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

En Teoría de Sistemas la noción que ocupa la posición central es, obviamente, la de


"sistema" y no la de "teoría". De aquí se pude deducir que una teoría (explicación
sistemática, es decir, acertada y formal) es un modelo verbal, y/o matemático de un
sistema. Es posible que existan otros sistemas que también estén en correspondencia
con la misma teoría pero este es otro problema. El problema que nos interesa aquí es
como obtener una buena teoría de un sistema dado. Este es el problema del
conocimiento. Y la conclusión a la que creemos haber llegado es que una teoría del
conocimiento es una teoría de la modelización de sistemas y que cada rama del
conocimiento puede ser obtenida desde esta meta-teoría.

Modelizar un sistema comienza por identificar sus elementos y las relaciones entre ellos.
La modelización se dice "multifacética" o "perspectivista", (Zeigler, 1984) porque el
modelo que se construya de un sistema real depende del objetivo del modelizador. El
grado de detalle al que se llegue en la descripción también depende de este objetivo.
Así pues, una primera aproximación puede ser un modelo de tipo "caja negra" o "input-
output", donde solo se especifican las entradas y las salidas (los datos y los resultados).
Cuando se va incrementando el detalle en la descripción se va transformando esa caja
negra en "caja transparente" (Bunge, 197D: y se va ajustando más el modelo a la
realidad. No obstante un perfecto ajuste entre modelo y realidad solo es posible en
ciertos casos particulares pero no en general. Las "teorías generales" tienen una
probabilidad igual a cero, y el progreso en la ciencia consiste en incrementar el detalle
y reducir los errores (Popper, 1912). En general un modelo es aceptable cuando las
diferencias entre él y el sistema real no son aparentes (incluyendo el error
experimental), o cuando siendo aparentes no molestan. Cuando el objetivo del
modelizador es el puro conocimiento el proceso de ajuste del modelo a la realidad
puede no tener fin. El sistema real puede ser construido y/o descubierto elemento a
elemento y relación a relación de modo paralelo al modelo si así lo determina el objetivo
del modelizador (o colectivo investigador, obviamente), es decir, la modelización puede
ser una ayuda al descubrimiento, a la creatividad, al diseño o a la construcción de
sistemas reales.
En general el modelizador debe empezar por concretar: su objetivo y la parcela de la
realidad que desea considerar. El "nivel de resolución" o grado de detalle depende de
ese objetivo y es difícil de determinar a priori. El proceso de modelización es
esencialmente cíclico, es decir, que vuelve atrás para corregir resultados de etapas
anteriores como consecuencia de los resultados de etapas posteriores que conllevan
contrastes con la realidad. Esto es lo que tradicionalmente se describe como un proceso
de "observación-inducción-deducción-experimentación" con ciertas restricciones
(véase Wartofsky, 1968). El avance de este movimiento cíclico es, primero en el sentido
de un mejor ajuste del modelo a la realidad y después en el sentido de una mayor
desagregación, hasta lograr la satisfacción del modelizador. El punto de partida es
probable que no sea la "observación" porque el modelizador generalmente cuenta con
suficiente conocimiento del sistema como para construir su primer modelo o "teoría".
Este primer paso no es normalmente un paso lógico en el estricto sentido de la palabra
"lógico" (véase Lakatos, 197l). La intuición, la imaginación o un "principio inductivo"
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

extra-metodológico, puede intervenir de manera importante en este punto. La primera


teoría y las consecutivas son siempre convencionales y provisionales. (Teoría:
establecimiento acertado y formal de elementos y relaciones: modelo verbal y/o
matemático). De esta primera teoría se pueden sacar muchas consecuencias que deben
ser contrastadas con el sistema real. Esto conlleva la realización de una serie de
experimentos cuyos resultados determinarán el grado de ajuste entre el modelo y el
sistema real. Si este grado satisface al modelizador este aceptará el modelo para sus
propósitos, y si no, volverá a la teoría y/o al sistema real y cambiará, encontrará o
construirá los elementos y las relaciones que se requieran a fin de que una nueva serie
de experimentos muestre un grado de ajuste mejor que el precedente. La palabra
"validación" el probablemente una de las más adecuadas para expresar que se desea
lograr un grado de ajuste provisionalmente suficiente. Otras palabras como verdadero
o falso, corroboración y falsificación o verificación (Popper, I976) también han sido
usadas en relación con una teoría. Cuando el sistema real es muy complejo y no está
bien definido desde el principio, el proceso de modelización es un auténtico "programa
de investigación", donde el modelo se construye sección a sección (bloque, o
submodelo), para después conectar estas secciones (también mal definidas) como un
rompecabezas. Por otra parte, un proceso muy complejo necesita más de una, quizás
muchas personas, y posiblemente más de una generación para su desarrollo. En este
caso coexisten diferentes opiniones sobre los principios básicos del proceso de
modelización (el "núcleo firme" de Lakatos, o el "paradigma" de Kuhn) y sobre la manera
de desarrollarlos (la "heurística positiva" de Lakatos). El proceso de ajuste de un modelo
a gran escala al sistema real correspondiente implica muchos cambios en el modelo y/o
en el sistema. Estos cambios pueden tener mayor o menor entidad dependiendo del
tamaño y de la situación de la parte a renovar. Los cambio que afectan a un "núcleo
firme" o a un "paradigma" pueden ser "revoluciones científicas" (Khun, 1962). Los
cambios que afectan a hipótesis auxiliares a fin de explicar nuevos "sucesos" se llaman
cambios "had hoc". Mucho se ha escrito en relación con el grado de ajuste de un modelo
a la realidad. Cuestiones tales como ¿Cómo encontrar la verdad? (Bacon-Descartes), o
¿Es posible la certeza absoluta, o encontrar las explicaciones más profundas? (Hume-
Kant), condujeron el problema de evaluar y comparar teorías a la metodología de
Popper (véase Watkins, 1980, por ejemplo) y a la metodología de Lakatos. Hay opiniones
(Miller, 1976) en el sentido de que la similaridad entre una teoría y la verdad no se puede
expresar mediante una definición formal, o en el sentido de que el contenido en verdad
o falsedad de dos teorías no es comparable, estas "ven el mundo de maneras diferentes"
Feyerabend, el último Wittgenstein). Pero probablemente sí es posible construir un
índice que evalúe el grado de ajuste entre un modelo dado y un sistema real dado
(Caselles, 1984). Este índice, como todo modelo, será siempre convencional y
provisional y perfectible, y permanecerá vigente mientras sea útil o suficiente para los
propósitos que se le asignen.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

6.2. ETAPAS DE LA MODELIZACION

6.2.1. LA TOMA DE DECISIONES Y LA RESOLUCION DE PROBLEMAS:


Imaginemos que nos encontramos ante un problema en un sistema complejo. Es decir,
tenemos que tomar decisiones respecto al sistema a fin de maximizar o minimizar algo.
El pilotaje de los sistemas complejos necesita de modelos y de computadoras para ser
eficiente. Construir un modelo que estime la fiabilidad de sus resultados, sobre un
sistema complejo puede ser una tarea descorazonadora, necesita de muchas horas de
trabajo y de muchas personas, y además el modelo necesita una puesta al día constante
porque los sistemas reales evolucionan muchas veces de manera imprevisible. Por
consiguiente, para que los modelos sean un instrumento eficaz de ayuda en la toma de
decisiones deben poder ser construidos y actualizados de manera poco costosa. Para
ello y una vez más necesitamos a las computadoras. Pero su uso está condicionado por
la metodología que se utilice para la modelización. Existen diferentes metodologías para
modelizar sistemas reales con diferente eficiencia y generalidad. Caselles (1993b)
propone una metodología que parece bastante general y eficiente. Vamos a estudiarla
y a compararla con otras metodologías alternativas.

6.2.2. METODOLOGIA GENERAL PARA MODELIZAR:

Nosotros entendemos por metodología un conjunto de métodos organizados con un fin


determinado. Check1and (1981) hace una discusión bastante extensa sobre los posibles
significados de la palabra metodología. Una metodología general para construir
modelos sería muy de desear. Gorokov (1985) llama "configurador" a un hipotético
modelo universal válido para todos los sistemas. Este configurador debería incluir un
esquema general de tipo ontológico y un esquema general de comportamiento, debería
asumir y sintetizar las diferentes aproximaciones a la modelización, y debería ser capaz
de integrar modelos parciales o específicos en uno más complejo. Este configurador no
existe todavía. Hay diferentes metodologías p a r a modelizar pero todas ellas e s t á n
restringidas en algún sentido (véase por ejemplo, Gelovany, 1985 y O'Keefy, 1989).
Caselles (1993b) propone un proceso modelizador que trata de organizar métodos
parciales y trata de integrar las ideas de Forrester (1961 y 1966), Checkland (1981),
Morecroft (1982), Balci (1986), Mathewson (1989), Zhang et al. (1990) y Caselles (1992
y 1993a). Este proceso es el siguiente (más adelante se detalla).

1. Descripción del problema. Esto es, especificación de los objetivos y de los


condicionantes en lenguaje natural. Se sugieren como métodos adecuados para
ello el Brainstorming, el Delphi y similares.
2. Construcción de un modelo conceptual.
2.1 Elección de los objetos, elementos o variables que tengan alguna relación
con los objetivos propuestos. Métodos que se sugieren: Brainstorming,
Delphi, y similares.
2.2 Identificación de relaciones causa-efecto entre los elementos seleccionados.
Métodos sugeridos: Diagrama Causal, Diagrama de Subsistemas, Diagrama
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

hidrodinámico o de Forrester (véase Morecroft, 1982), Análisis


Multivariante, y métodos similares.
2.3 Asignación de una representación funcional a las relaciones detectadas. Es
decir, escribir dichas relaciones (una variable dependiendo de otras) como
ecuaciones y/o tablas y/o reglas lógicas.
Métodos sugeridos: Brainstorming, Delphi, Regresión, Ecuaciones
Diferenciales, Integración numérica, etc.
3. Programación del modelo para una computadora o instrucción de un grupo de
expertos (generalmente el mismo que ha construido el modelo conceptual)
sobre la estructura y el comportamiento del mismo. Métodos que se sugieren:
Hoja de Cálculo, Generadores de aplicaciones (herramientas CASE), Lenguajes de
Simulación, Interpretadores de Descripciones (Davies y O'Keefy, 1989), técnicas
de Dinámica de Grupos humanos (para modelos mentales o "soft"), etc.
4. Calibrado del modelo. Algunos tipos de modelos requieren esta operación, que
consiste en asignar un valor lo más adecuado posible a los parámetros del
modelo una vez construido este. Ello se suele lograr con los métodos de prueba
y error o con estudios específicos.
5. Análisis de sensibilidad. Algunos tipos de modelos y concretamente los que
requieren de la operación de calibrado necesitan también del análisis de la
sensibilidad de las variables endógenas frente a pequeñas variaciones de los
valores de los parámetros. También esto se suele lograr por los métodos de
prueba y error o por estudios específicos.
6. Evaluación de la validez o utilidad del modelo para el logro de los objetivos
propuestos. Métodos que se sugieren: establecimiento de reglas y/o ecuaciones
y/o tablas para determinar el grado de ajuste entre el modelo y el sistema real.
7. Diseño de experimentos o de procedimientos de optimización para ser
realizados sobre el modelo. Métodos sugeridos: los de la Estadística y la
Investigación Operativa, escenarios y estrategias, etc.
8. Realización de los experimentos o procedimientos de optimizaci6n diseñados.
Métodos que se sugieren: simulación sobre computadora, simulación sobre un
grupo humano (para la aproximación "soft") y similares.
9. Presentación de los resultados obtenidos. Métodos sugeridos: elaboración de
tablas, gráficos, dibujos, documentos, etc.
10. Toma de decisiones. Métodos sugeridos: los de la Teoría de la Decisión.
El proceso anterior es secuencial, pero:

a. Es necesario un proceso de verificación en cada paso. Es decir, hay que


comprobar que cada paso ha sido bien ejecutado. Esta comprobación
conduce al equipo, además de a corregir errores, a volver atrás y rehacer y/o
modificar los pasos anteriores y sus resultados. Cada paso conduce al equipo
modelizador a descubrir nuevos elementos, relaciones y objetivos que no
habían sido tenidos en cuenta en los pasos anteriores, y como consecuencia
a modificarlos o a reconsiderarlos. Los datos de campo son necesarios en la
mayoría de los pasos. Por tanto, la adquisición de datos, su gestión, análisis
y validación están siempre presentes.

Así pues, la situación podría resumirse de la siguiente manera:


FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

Obsérvese que el proceso modelizador que se propone trata de integrar las


metodologías "soft", basadas en modelos mentales, (Checkland, 1981), y las "hard", y
con respecto a esta últimas, la aproximación "inductiva", basada en los datos de campo,
(Klir, 1985, por ejemplo), y la aproximación " deductiva " o realista , basada en
estructuras y comportamientos hipotéticos propuestos para el sistema (Zeigler, 1984
por ejemplo).
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

El grafico de la Figura 2 puede también ayudar a visualizar el proceso descrito.

6.2.3. AYUDAS INFORMATICAS:


Cada uno de los pasos descritos en el punto 6.2.2 puede ser realizado con métodos que
pueden incluir ayuda informática. El proceso completo podría ser realizado dentro de
un entorno informático. La necesidad y las características de esta clase de entorno son
estudiadas por Balci (1986). Un entorno de este tipo ya comercializado pero restringido
a una clase de problemas muy específica es descrito por Standbridge (1985). En el
futuro, interfaces que usarán el lenguaje natural guiarán el proceso completo dentro de
los entornos de modelización. Hoy en día las herramientas de modelización más
modernas inciden en los pasos 2.2, 3 y 9. Las que inciden en los pasos 2.2 y 9 son,
generalmente, herramientas de uso general en los campos gráfico y/o estadístico. Las
que inciden en el paso 3 pueden ser clasificados en:
− Lenguajes de simulación,
− Generadores de aplicaciones,
− Interpretadores de descripciones.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

La programación de un modelo para una computadora puede realizarse con un lenguaje


de programación de tipo general (C, PASCAL, BASIC, FORTRAN, etc.) o con un lenguaje
especialmente diseñado para ahorrar tiempo de programación cuando tratamos con
modelos de determinados tipos. Por ejemplo, un tipo muy común de problemas que se
dan en la industria son los que conducen a modelos llamados de redes de colas, que se
asocian generalmente con la llamada "simulación de sucesos discretos" (DEVS) (véase
por ejemplo, Davies y O'Keefe, 1989). Alrededor de este tipo de simulación se ha
desarrollado una metodología muy completa (Zeigler, 1984, 1987, 1989, 1990). Los
lenguajes de simulación más populares son SIMSCRIPT, GPSS y SIMULA. Otros lenguajes
importantes son QNAP2 y STIMS. Todos ellos tienen facilidades para definir entidades,
usar números aleatorios, manejar listas, elaborar tablas y gráficos, etc. Lenguajes de tipo
algo más general que tienen facilidades para programar simulador es son el
Mathematica y el Matlab/Simulink. Para nosotros, generadores de aplicaciones o
generadores de programas son programas que dialogan con el usuario, interpretan sus
respuestas y construyen otros programas que pueden ser compilados y ejecutados de
manera independiente, fuera del generador, con el fin de ejecutar las simulaciones
diseñadas por el usuario. El uso de generadores de programas produce un considerable
ahorro de tiempo, sin embargo, normalmente exigen adaptarse a una metodología muy
rígida. Como ejemplos de generadores de programas adaptados a la DEVS tenemos:
GRAFT (Matheuson, 1984) que puede producir programas escritos en varios lenguajes,
eLSE, que genera programas en PASCAL (Crookes et al, 1986). Un generador de
programas de simulación orientados a objetos llamado GASPE es descrito por Simonot
et al. (1990). Zhang et al. (1990) compara un generador que usa interface de tipo dialogo
con otros que usan interfaces de tipo gráfico, todos generando programas en GPSS,
llagando a la conclusión de que la interface de tipo dialogo es más eficiente. Los
"interpretadores de descripciones" suelen presentar al usuario una "hoja" o menú
donde el usuario da una descripción semi-formal del sistema. Esta descripción es
interpretada inmediatamente. No se genera ningún programa en lenguaje fuente ni de
forma que pueda ser ejecutado fuera del entorno en que ha sido producido. Tampoco
se mantiene dialogo alguno con el usuario. Como ejemplos de este tipo de entornos
tenemos Inter-SIM (O'Keefy, 1987) y HOCUS (Ponle y Szymankiewicz, 1987), ambos
adaptados a DEVS. En esta categoría podríamos incluir también a las hojas de cálculo
(EXCEL por ejemplo) y a los modernos entornos como son el Stella y el Vensim. En
general, las ayudas informáticas a la modelización pueden considerarse como
demasiado restringidas y poco eficientes respecto a lo que sería de desear. Se hace
necesario progresar hacia una metodología con un máximo de ayuda informática y capaz
de enfocar un amplio espectro de tipos de problemas, siendo realmente eficiente.
Nosotros hemos estado trabajando en esta línea desde 1986.
El generador de programas SIGEM, fue presentado por primera vez por Caselles (1988).
El amplio espectro de problemas que pueden ser tratados en la actualidad por esta
ayuda informática se describe en otro trabajo (Caselles, 1991 y 1994). Este espectro va
desde sistemas estáticos como bases de datos con variables numéricas y/o literales a
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

sistemas dinámicos con variables numéricas y/o literales, con o sin incertidumbre,
dimensionadas o no, y con relaciones funcionales dadas mediante ecuaciones y/o reglas
lógicas y/o tablas, con o sin incertidumbre. Los programas construidos por SIGEM
dialogan con el usuario, dándole indicaciones sobre cómo proceder, planteándole
preguntas y menús y ejecutando sus órdenes. Con respecto a la eficiencia de SIGEM
diremos que con un análisis previo del problema que se materialice en un gráfico de
conexiones entre variables o en un diagrama de Forrester y en una lista desordenada de
relaciones funcionales, todo ello escrito a mano en una o varias hojas de papel, en un
tiempo entre varios minutos y varias horas, con un ordenador personal, el modelo se
convierte en programa de ordenador listo para ser usado como un amigable sistema
experto que puede ayudar al usuario a tomar decisiones sobre el problema del que
entiende. Como el programa producido esta en lenguaje fuente (Visual Basic), puede
considerarse como un prototipo y puede ser modificado si se considera conveniente.
SIGEM está enteramente fundado sobre la Teoría General de Sistemas, con una
formalización novedosa que se describe en otros dos artículos de Caselles (1992b, y
1993a).

6.3. DETALLES DE LA METODOLOGIA PARA LA MODELIZACION


La metodología propuesta en 2.2 de manera esquemática, pretende ser capaz de
abordar problemas tanto desde el punto de vista "soft" (con modelos mentales y
discusión en equipo) como desde el punto de vista "hard" (con modelos matemáticos y
computadoras). Y, en este último caso, tanto desde el punto de vista inductivo (con
modelos fenomenológicos obtenidos exclusivamente a partir de datos de campo) como
desde el punto de vista deductivo (con modelos realistas, propuestos por el equipo
como hipotéticos, y posteriormente validados), o desde un punto de vista mixto (con
subsistemas de un tipo o del otro). Detallando un poco más, con esta metodología se
pueden elaborar modelos de sucesos discretos, modelos continuos, cualitativos,
cuantitativos, deterministas, estocásticos, etc., puesto que las cuestiones específicas de
cada tipo de modelo se corresponden con métodos específicos en cada una de las fases
del proceso.
A continuación vamos a detallar algo más en cada una de las fases del proceso referido,
presentando las líneas generales de los principales métodos utilizables en cada caso y
ofreciendo bibliografía para un estudio más profundo de los mismos.

6.3.1. DESCRIPCION DEL PROBLEMA


Es comúnmente aceptado que la modelización es "multifacética" o "perspectivista", es
decir el modelo que se construya dependerá de los objetivos del modelizador y de las
asunciones que se hagan sobre el sistema real. Así, c o n diferentes objetivos y/o
asunciones se obtendrán diferentes modelos del mismo sistema real. Aquí estamos
considerando al sistema real como sinónimo de la porción de la realidad que nos
suministra datos. Como consecuencia de este perspectivismo, el primer paso del
proceso de modelización debe ser la especificación de: (a) los objetivos del modelizador
y de (b) las asunciones, (c) restricciones, (d) tipos de datos y (e) tipos de resultados, y de
todo lo que pueda tener alguna influencia sobre los mencionados objetivos. En esta fase
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

es conveniente utilizar el lenguaje natural ayudado de tablas, gráficos, y de lo que se


estime conveniente, con la máxima libertad. No obstante, suele ser suficiente para
empezar una descripción somera de los ítems (a), (b), (c), (d), (e) recientemente
mencionados, dado que en las fases sucesivas se encontrarán ocasiones de mejorar esta
descripción. No olvidemos que la metodología incluye continuas vueltas atrás para
corregir las fases anteriores como consecuencia de lo que se encuentra en las fases
siguientes.

EJEMPLO 1:
OBJETIVOS.
1. Una empresa que comercializa aparatos eléctricos de gran potencia desea
optimizar el número de aparatos a guardar en su almacén.
RESTRICCIONES.
1. La demanda varia de un día a otro.
2. Todas las unidades solicitadas pero no disponibles se dejan en espera y se
satisfacen cuando llega una nueva remesa.
TIPOS DE DATOS.
1. El aparato que comercializa le cuesta 5000 € por unidad.
2. El costo de mantener un aparato en el almacén es del 20% de su valor al año.
3. El costo de procesamiento de un pedido de cualquier número de unidades es de
200 € por pedido.
4. Se dispone de un registro de unidades vendidas día a día y de tiempos de espera
desde que el cliente solicitó hasta que se le sirvió.
De tal registro se han obtenido las siguientes tablas:

Demanda Frecuencia Relativa (%) Tiempo de Espera (días) Frecuencia Relativa (%)
0 40 1 25
1 30 2 50
2 20 3 25
3 10

TIPOS DE RESULTADOS.
1. Modelo de Dinámica de Sistemas hipotético, a validar en la medida de lo posible
con los datos disponibles (No será posible hacerlo por el método de predicción
del pasado, dado que no existen datos de pedidos efectuados, ni de existencias
día a día, ni de demanda en espera. Se validará por opiniones de expertos, es
decir, “si se creen el modelo deberán creerse sus resultados”).
2. Simulaciones de la evolución del número de aparatos vendidos, en almacén y
coste de mantenimiento del inventario a lo largo del tiempo durante 30 días.
3. Número óptimo de aparatos a pedir a la fábrica cada vez.
4. Existencias en almacén que debe haber en el momento idóneo para hacer un
pedido a fábrica.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

EJEMPLO 2:
OBJETIVOS.
1. Determinar los flujos óptimos de agua para transvase entre las cuencas
hidrográficas de un país.
RESTRICCIONES.
1. Ámbito nacional y zonas por cuadrículas del mapa.
2. Existen dessaladoras y se pueden eliminar y/o construir otras.
3. Se clasificará el agua por destinos: Población, Agricultura, Industria y Turismo .
TIPOS DE DATOS.
1. Precipitaciones.
2. Agua que producen y pueden producir las dessaladoras actuales.
3. Caudales de los ríos.
4. Necesidades de la población, agricultura, industria y turismo.
RESULTADOS.
1. Trasvases. Flujos óptimos de agua entre cuencas

6.3.2. SELECCIÓN DE LAS VARIABLES MÁS RELEVANTES


Nosotros dividimos este paso en dos:

− identificación de los elementos involucrados en el problema; y


− asignación de una forma a dichos elementos.

La primera parte intenta detectar qué elementos u objetos intervienen o influyen en el


problema, es decir, en los objetivos recientemente planteados. Al final de la misma estos
elementos quedan descritos de una manera poco rigurosa, generalmente en lenguaje
natural. La segunda parte persigue dar a cada elemento identificado una descripción
más rigurosa y detallada o bien asociarle una variable matemática, es decir, darle un
nombre explicativo preciso y conciso, un nombre codificado (abreviado), una unidad de
medida (cuando sea necesario), y un rango de valores posibles (que pueden ser
números, palabras, conceptos, principios, reglas, métodos, etc.), una serie de valores
observados en la realidad (si es posible), y si se trata de una variable con incertidumbre,
determinar, si se puede, su media, su desviación típica, clase de distribución de sus
valores, y/o otros parámetros o factores definitorios que se consideren adecuados.

En esta fase se suelen utilizar: (a) los métodos de creatividad en grupos y (b) el blanqueo
de cajas negras: (c) en algún caso de modelización inductiva o mixta, el Análisis
Multivariante. Este último método nos permite, dado un conjunto de variables
numéricas con una serie de valores para cada una de ellas, determinar cuáles están
relacionadas y cuáles no tienen nada que ver la una con la otra a efectos prácticos. Estas
últimas pueden ser eliminadas aunque en un principio pareciera que debían ser tomadas
en consideración.
A continuación detallamos estos enfoques.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

6.3.2.1. METODOS DE CREATIVIDAD EN GRUPO


Existen métodos que ayudan a conseguir una mayor eficiencia en el proceso de
búsqueda de los factores que intervienen en el problema que se está estudiando,
cuando es un equipo de personas el que lo estudia. Entre estos métodos destacamos el
Brainstorming y el Delphi que son descritos con cierto detalle por ejemplo por Sage
(1977). Son métodos de creatividad grupal que tratan de corregir los defectos del grupo
de discusión tradicional. Entre estos defectos cabe destacar los siguientes:
− La opinión del grupo acaba siendo la del miembro que más fuerte y con más
frecuencia habla. Existe una cierta presión grupal hacia la conformidad, bien por
el prestigio del que prestó la idea, bien por existir una mayoría clara, por
cansancio, temor, etc.
− Se tratan temas de interés personal para algunos o la totalidad de los miembros
del grupo antes que el tema objeto de la reunión, lo que se suele llamar "ruido".
− Intervienen multitud de factores psicológicos que pueden enmascarar o afectar
a la solución del problema así como a la duración de la reunión.

En el brainstorming el grupo debe nombrar un moderador, un secretario, y es


conveniente que disponga de una pizarra. Es función del moderador:

− Explicar al grupo en qué consiste el brainstorming.


− Exponer lo que se desea conseguir.
− Dar la palabra a quien la tenga pedida, de modo ordenado, cuando proceda.
− Inyectar ideas o leer notas tomadas cuando el grupo se paraliza.

Es función del secretario: tomar nota de lo que se va diciendo y de las conclusiones a las
que el grupo va llegando. El método tiene dos fases:
1. Una vez el moderador ha expuesto al grupo lo que se pretende conseguir,
permite a los miembros del mismo aportar ideas. Ideas que deberán ser
expuestas con una o muy pocas palabras y anotadas seguidamente. No está
permitido ningún tipo de discusión o dialogo. Ninguna idea se considera
descabellada en esta fase.
2. Cuando el grupo llega al punto de no aportar ya nada nuevo, el moderador insta
a sus miembros a dar razones en pro y e n c ontra de cada una de las ideas de la
l i s t a y e l secretario toma nota de estas razones de forma ordenada. Agotadas
las posibilidades de la primera idea se pasa a la segunda y sucesivas hasta
finalizar. En la recapitulación subsiguiente es cuando se logra un mayor o menor
grado de consenso sobre el resultado de la sesión.

Respecto al método Delphi, diremos que sigue un procedimiento análogo al


brainstorming pero por escrito y por correo. Existe un equipo director y unos expertos
diseminados. El equipo director elabora unos cuestionarios que envía a los expertos y
analiza, sintetiza y presenta de forma ordenada las respuestas. Esta síntesis es enviada
a los expertos junto con el siguiente cuestionario. En total suelen elaborarse unos cuatro
cuestionarios, los dos primeros se corresponden con la primera fase del Brainstorming
y los dos últimos con la segunda.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

El primer cuestionario presenta el problema y solicita ideas en formato muy breve (1-3
palabras). El segundo presenta una fusión y depuración de las respuestas del primero y
solicita nuevas ideas. El tercero presenta la fusión y depuración de las ideas del segundo
y solicita pros y contras de cada una de ellas. El cuarto funde y depura las respuestas del
tercero y solicita nuevos pros y contras. Para detalles sobre cómo elaborarlos
cuestionarios, consideraciones psicológicas, etc. véase la bibliografía especializada (por
ejemplo, Listone y Turoff, 1975). Las características más importantes del método son las
siguientes:

− Obtiene respuestas simultáneas y anónimas. Ello elimina los dos primeros


inconvenientes del grupo de discusión tradicional.
− Permite la interacción entre los miembros del grupo y el retorno a cada miembro
de las conclusiones parciales del grupo a pesar de la separación. La separación
de los miembros del grupo consigue eliminar el diálogo irrelevante y los temas
de interés personal (el "ruido"), y también otros problemas psicológicos
derivados del contacto entre las personas.
− El hecho de que cada respuesta a cada pregunta se tenga de modo aislado
permite la interpretación estadística de los resultados.

EJEMPLO:
Para el problema de las dessaladoras, a través de un brainstorming, se pidió al grupo en
la primera fase los “factores implicados en el problema”. En la segunda fase se trató de
depurar la lista obtenida y obtener de ella una lista de variables con su unidad de medida
(explícita o implícita). Conseguimos la siguiente lista:
 Necesidades de la población (litros/habitante y día)
 Población por zonas (matriz)
 Precipitaciones por zonas (matriz)
 Mermas (% de pérdidas por kilómetro) (zonas, matriz)
 Superficie agraria (zonas, matriz)
 Necesidades agua agraria (m3/habitante y año)
 Política: votos (zonas, matriz)
 Flujos entre cuencas o entre depósitos:
o Flujo que circula
o Casilla de salida
o Casilla de llegada
o Capacidad de la conducción.
 Cuencas hidrográficas (matriz, número de cuenca en casillas)
 Capacidad dessaladoras (matriz, capacidad en casilla)
 Ubicación de los depósitos (matriz, capacidad en casilla)
 Caudales ecológicos por cuencas (9 cuencas)
 Rentabilidades de agricultura, industria y turismo (zonas, matriz)
 Necesidades industria
 Capacidad embalses
 Capacidad conducciones
 Acuíferos
 Superficie de bosque y montes (zonas, matriz)
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

6.3.2.2. EL BLANQUEO DE CAJAS NEGRAS


Entendemos por caja negra un sistema del que solo se conoce su relación con el entorno
pero no su estructura y comportamiento interno. Por consiguiente, de él lo único que
sabemos son las entradas y las salidas. Si tratamos de blanquear una caja negra
estaremos tratando de identificar otras cajas negras en su interior y las relaciones entre
las mismas y con el entorno.

EJEMPLO:
Para el problema de la globalización, que considera el mundo como una caja negra sin
relaciones con el entorno (tendrían que ser interplanetarias), tendíamos como primer
nivel de desagregación:

Demografía Mercancías Servicios Capital


Por sexos, cohortes y Por sectores Por sectores Por tipos y zonas.
zonas. productivos y productivos y
Incluye Naturaleza y
zonas. zonas.
Incluye imaginaciones capital humano.
Incluye recursos.

Sistema de control Objetivos

Organizaciones supranacionales. Índices de sostenibilidad.

Empresas. - Recursos: Energía, Tierra Cultivable,


Agua potable.
Estados (política). - Medio ambiente: Nivel del mar,
Vientos, Inundaciones, Sequias.
Cultura (costumbres, religiones,
- Huella ecológica (Ha o CO2).
valores).
- Crecimiento: Población, Consumo
Incluye imaginaciones per cápita, Sanidad, Educación.

Índices de globalización.

- Libertades: Capitales, Mercancías,


Servicios, Personas, Culturas.
- Derechos humanos.

Y, como segundo nivel de desagregación, cada uno de estos bloques daría lugar a un
nuevo gráfico. Por ejemplo el bloque demográfico se podría desagregar de la siguiente
manera:
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

Nacimiento y Nacimiento y
Crecimiento Crecimiento

Hombres Mujeres

5 cohortes (infantil, 5 cohortes (infantil,


primaria, secundaria, primaria, secundaria,
laboral, jubilados). laboral, jubilados).

11 zonas geográficas 11 zonas geográficas


Migraciones (Europa, USA, Japón, (Europa, USA, Japón, Migraciones
Rusia, China, India, SE Rusia, China, India, SE
Asia, África, América Asia, África, América
Población Activa Latina, Australia y NZ). Latina, Australia y NZ). Población Activa

Población Laboral Defunciones Defunciones Población Laboral

Y así sucesivamente.

6.3.3. Identificación de las conexiones causa-efecto entre las


variables o elementos.
La misión de este paso es construir una representación gráfica de la
estructura del modelo (todavía no entramos en el estudio del
comportamiento). Los elementos serán los vértices del grafo y las relaciones
causa-efecto serán las flechas del mismo. Un aditamento interesante a este
diagrama son los signos + y – escritos junto a las flechas, indicando que se
trata de una influencia positiva o negativa. Haciendo esto construiremos el
diagrama causal.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

Del diagrama causal se deduce la matriz de conexiones, ambos definidores de la


estructura del sistema. La siguiente es la matriz de conexiones correspondiente a
“demografía elemental” (en ella la variable que encabeza una fila recibe la influencia de
la variable que encabeza una columna, pero podría haberse escrito al revés).

Población Nacimientos Defunciones Tasa de natalidad Tasa de mortalidad


Poblacion X X X - -
Nacimientos X - - X -
Defunciones X - - X
Saldo migratorio - - - - -
Tasa de natalidad - - - - -
Tasa de mortalidad - - - - -

Otro tipo de diagrama que interesa construir es el diagrama hidrodinámico o diagrama


de Forrester (Forrester, 1961). Con este fin, lo primero que tenemos que hacer es
identificar los siguientes tipos de variables en la lista elaborada en el paso anterior.
- Variables de estado. Son las que necesitan un valor inicial porque influyen sobre
sí mismas. Estos valores iniciales son datos del problema o variables de entrada
del sistema y, por consiguiente necesitan un nombre a parte. Es decir, cada
variable de estado está asociada con otra variable (variable de entrada) que
representa su valor inicial o previo. Conviene, por resultar más intuitivo,
representar en el gráfico ambas variables, la de estado y su valor inicial, en la
misma casilla. El colocar o no una flecha que indique la influencia de la casilla
sobre ella misma es innecesario por obvio. Se suele usar para este tipo de
variables como icono un recuadro.
- Variables de flujo o tasas. Normalmente, pero no siempre, las variables de estado
son comparables a las variables "de nivel" de la metodología de Forrester (1961
y 1966) o a las "colas" en la metodología DEVS (Zeigler, 1984 etc.). Cada nivel o
cola representa algo que se acumula, por consiguiente está asociada con
variables que aportan ese algo y con variables que lo extraen. Estas son las que
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

llamamos variables de flujo (las tasas,"rates" de Forrester). Una vez que las
variables de estado han sido identificadas, y transportadas al campo del gráfico
encerradas en un recuadro, es fácil identificar en la lista las variables de flujo
relacionadas con cada una de ellas y transportarlas al grafo colocándolas en su
proximidad encerradas en un recuadro unido a un aspa, que es el icono
tradicional para este tipo de variables.
- El resto de las variables de la lista. Estas variables se transportan al grafo
encerradas en una elipse y serán variables auxiliares o variables de entrada. Las
variables de entrada, tanto si son constantes como variables exógenas o
variables de control conviene distinguirlas con una doble línea en su elipseo
símbolo de flujo (puede haber flujos que sean variables de entrada, es decir,
datos del problema).
- En ocasiones interesa considerar un nuevo tipo de variables llamadas “retrasos”
de las que trataremos más adelante. La descripción del problema, el sentido
común, u otros métodos de los que hablaremos más adelante, nos permitirán
colocar flechas entre los símbolos, que expresen: (a) movimiento de algo
comparable con un fluido (la población en un modelo demográfico, los
materiales en un modelo de inventario, etc.) y (b) conexiones de pura influencia
o causalidad, es decir, de información en general. Se suelen utilizar flechas
continuas en el caso (a) y flechas discontinuas en el caso (b). No obstante, en
ocasiones puede ser interesante utilizar flechas de más tipos (continuas gruesas
para equipos, continuas dobles para mano de obra, etc.).

Ejemplos:
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

En relación con los métodos para detectar las conexiones entre elementos o variables
diremos que cuando se construyen modelos de tipo mental o modelos para
computadora de tipo deductivo, dependiendo de la complejidad del modelo y de los
medios disponibles, se puede utilizar el sentido común, la consulta a expertos, el
Brainstorminsg, el Delphi o similares. Cuando se construyen modelos para computadora
de tipo inductivo (a partir de datos reales) o mixto, con variables numéricas se pueden
utilizar m é todos llamados de "análisis causal" (*) que pueden encontrarse por ejemplo
en Bollen (1989).
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

En ocasiones, especialmente cuando el sistema es muy complejo, puede ser interesante


en esta fase construir además del descrito otros tipos de diagramas pues ello ayuda a
entender y a precisar la estructura del sistema. Concretamente uno a varios diagramas
de subsistemas. Los subsistemas, como veremos más adelante, los define el usuario a
su conveniencia, pero siempre existe uno o más conjuntos de subsistemas que resultan
más intuitivos, y pueden en esta fase ser representados como elementos en un grafo de
conexiones similar al descrito anteriormente, donde también pueden figurar, si se
estima oportuno, las variables comunes representadas por cada flecha. Como ejemplo
significativo de este tipo de diagramas está el diagrama de Ashby descrito por Melèse
(1976), especialmente indicado para los sistemas con objetivos o sistemas
“cibernéticos”. En el diagrama del “sistema ultraestable” de Ashby se contemplan cuatro
niveles de control anidados y está pensado para las empresas, y cualquier otro tipo de
organización. Los sistemas vivos son un caso particular de sistemas con objetivos y para
ellos Miller (1978) desarrolló toda una teoría.

Tabla 1 Diagrama del Sistema ultraestable de Ashby (para sistemas con objetivos) (Aplicado al caso de una empresa)

Nivel de Conoce: Determina: Decide a Su actividad se


Control plazo: llama:
Mutación Universo Objetivos Muy largo Política
Exterior
Evolución Objetivos Medios Largo Estrategia
Gestión Objetivos y Procedimientos Medio Táctica
Medios
Explotación Objetivos, Correcta Muy corto o Ejecución
Medios y ejecución inmediato
Procedimientos
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

6.3.4. REPRESENTACION FUNCIONAL DE LAS RELACIONES


La representación gráfica de la estructura del modelo muestra, por ejemplo,
que una variable o elemento A depende de B, C y D. Esto significa que para
obtener un valor de A debemos conocer los valores de B, C y D así como el
mecanismo que los liga, es decir la función A=f (B, C, D), si se utiliza el
lenguaje matemático. Esta función describe el comportamiento de la variable
A y puede ser representada por una lista de reglas, por una tabla, una
ecuación o una lista de reglas y ecuaciones. La forma de esta función en cada
caso particular puede determinarse: por el sentido común (tautologías), por
consulta a expertos individuales o en grupo (Brainstorming o Delphi), usando
los métodos de la Regresión (para funciones de tipo numérico en modelos
inductivos o mixtos), o bien por el método de prueba y error planteando
formas hipotéticas y probándolas con datos reales (esto formaría parte del
"calibrado del modelo"). A continuación se detalla las funciones más
comunes que nos pueden relacionar las variables en un sistema complejo.

a) Tautologías: igualdades evidentes.


Ejemplos: 4 = 2 +2. Lo que hay = lo que había + lo entrado – lo salido.
b) Reglas lógicas: Si “esto” entonces “lo otro” y si no “otra cosa”. Que, en
lenguaje de programación, sería: If “....” then “........” else “...........”
c) Tablas: la función Y=f(X1, X1, ..., Xn) podría venir dada por una tabla
parecida a esta:

X1 X2 ... Xn Y
3 -1.1 0.08 24.1
5 -0.4 0.10 26.4
8 0 0.16 29.3
11 2.7 0.21 29.8
15 3.1 0.29 33.1

d) Ecuaciones diferenciales: una ecuación diferencial ordinaria de orden n


es una función de este tipo: f (x, y, y’, y’’,..., y(n)) = 0, donde x es la variable
independiente y y, y’, y’’,..., y(n) son las derivadas sucesivas de y respecto
de x.
Una ecuación diferencial de primer orden solo tendría la derivada
primera y’=dy/dx. Y si la variable independiente fuese el tiempo y la
ecuación incluyese otras variables a las que llamaríamos x1, x2,... xn,
podríamos escribir:

dy/dt = f(x1, x2, ... xn, y, t) (1)

De una ecuación diferencial nos suele interesar una “integral particular”,


es decir, una función y = F(x1, x2,... xn, t) cuya derivada es f(x1, x2,... xn,
y, t) y que además cumple otra condición. El método numérico más
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

sencillo para obtener los puntos de esta F es el método de Euler que, en


síntesis, consiste en considerar los diferenciales dy y dt como
incrementos finitos ∆y e ∆t. Con ello la ecuación diferencial se transforma
en una ecuación en diferencias finitas, que se integra como vemos a
continuación.

e) Ecuaciones en diferencias finitas: la ecuación (1) escrita en diferencias


finitas quedaría:

∆y /∆t = f(x1, x2, ... xn, y(t-∆t), t)


O bien:
∆y = f(x1, x2, ... xn, y(t-∆t), t) · ∆t
De dónde:
y(t) = y(t-∆t) + f(x1, x2, ... xn, y(t-∆t), t) · ∆t

f) Retrasos: en ocasiones, algunas variables influyen con cierto retraso


temporal respecto a otras. Los retrasos se suelen formular de la siguiente
manera:

Vretrasada(t) = Vretrasada(t-∆t) + (Voriginal(t) - Vretrasada(t-∆t)) · ∆t / Tretraso

Es decir, se asume que la diferencia entre el valor real de la variable V en


el instante t, al que hemos llamado Voriginal(t), y el valor de la misma
variable percibida con retraso en el instante anterior, Vretrasada(t-∆t),
tarda un tiempo en percibirse, Tretraso , luego en el intervalo ∆t se
percibirá la fracción ∆t / Tretraso de esa diferencia.

Ejemplo:
en una zona con hormigueros, las hormigas pueden colonizar o
abandonar la zona. Hay atractivos de la zona que pueden tardar en
percibirse. Sobre el atractivo puede influir la lluvia, nuevas fuentes de
alimento, etc. Estúdiese el diagrama siguiente:
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

La lista de variables y la lista de funciones serían:


HORM cantidad de hormigueros
HORI cantidad inicial de hormigueros
HONU nuevos hormigueros
LLUV cantidad de lluvia media de a zona
CULT cantidad de cultivos (%)
TEMP temperatura media de a zona
HUSU humedad media del suelo en la zona
HOAB abandono de hormigueros
ATPE atractivo de la zona percibido por las hormigas
ATPI atractivo de la zona percibido inicialmente por las hormigas
TCHO tasa normal de construcción de hormigueros
TAHO tasa normal de abandono de hormigueros
MCON multiplicador para la construcción de hormigueros
MABA multiplicador para el abandono de hormigueros
TRAT tiempo de retraso en la percepción del atractivo de la zona por las
hormigas
ATRE atractivo real de la zona para las hormigas
HONU honu = hori * tcho/100 * mcon
HOAB hoab = hori * taho/100 * maba
HORM horm = hori + honu – hoab
ATPE atpe = atpi + 1/trat * (atre-atpi)
ATRE atre = f(lluv, cult, temp, husu) ‘f obtenida por ajuste
MCON mcon = tabla(atpi) ‘tabla dada por expertos y calibrada
MABA maba = tabla(atpi) ‘tabla dada por expertos y calibrada
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

g) Regresión múltiple y ajuste por mínimos cuadrados: si se trata de una


función de varias variables, y = f(x1, x2, ... xn), dada por una tabla de
valores, la regresión permite obtener una curva que se ajuste a esos
puntos por el método de mínimos cuadrados. La curva no pasará,
probablemente, por ninguno de esos puntos pero su distancia a ellos será
la menor posible. Este tipo de funciones puede ser lineal o no lineal. En
este último caso es necesario un algoritmo buscador de funciones que
nos encuentre la mejor entre un abanico de funciones posibles,
asumiendo que es una variable aleatoria normal cuya media calculamos
con la función ajustada y cuya desviación típica también se puede
calcular. Ese buscador podría ser REGINT (Caselles, 1998). Con la función
ajustada obtendremos el valor medio y REGINT nos proporciona también
los datos para calcular la desviación típica. En los modelos deterministas
haremos uso solamente de la función ajustada pero en los modelos
estocásticos será necesario calcular también la desviación típica
(Caselles, 1992a).

h) Interpolación: cuando una función de varias variables dada por una tabla
de valores tiene que pasar por todos los puntos de la tabla, es decir, no
hay ruido ninguno en las medidas, no vale el juste, es necesaria la
interpolación. La interpolación más frecuente es la interpolación
polinómica. En ella, la función desconocida y = f(x1, x2, ... xn) es sustituida
por un polinomio de grado n-1. El polinomio de interpolación,
generalmente, no puede usarse para extrapolar, es decir, para valores de
las variables independientes que estén fuera del rango de valores usado
en la tabla original dado que fuera de rango los polinomios tienen formas
imprevisibles.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

i) En ausencia de datos históricos no queda más remedio que utilizar


métodos que aprovechen la información existente en las mentes de los
expertos en el tema. El método más interesante bajo nuestro punto de
vista es el de los impactos cruzados (cross-impact). Este y otros métodos
son de los llamados tradicionalmente “métodos prospectivos”. En el
siguiente ejemplo, que concuerda con otros anteriores sobre
demografía elemental, todas las ecuaciones son tautologías (relaciones
evidentes).

Ejemplo:
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

CONCLUSIONES
La emergencia de un nuevo tipo de ciencia, fundada ya no exclusivamente en la
inducción o en la deducción, implica con total seguridad no simplemente el surgimiento
de nuevos paradigmas, nuevos lenguajes, formas nuevas de organización del
conocimiento y de organización, en general, de la sociedad alrededor del conocimiento.
También implica sobre todo y de manera radical un nuevo tipo de racionalidad. Gracias
al descubrimiento de los sistemas dinámicos, esto es, de los sistemas, fenómenos y
comportamientos de complejidad creciente, el mundo en general, la naturaleza y
nosotros mismos jamás volveremos a ser los mismos. Pues bien, en todo este proceso,
el computador desempeña un papel protagónico. Numerosas han sido (y
presumiblemente lo serán aún) las discusiones entre matemáticos y estudiosos de
diversas ciencias acerca del trabajo puro o aplicado, según si se emplea o no y en qué
forma el computador. Pero, asimismo, y de manera aún más conspicua, los temas de
base que emergen irremisiblemente tienen que ver, en general, con los nuevos
problemas de la computación. ¿Qué es computar? Básicamente estriba en lo que
podemos pensar, lo que podemos saber o conocer, lo que podemos decir y los
problemas que podemos resolver. Lo verdaderamente maravilloso de los nuevos
paradigmas computacionales (Cooper, Löwe y Sorbi, 2008) consiste exactamente en
esto: nunca como ahora habían sido tan magníficas nuestras oportunidades de
desarrollo (humano, espiritual, cognitivo, etc.) y, al mismo tiempo, nunca habían sido
tan grandes los desafíos a los que nos enfrentamos. Con seguridad el éxito de superación
de estos desafíos radica en la comprensión acerca de la complejidad del mundo y de la
naturaleza. Con ella, entonces, el tema maravilloso es el del modelamiento y la
simulación de los procesos, las dinámicas y los fenómenos que implican por igual a la
vida: a la vida conocida tanto como a la vida por conocer, a la vida tal y como la
conocemos, tanto como a la vida tal-y-como-podría-ser (life-as-it-could-be).
Trabajamos, necesaria e inevitablemente, con la dimensión de lo posible.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

GLOSARIO

COMPLEJIDAD ALGORÍTMICA: Extensión del programa más breve para la solución de un


problema o de un conjunto o una serie de problemas.
COMPLEJIDAD COMPUTACIONAL: Condiciones (temporales, de recursos,
herramentales, conceptuales y otras) de resolución de un problema o de espacios de
soluciones de problemas.
HEURÍSTICA: Reglas de oro (rules of thumb), conjeturas (educated guesses), juicios
intuitivos o sentido común orientados a la solución de problema(s) particular(es) o
local(es).
HIPERHEURÍSTICA: Tipo de (meta) heurística de alto nivel que elige (meta) heurísticas
de bajo nivel en cada punto de decisión de un problema dado.
METAHEURÍSTICA: Conjunto de heurísticas que resuelven problemas en términos
globales o de población. Se subdivide en híbridas, paralelas y otras.
MODELAMIENTO: Programación computacional de un sistema, un problema o un
modelo con vista a aplicaciones prácticas.
MODELO: Interpretación coherente o consistente, usualmente cerrada y
eventualmente autorreferencial, del mundo, de la naturaleza o la sociedad o de una
parte de ellos.
PROBLEMAS N-P: Problemas que no admiten para su comprensión y solución un tiempo
fragmentado. Ejemplos de tiempo no-polinomial son el tiempo exponencial, o el
cairológico (kairós).
PROBLEMAS P: Problemas que se definen en función de un tiempo polinomial, es decir,
analítico y de fragmentación.
SIMULACIÓN: Aplicación o desarrollo de un programa con fines de investigación básica
(in silico o in vitro) que, ulteriormente, puede llegar a tener implicaciones o aplicaciones
prácticas.
SISTEMA COMPLEJO: Se dice que es de complejidad creciente todo fenómeno, sistema
o comportamiento que implica rasgos tales como no-linealidad, adaptación,
emergencias, autoorganización, aperiodicidad e imprevisibilidad, entre otros.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

REFERENCIAS BIBLIOGRÁFICAS
ANDERSON, P. W., ARROW, K. J. y PINES, D. (eds.), The Economy as an Evolving
Complex System, Santa Fe Institute Studies in the Sciences of Complexity, Vol. V,
Westview Press, 1988.
ARORA, S. y BARAK B., Computational Complexity. A Modern Approach, Cambridge,
Cambridge University Press, 2009.
ARTHUR, W. B., DURLAUF, S. N. y LANE, D. A. (eds.), The Economy as an Evolving
Complex System II, Santa Fe Institute Studies in the Sciences of Complexity, Vol. XXVII,
Westview Press, 1997.
AXELROD, R., The Complexity of Cooperation. Agent-Based Models of Competition and
Collaboration, Princeton, NJ, Princeton University Press, 1997.
BARROW, J. D., Impossibility. The Limits of Science and the Science of Limits. New York:
Oxford University Press, 1998.
BLUME, L. E. y DURLAUF, S. N., The Economy as an Evolving Complex System III. Current
Perspectives and Future Directions, Santa Fe Institute Studies in the Sciences of
Complexity, Oxford, Oxford University Press, 2006.
CHAITIN, G., Metamaths. The Quest for Omega, London, Atlantic Books, 2007.
COOPER, S. B., LÖWE, B. y SORBI, A. (eds.), New Computational Paradigms. Changing
Conceptions of What Is Computable, New York, Springer-Verlag, 2008.
COTTA, C., SEVAUX, M. y SÖRENSEN, K. (eds.), Adaptive and Multilevel Metaheuristics,
Berlin, Springer-Verlag, 2008.
COWAN, G., PINES, D. y MELTZER, D., Complexity: Metaphors, Models, and Reality,
Santa Fe Institute Studies in the Sciences of Complexity, Westview Press, 1999.
DE CASTRO, L. N., Fundamentals of Natural Computing: An Overview, Physics of Life (4),
2007.
DE CASTRO, L. N. y VON ZUBEN, F., Recent Developments in Biologically Inspired
Computing, Hershey, PA, Idea Group Publishing, 2005.
ENGELBRECHT, A., Computational Intelligence: an Introduction, 2 ed., Chichester, John
Wiley & Sons, 2007.
FLOREANO, D. y MATTIUSSI, C., Bio-Inspired Artificial Intelligence: Theories, Methods,
and Technologies, Cambridge, MA, MIT Press, 2008.
GINTIS, H., Game Theory Evolving. A Problem-Centered Introduction to Modeling
Strategic Interaction, Princeton, NJ, Princeton University Press, 2000.
GOLDREICH, O., Computational Complexity. A Conceptual Approach, Cambridge,
Cambridge University Press, 2008.
FACULTAD DE INGENIERIA
ESCUELA DE INFORMÁTICA Y DE SISTEMAS

GÓMEZ CRUZ, N. y VILLAMIL, J., “Ingeniería de Sistemas Complejos”, en C. E.


Maldonado, Complejidad: revolución científica y teoría, Bogotá, Ed. Universidad del
Rosario, 2009.
KOMOSINSKI, M. y ADAMATZKY, A., Artificial Life Models in Software, 2 ed., London,
Springer-Verlag, 2009.
LEWIS, A., MOSTAGHIM, S. y RANDAL, M. (eds.), Biologically-Inspired Optimisation
Methods: Parallel, Systems and Applications, Berlin, SpringerVerlag, 2009.
MACAL, C., “Agent Based Modeling and Artificial Life”, en R. Meyers (ed.), Encyclopedia
of Complexity and Systems Science, New York, SpringerVerlag, 2009.
MALDONADO, C. E., “Ciencias de la complejidad: cambios súbitos”, en Odeón.
Observatorio de Economía y Operaciones Numéricas, 2005.
MALDONADO, C. E., “Ingeniería de sistemas complejos. Retos y oportunidades”, en P.
Padilla y L. Pineda (eds.), El futuro de la educación en ingeniería y el management of
engineering: una perspectiva sistémica, Ed. ENIMUniversidad del Rosario, (Ciudad),
2010.
MALDONADO, C. E., “Ciencias de la complejidad y desarrollo tecnológico”, en Revista
Ignis, No. 4, 2009.
MALDONADO, C. E. y GÓMEZ CRUZ, N., “Facing N-P Problems Via Artificial Life: A
Philosophical Appraisal”, en Advances in Artificial Life: 10th European Conference on
Artificial Life, ECAL 2009, Berlin, Springer-Verlag, 2010.
NEGOITA, M. e HINTEA, S., Bio-Inspired Technologies for the Hardware of Adaptive
Systems: Real-World Implementations and Applications, Berlin, Springer-Verlag, 2009.
PAGELS, H., Los sueños de la razón. El ordenador y los nuevos horizontes de las ciencias
de la complejidad, Barcelona, Gedisa, 1991.
RÍOS INSÚA, D., RÍOS INSÚA, S. JIMÉNEZ, J. M. y JIMÉNEZ MARTÍN, A., Simulación.
Métodos y aplicaciones, México D.F., México, Alfaomega, 2ª edición, 2009.
TALBI, E. G., Metaheuristics: From Design to Implementation, CIUDAD, John Wiley &
Sons, 2009.

You might also like