búsqueda heurística multicriterio para inteligencia ...departamento de lenguajes y ciencias de la...

310
Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia Artificial en Diseño Tesis doctoral presentada por D. Lorenzo Mandow Andaluz para optar al grado de Doctor Ingeniero en Informática. Dirigida por el Dr. D. Francisco Triguero Ruiz, Catedrático de Universidad del Área de Lenguajes y Sistemas Informáticos, y el Dr. D. Jose Luis Pérez de la Cruz Molina, Profesor Titular de Universidad del Área de Ciencias de la Computación e Inteligencia Artificial. Málaga, abril de 1999

Upload: others

Post on 29-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Departamento de Lenguajes y Ciencias de la Computación

UNIVERSIDAD DE MÁLAGA

Búsqueda Heurística Multicriterio

para

Inteligencia Artificial en Diseño

Tesis doctoral presentada por D. Lorenzo Mandow Andaluz

para optar al grado de Doctor Ingeniero en Informática.

Dirigida por el Dr. D. Francisco Triguero Ruiz, Catedrático de Universidad del Área de Lenguajes y Sistemas Informáticos, y el Dr. D. Jose Luis Pérez de la Cruz Molina, Profesor Titular de Universidad del Área de

Ciencias de la Computación e Inteligencia Artificial.

Málaga, abril de 1999

Page 2: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia
Page 3: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Dpto. Lenguajes y Ciencias de la ComputaciónUNIVERSIDAD DE MÁLAGA

D. Francisco Triguero Ruiz, Catedrático de Universidad del Área de

Lenguajes y Sistemas Informáticos, y D. Jose Luis Pérez de la Cruz Molina,

Profesor Titular de Universidad del Área de Ciencias de la Computación e

Inteligencia Artificial, hacen constar,

QUE: son directores de la Tesis Doctoral titulada "Búsqueda Heurística

Multicriterio para Inteligencia Artificial en Diseño", realizada por D. Lorenzo

Mandow Andaluz, y que dicho autor ha llevado a cabo los objetivos de

investigación propuestos para la completa elaboración de la Tesis, y se encuentra

en disposición de la defensa de la misma ante el Tribunal de Lectura de la Tesis

Doctoral.

Málaga, cinco de abril de mil novecientos noventa y nueve.

Fdo.: F. Triguero Ruiz Fdo.: J. L. Pérez de la Cruz Molina

Page 4: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia
Page 5: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

A mi familia.

Page 6: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia
Page 7: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

AGRADECIMIENTOS

Esta es, paradójicamente, la última página que se incluye en la tesis y sinduda alguna la más grata de escribir. No sería justo concluir sin reconocer la ayuda,el apoyo y la amistad de quienes han "sufrido" mi trabajo, a veces casi tanto comoyo, y sin los cuales no hubiera sido posible.

En primer lugar quiero mostrar mi agradecimiento a los directores de la tesis,D. Francisco Triguero y D. José Luis Pérez de la Cruz, por la confianza quedepositan en mí, por impulsar mi formación como docente e investigador, y por guiarsiempre mi trabajo a buen término.

También va mi agradecimiento al Dr. Tim Smithers, que siempre me haanimado a continuar trabajando en "diseño" y que en las fases iniciales de lainvestigación proporcionó gran cantidad de material bibliográfico.

A los arquitectos D. Eduardo Serrano y D. Alberto Lerner, por compartirdesinteresadamente conmigo su tiempo, su conocimiento profesional y gratas horasde charla.

A mi amigo Luis Hernánz, que siempre ha dado por hecho que llegaría estedía (pues llevabas razón, oye). En la sincera hospitalidad de su casa de El Puerto deSanta María y en su histórico 386 comenzó a tomar su forma definitiva estamemoria.

A mis "compis" de despacho, Mavi y Lidia, que han compartido conmigodurante años todas las vicisitudes del trabajo. A Farfán, que hace que los falloshardware y software nunca supongan un problema. A Eva, Fany y Ricardo, queamablemente han revisado parte del borrador y siempre me han prestado su ayuda.

Y a tant@s y tant@s amig@s y compañer@s que han compartido conmigopenas y alegrías, cervezas, vinos y cafés, correos electrónicos y excursiones alcampo donde he podido relajar mis neuronas. Gracias a tod@s.

Lawrence

Málaga, abril de 1999

Page 8: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia
Page 9: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

SALUDOS

...y, de entre la pila de tareas pendientes, llegó por fín la hora de elaborar una versión PDF de este documento.

Han pasado ya varios años desde la realización de la tesis y, aunque esta versión de fácil distribución ha sufrido cierto retraso, aprovecho para enviar un

cordial saludo a los lectores.

También es una buena oportunidad para incluir algunas referencias relacionadas con el trabajo de la tesis, y que han aparecido con posterioridad a

su lectura.

En [2] se amplían e ilustran con cierta profusión las ideas del capítulo 7 que, en el fondo, actuaron como el motor de todo el trabajo de investigación. Las

principales contribuciones a nivel técnico corresponden a los capítulos 9 y 10, que forman la base de los trabajos [4] y [3] respectivamente. En [1] se presentan

demostraciones gráficas e intuitivas de algunas propiedades presentadas en el capítulo 9.

Espero que sean de utilidad.

Lawrence

[email protected]

Málaga, febrero de 2003

[1] L. Mandow y J.L. Pérez de la Cruz (1999): Fundamentos básicos para búsqueda heurística multicriterio. En CAEPIA-TTIA’99. Libro de Actas. Volumen

I. Sección: Sistemas de Ayurda a la Decisión y Optimización, pp. 27-34. Disponible en http://www.lcc.uma.es

[2] L. Mandow y J.L. Pérez de la Cruz (2000): The role of multicriteria problem solving in design. En Artificial Intelligence in Design’00 (Ed. J.S. Gero).

Kluwer Academic Publishers, pp. 23-42.

[3] L. Mandow y J.L. Pérez de la Cruz (2001): A heuristic search algorithm with lexicographic goals. Engineering Applications of Artificial

Intelligence 14 (2001), pp. 751-762.

[4] L. Mandow y J.L. Pérez de la Cruz (2003): Multicriteria heuristic search. European Journal of Operational Research. Actualmente en prensa.

Versión electrónica disponible en http://www.elsevier.com/homepage/sae/orms/eor/menu.htm

Page 10: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia
Page 11: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

1

ÍNDICE

I. INTRODUCCIÓN........................................................................................ 7

1. INTRODUCCIÓN....................................................................................................... 9

II. INTELIGENCIA ARTIFICIAL Y DISEÑO.......................................... 15

2. LA INTELIGENCIA ARTIFICIAL......................................................................... 17

3. EL DISEÑO Y LA BÚSQUEDA EN ESPACIOS DE ESTADOS........................... 35

4. EL DISEÑO Y LA REFLEXIÓN-EN-LA-ACCIÓN............................................... 43

5. ENFOQUES PRAGMÁTICOS ................................................................................ 65

6. EL DISEÑO AL NIVEL DEL CONOCIMIENTO.................................................. 95

7. EXPLORACIÓN DE CRITERIOS ........................................................................ 117

III. ALGORITMOS DE BÚSQUEDA HEURÍSTICA

MULTICRITERIO ................................................................................. 125

8. PREFERENCIAS Y PROBLEMAS MULTICRITERIO ..................................... 127

9. BÚSQUEDA HEURÍSTICA MULTICRITERIO.................................................. 137

10. UN ALGORITMO PARA SATISFACCIÓN DE METAS ADITIVAS .............. 229

IV. CASOS DE PRUEBA ............................................................................ 249

11. CONTROL DE GRAMÁTICAS PARA LA GENERACIÓN DE DISEÑOS..... 251

12. EXPLORACIÓN DE CRITERIOS EN DISEÑO DE CARRETERAS .............. 265

V. CONCLUSIONES.................................................................................. 277

13. CONCLUSIONES Y DESARROLLOS FUTUROS............................................ 279

APÉNDICES ................................................................................................ 283

APÉNDICE A. NOTACIÓN Y ABREVIATURAS EMPLEADAS .......................... 285

APÉNDICE B. TEXTO ORIGINAL DE LAS CITAS .............................................. 287

REFERENCIAS........................................................................................... 293

Page 12: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

2

Page 13: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

3

ÍNDICE DETALLADO

I. INTRODUCCIÓN........................................................................................ 7

1. INTRODUCCIÓN....................................................................................................... 9 1.1. DISEÑO Y DECISIÓN MULTICRITERIO .....................................................................................9 1.2. CONTRIBUCIONES DE LA TESIS..............................................................................................11 1.3. ESTRUCTURA DE LA TESIS......................................................................................................11

II. INTELIGENCIA ARTIFICIAL Y DISEÑO........................................... 15

2. LA INTELIGENCIA ARTIFICIAL......................................................................... 17 2.1. ¿QUÉ ES LA INTELIGENCIA ARTIFICIAL?..............................................................................17 2.2. INTELIGENCIA Y PROCESAMIENTO DE SÍMBOLOS.............................................................18 2.3. LA BÚSQUEDA Y LA RESOLUCIÓN DE PROBLEMAS...........................................................19 2.4. LA IMPORTANCIA DEL CONOCIMIENTO...............................................................................20 2.5. LOS PRIMEROS SISTEMAS EXPERTOS ...................................................................................22 2.6. EL NIVEL DEL CONOCIMIENTO ..............................................................................................24

2.6.1. Una definición del conocimiento .........................................................................................24 2.6.2. Niveles de descripción ........................................................................................................25 2.6.3. Utilidad del nivel del conocimiento .....................................................................................27 2.6.4. Teorías computacionales .....................................................................................................28

2.7. TENDENCIAS ACTUALES EN LA INGENIERÍA DEL CONOCIMIENTO................................30 2.8. EL PROBLEMA DEL DISEÑO Y LA INGENIERÍA DEL CONOCIMIENTO .............................33

3. EL DISEÑO Y LA BÚSQUEDA EN ESPACIOS DE ESTADOS........................... 35 3.1. LAS CIENCIAS DE LO ARTIFICIAL ..........................................................................................35 3.2. LA ESTRUCTURA DE LOS PROBLEMAS MAL ESTRUCTURADOS.......................................38

3.2.1. Origen de los problemas mal estructurados ..........................................................................39 3.2.2. Capacidades para la resolución de problemas mal estructurados...........................................40

3.3. COMENTARIOS ..........................................................................................................................41

4. EL DISEÑO Y LA REFLEXIÓN-EN-LA-ACCIÓN.............................................. 43 4.1. LA RACIONALIDAD TÉCNICA Y SUS CONSECUENCIAS......................................................44 4.2. FUNDAMENTOS DE LA REFLEXIÓN-EN-LA-ACCIÓN...........................................................48

4.2.1. El saber-en-la-acción...........................................................................................................48 4.2.2. La reflexión-en-la-acción ....................................................................................................49 4.2.3. El saber-en-la-práctica y la reflexión-en-la-práctica .............................................................51

4.3. LA ESTRUCTURA DE LA REFLEXIÓN-EN-LA-ACCIÓN.........................................................51 4.3.1. Construcción de mundos de diseño......................................................................................52 4.3.2. Experimentos en diseño.......................................................................................................54 4.3.3. Relación del profesional con la situación .............................................................................57

4.4. COMPARACIÓN DE LA RACIONALIDAD TÉCNICA Y LA REFLEXIÓN-EN-LA-ACCIÓN ..58 4.5. UNA TEORÍA COMPUTACIONAL DEL DISEÑO REFLEXIVO................................................59 4.6. COMENTARIOS ..........................................................................................................................61

Page 14: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

4

5. ENFOQUES PRAGMÁTICOS................................................................................. 65 5.1. MÉTODOS DE INVESTIGACIÓN DE IA EN DISEÑO............................................................... 66 5.2. UN MARCO GENERAL PARA LOS PROCESOS DE DISEÑO .................................................. 67 5.3. REPRESENTACIÓN DEL CONOCIMIENTO DE DISEÑO: PROTOTIPOS................................ 71

5.3.1. Diseño rutinario, innovador y creativo ................................................................................ 75 5.4. PROCESOS FORMALES PARA DISEÑO NO RUTINARIO ....................................................... 76

5.4.1. Emergencia ........................................................................................................................ 77 5.4.2. Combinación evolutiva ....................................................................................................... 79

5.5. UN MODELO COMPUTACIONAL PARA EL DISEÑO INNOVADOR...................................... 80 5.5.1. La innovación como noción relativa.................................................................................... 81 5.5.2. Bases para un modelo del diseño innovador ........................................................................ 84

5.6. VISIÓN GENERAL DEL SISTEMA CYCLOPS .......................................................................... 85 5.6.1. Espacios de diseño.............................................................................................................. 85 5.6.2. Relajación de Restricciones y Exploración de Alternativas .................................................. 88 5.6.3. Razonamiento por Analogía: Adaptación de diseños ........................................................... 89 5.6.4. Razonamiento por Analogía: Emergencia de Criterios......................................................... 90

5.7. COMENTARIOS.......................................................................................................................... 91

6. EL DISEÑO AL NIVEL DEL CONOCIMIENTO .................................................. 95 6.1. KLDE

0: UNA TEORÍA DEL DISEÑO AL NIVEL DEL CONOCIMIENTO................................... 96 6.2. TEORÍAS, MODELOS Y MÉTODOS DE DISEÑO ..................................................................... 98 6.3. CONCEPTOS TEÓRICOS.......................................................................................................... 100

6.3.1. Aspectos de la descripción de requisitos en un problema de diseño.................................... 103 6.4. EL DISEÑO Y SUS CLASES SEGÚN KLDE

0 ............................................................................. 105 6.4.1. Un patrón básico para explicar el proceso de diseño .......................................................... 108 6.4.2. Explicación del diseño rutinario........................................................................................ 109 6.4.3. Explicación del diseño innovador...................................................................................... 110 6.4.4. Explicación del diseño original ......................................................................................... 110 6.4.5. Explicación del diseño creativo......................................................................................... 112

6.5. EL PAPEL DE KLDE0 EN LA INGENIERÍA DEL CONOCIMIENTO......................................... 113

6.6. COMENTARIOS........................................................................................................................ 114

7. EXPLORACIÓN DE CRITERIOS ........................................................................ 117 7.1. TÉCNICAS DE APOYO PARA LA EXPLORACIÓN DE CRITERIOS EN DISEÑO................. 119 7.2. ENFOQUES MULTICRITERIO PARA LA EXPLORACIÓN DE CRITERIOS.......................... 122 7.3. UNA NUEVA PROPUESTA ...................................................................................................... 124

III. ALGORITMOS DE BÚSQUEDA HEURÍSTICA

MULTICRITERIO..................................................................................125

8. PREFERENCIAS Y PROBLEMAS MULTICRITERIO...................................... 127 8.1. EL CONCEPTO DE PREFERENCIA ......................................................................................... 127 8.2. CARACTERIZACIÓN DE LAS PREFERENCIAS..................................................................... 129 8.3. PROBLEMAS MULTICRITERIO .............................................................................................. 130 8.4. REGLAS DE DECISIÓN............................................................................................................ 131 8.5. COMENTARIOS........................................................................................................................ 135

9. BÚSQUEDA HEURÍSTICA MULTICRITERIO ................................................. 137 9.1. INTRODUCCIÓN....................................................................................................................... 137 9.2. PROBLEMAS DE BÚSQUEDA HEURÍSTICA CON PREFERENCIAS .................................... 138 9.3. POP*: UN PROCEDIMIENTO GENERAL PARA LA BÚSQUEDA EN GRAFOS .................... 142

9.3.1. Funcionamiento general de POP* ..................................................................................... 144 9.3.2. El procedimiento 'Actualizar-CAMINOS-ABIERTOS'...................................................... 145

9.4. PROPIEDADES DE POP*.......................................................................................................... 147 9.5. CONDICIONES PARA CRITERIOS DE PODA PRUDENTES.................................................. 153

9.5.1. Órdenes de poda en algoritmos escalares........................................................................... 154

Page 15: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

5

9.5.2. Órdenes de poda en algoritmos multicriterio......................................................................155 9.5.2.1. Conservación del orden....................................................................................... 155 9.5.2.2. Condición CMM.................................................................................................. 158

9.6. UNA CLASE DE PROCEDIMIENTOS DE BÚSQUEDA MULTICRITERIO.............................159 9.6.1. Funciones de atributos acumulables...................................................................................160 9.6.2. Funciones heurísticas para atributos acumulables...............................................................161 9.6.3. Procedimiento POP-Z* .....................................................................................................164 9.6.4. Propiedades de POP-Z*.....................................................................................................169 9.6.5. Instancias de POP-Z*........................................................................................................173

9.7. BÚSQUEDA MULTIOBJETIVO ................................................................................................174 9.7.1. Algoritmo MO-Z*.............................................................................................................175 9.7.2. Ejemplo: Excursiones Para Todos .....................................................................................176 9.7.3. Excursiones Multiobjetivo.................................................................................................178 9.7.4. Comentarios......................................................................................................................182

9.8. BÚSQUEDA CON FUNCIONES DE COSTE/VALOR MULTIATRIBUTO...............................183 9.8.1. Algoritmo Z*....................................................................................................................184 9.8.2. Algoritmo ZL* ..................................................................................................................186 9.8.3. Algoritmo U*....................................................................................................................188 9.8.4. Excursiones con valor multiatributo...................................................................................191 9.8.5. Comentarios......................................................................................................................194

9.9. BÚSQUEDA CON OBJETIVOS ORDENADOS POR PRIORIDAD...........................................196 9.9.1. Algoritmo PRIMO-Z*.......................................................................................................197 9.9.2. Algoritmo PRIMO-ZL* .....................................................................................................198 9.9.3. Excursiones lexicográficas ................................................................................................200 9.9.4. Comentarios......................................................................................................................203

9.10. BÚSQUEDA CON SATISFACCIÓN DE METAS ....................................................................203 9.10.1. Criterios de poda para algoritmos de satisfacción de metas...............................................206

9.10.1.1. Uso del criterio de preferencia como criterio de poda ........................................ 206 9.10.1.2. Orden de Pareto como criterio de poda ............................................................. 207 9.10.1.3. Criterios de poda locales para los problemas de metas ...................................... 208

9.10.2. Algoritmo METAL-ZL* ..................................................................................................211 9.10.3. Excursiones con satisfacción de metas.............................................................................212

9.11. POPN*: UNA VERSIÓN N-ADMISIBILE DE POP* .................................................................215 9.11.1. Terminación y Estructuras de Datos.................................................................................216 9.11.2. Criterio de poda ..............................................................................................................217 9.11.3. Criterio de preferencia heurístico.....................................................................................218 9.11.4. Propiedades de POPN* ....................................................................................................218

9.12. PROCEDIMIENTO POP-ZN*....................................................................................................221 9.13. CONCLUSIONES .....................................................................................................................224

10. UN ALGORITMO PARA SATISFACCIÓN DE METAS ADITIVAS ............. 229 10.1. ALGORITMO METAL-AL

N* ....................................................................................................229 10.2. EJEMPLO .................................................................................................................................235 10.3. PROPIEDADES DE METAL-AL

N* ...........................................................................................239 10.4. COMENTARIOS.......................................................................................................................246

IV. CASOS DE PRUEBA ............................................................................ 249

11. CONTROL DE GRAMÁTICAS PARA LA GENERACIÓN DE DISEÑOS..... 251 11.1. GRAMÁTICAS EN DISEÑO....................................................................................................251 11.2. LA PLANIFICACIÓN DEL ESPACIO......................................................................................253 11.3. UNA VERSIÓN DEL PROBLEMA DEL DISEÑO ARQUITECTÓNICO EN PLANTA .......255

11.3.1. Una gramática para la generación de planos de viviendas.................................................255 11.3.2. Criterios para la generación de planos..............................................................................258 11.3.3. Ejemplo ..........................................................................................................................260

11.4. COMENTARIOS.......................................................................................................................263

Page 16: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

6

12. EXPLORACIÓN DE CRITERIOS EN DISEÑO DE CARRETERAS............... 265 12.1. ALGUNOS ASPECTOS DEL DISEÑO DE CARRETERAS..................................................... 265 12.2. EL PROBLEMA DEL TRAZADO PRELIMINAR DE CARRETERAS .................................... 267

12.2.1. El espacio de búsqueda ................................................................................................... 267 12.2.2. Criterios para el trazado de carreteras.............................................................................. 268 12.2.3. Ejemplos ........................................................................................................................ 269

12.3. Comentarios .............................................................................................................................. 274

V. CONCLUSIONES....................................................................................277

13. CONCLUSIONES Y DESARROLLOS FUTUROS ............................................ 279 13.1. CONCLUSIONES..................................................................................................................... 279 13.2. DESARROLLOS FUTUROS .................................................................................................... 281

APÉNDICES .................................................................................................283

APÉNDICE A. NOTACIÓN Y ABREVIATURAS EMPLEADAS .......................... 285

APÉNDICE B. TEXTO ORIGINAL DE LAS CITAS............................................... 287 B.1. CITAS DEL CAPÍTULO 2 ......................................................................................................... 287 B.2. CITAS DEL CAPÍTULO 3 ......................................................................................................... 288 B.3. CITAS DEL CAPÍTULO 4 ......................................................................................................... 288 B.4. CITAS DEL CAPÍTULO 5 ......................................................................................................... 290 B.5. CITAS DEL CAPÍTULO 6 ......................................................................................................... 292 B.6. CITAS DEL CAPÍTULO 10 ....................................................................................................... 292 B.7. CITAS DEL CAPÍTULO 11 ....................................................................................................... 292

REFERENCIAS .......................................................................................................... 293

Page 17: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

7

I. INTRODUCCIÓN

Page 18: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

8

Page 19: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

9

CAPÍTULO 1

INTRODUCCIÓN

1.1. DISEÑO Y DECISIÓN MULTICRITERIO

El diseño es una actividad compleja. En ella el ser humano se enfrenta a la realidad

física y social que le rodea para idear formas de conseguir aquello que necesita. Es un hecho

constatable que el producto de dicha actividad no siempre proporciona resultados

satisfactorios. Coches que vuelcan, autovías cortadas por movimientos de tierra, o edificios

que presentan problemas estructurales a los pocos años de su construcción son sólo algunos

ejemplos divulgados recientemente por la prensa.

La introducción de los ordenadores digitales en el entorno de trabajo de arquitectos,

ingenieros y profesionales de todo el mundo ha creado grandes expectativas respecto a la

mejora de la calidad de sus diseños. Especialmente en los campos de la arquitectura y la

ingeniería el desarrollo de herramientas informáticas ha seguido dos caminos claramente

identificables.

Por una parte están las denominadas herramientas CAD (Computer-Aided Design –

Diseño Asistido por Ordenador), orientadas a facilitar la descripción, documentación y

visualización de diseños.

Por otra parte está la posibilidad de construir herramientas que jueguen un papel más

activo en el desarrollo y síntesis de los diseños a lo largo de todo el proceso. Un primer paso

en este sentido es el uso de herramientas tomadas o adaptadas de la Investigación Operativa

para la decisión matemática o la simulación de sistemas. Un objetivo más ambicioso consiste

en la formalización y representación de conocimiento especializado que sirva para supervisar,

facilitar y guiar todo el proceso de diseño. Esta posibilidad plantea un desafío interesante en el

campo de la Inteligencia Artificial (IA).

Page 20: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 1

10

Son muchas las técnicas de IA que se han propuesto para la automatización de tareas

relacionadas con el diseño. Sin embargo, su desarrollo y aplicación se ha visto condicionado

por una comprensión limitada del diseño como proceso y como actividad cognitiva.

Desde los trabajos pioneros de (Simon, 1969) hasta las modernas teorías de la

Ingeniería de Conocimiento (Smithers, 1998) la propia concepción de qué es el diseño se ha

ido perfilando cada vez de forma más nítida. Tal vez sea este el resultado más valioso

alcanzado hasta ahora por la investigación sobre diseño en IA. La existencia de teorías

computacionales sobre diseño permite identificar qué tareas pueden automatizarse de modo

que se aproveche la capacidad de los ordenadores sin limitar ni condicionar la de los

diseñadores.

Una característica importante de los problemas de diseño es su carácter multicriterio.

En ellos intervienen múltiples objetivos, metas y restricciones normalmente en conflicto. Los

estudios teóricos y empíricos recientes resaltan el hecho de que buena parte del trabajo de un

diseñador se invierte en establecer un conjunto adecuado de criterios y en resolver los

posibles conflictos estableciendo compromisos y preferencias adecuadas. Estos criterios y

preferencias, que son uno de los productos del proceso de diseño, sólo se presentan con

claridad al diseñador después de haber explorado diversas alternativas. En la tesis se

denomina a esta actividad exploración de criterios.

La investigación sobre representación de preferencias en el campo de la Investigación

Operativa ha dado lugar a la Teoría de la Decisión Multicriterio (TDM). Por el contrario, son

pocas las técnicas multicriterio que se han ensayado hasta la fecha en Inteligencia Artificial.

Esta tesis pretende avanzar en esta dirección y propone que una metodología inspirada en los

resultados de la TDM puede ayudar a realizar tareas de exploración de criterios como las que

aparecen en dominios de diseño.

Las propuestas de la tesis se sustancian en una generalización multicriterio de

algoritmos de búsqueda heurística empleados con frecuencia en IA. Se argumenta también la

adecuación de las técnicas basadas en satisfacción de metas para la exploración de alternativas

en diseño, y se presentan algunos ejemplos de aplicación.

Page 21: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

11

1.2. CONTRIBUCIONES DE LA TESIS

Esta tesis ofrece resultados relativos a la formalización del problema de la búsqueda

heurística multicriterio en grafos y de los algoritmos para su resolución. Especialmente se

destacan las aplicaciones de los problemas de búsqueda con satisfacción de metas en

problemas de diseño. Entre las contribuciones de la tesis cabe destacar:

(i) La formalización de los problemas de búsqueda heurística multicriterio.

(ii) El desarrollo de procedimientos generales para la búsqueda heurística multicriterio y

un análisis de sus propiedades. Concretamente se presentan condiciones suficientes para

la obtención de soluciones minimales.

(iii) El desarrollo de diversos algoritmos de búsqueda heurística para las reglas de decisión

multicriterio más comunes, junto a un análisis de sus propiedades. Concretamente se

presentan condiciones suficientes para la obtención de soluciones minimales.

(iv) La reducción al esquema general presentado de diversos algoritmos de búsqueda

multicriterio publicados en los últimos años.

(v) La aplicación de los algoritmos de búsqueda heurística con satisfacción de metas a

problemas de diseño.

1.3. ESTRUCTURA DE LA TESIS

La memoria de la tesis está organizada en cinco partes, recoge trece capítulos, dos

apéndices y un conjunto de referencias. La línea argumental se basa en exponer la

problemática del diseño e identificar la tarea de la exploración de criterios. A continuación se

desarrolla detalladamente una clase de algoritmos de búsqueda heurística multicriterio, y se

ilustra la aplicación de los algoritmos de búsqueda con satisfacción de metas al problema de la

exploración de criterios.

Además de la primera parte, que incluye este capítulo introductorio, y la quinta, que

consta de un capítulo final dedicado a exponer las conclusiones y desarrollos futuros, la

estructura de la memoria de la tesis es la que se expone a continuación.

Page 22: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 1

12

La segunda parte, titulada “Inteligencia Artificial y Diseño” se encarga de introducir

el problema del diseño y algunos resultados importantes producidos por la IA en su

conceptualización. Se organiza en seis capítulos:

! El capítulo 2, titulado “La Inteligencia Artificial”, realiza un breve recorrido por

algunos de los aspectos más relevantes de la historia de la IA. El énfasis se centra

en el desarrollo de aquellos conceptos que se emplean en los capítulos siguientes.

! El capítulo 3, “El Diseño y la Búsqueda en Espacios de Estados”, presenta algunos

de los trabajos de Herbert Simon, en los que la hipótesis de la racionalidad

limitada se combina con las hipótesis de la IA para proporcionar una primera

teoría cognitiva del diseño: la búsqueda en espacios de estados.

! El capítulo 4, bajo el título de “El Diseño y la Reflexión-en-la-acción”, describe

una crítica a la teoría del capítulo anterior y una teoría alternativa presentada por

Donald Schön. En él se plantean argumentos contrarios a la realización de sistemas

de diseño automático y se propone como objetivo para la IA el desarrollo de

sistemas de ayuda al diseño.

! El capítulo 5, al que corresponde el título de “Enfoques Pragmáticos”, presenta

varios trabajos que resumen adecuadamente algunas de las líneas de investigación

recientes de la IA en diseño. La vocación de estos trabajos es fundamentalmente

práctica y pretenden aprovechar cualquier aportación teórica o empírica para la

construcción de sistemas de ayuda al diseño. En particular, su conexión con las

ideas propuestas por Simon es bastante evidente. Se describe con cierto detalle el

trabajo de (Navinchandra, 1991) pues en él se emplean precisamente algoritmos de

búsqueda multiobjetivo.

! El capítulo 6, titulado “El Diseño al Nivel del Conocimiento”, presenta una línea

de investigación alternativa en cuanto a la forma a la descrita en el capítulo

anterior. En él se describe KLDE0, una teoría computacional del diseño que

establece una descripción operativa del mismo. Su finalidad es servir de

herramienta para la especificación y desarrollo de futuros sistemas de ayuda al

diseño.

Page 23: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

13

! El capítulo 7, “Exploración de Criterios”, cierra la segunda parte de la tesis y sirve

de enlace con la tercera. En él se analiza la tarea de la exploración de criterios en

diseño a la luz de las teorías descritas en los capítulos anteriores. Se examinan

algunas alternativas ensayadas en IA para apoyar a los diseñadores en la

realización de esta tarea, y se propone el uso de algoritmos de búsqueda

multicriterio.

La tercera parte, titulada “Algoritmos de Búsqueda Heurística Multicriterio” recoge

las contribuciones fundamentales de la tesis. Se organiza en tres capítulos:

! El capítulo 8, bajo el título “Preferencias y Problemas Multicriterio”, presenta

algunas aportaciones de la Teoría de la Decisión Multicriterio. Concretamente se

formalizan los conceptos de preferencia y de problema de decisión multicriterio, y

se definen las reglas de decisión más comunes.

! El capítulo 9, “Búsqueda Heurística Multicriterio”, introduce una formalización de

los problemas de búsqueda heurística multicriterio. Tomando en la medida de lo

posible como referencia los trabajos de (Pearl, 1984) sobre algoritmos escalares, se

desarrollan procedimientos generales para la búsqueda heurística multicriterio.

Una vez establecidas las condiciones para su admisibilidad se detallan diversos

algoritmos de búsqueda y se demuestran sus propiedades. También se establece

relación entre los procedimientos propuestos y otros algoritmos de búsqueda

multicriterio publicados en los últimos años, señalándose algunas de sus

limitaciones a la luz de los resultados obtenidos.

! El capítulo 10, al que corresponde el título “Un Algoritmo para Satisfacción de

Metas Aditivas” describe en detalle el algoritmo METAL-ALN*, un caso particular

de los algoritmos de satisfacción de metas descritos en el capítulo anterior. Este

algoritmo se emplea en la cuarta parte de la tesis para ilustrar su aplicación en

tareas de exploración de criterios.

La cuarta parte de la tesis, titulada “Casos de Prueba”, consta de dos capítulos. Cada

uno de ellos ilustra la aplicación del algoritmo METAL-ALN* a problemas de exploración de

criterios en diseño.

Page 24: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 1

14

! El capítulo 11, bajo el nombre de “Control de Gramáticas para la Generación de

Diseños” describe el uso de gramáticas en problemas de diseño y cómo los

algoritmos de satisfacción de metas pueden emplearse para explorar el espacio de

alternativas que representan. Concretamente se presenta un ejemplo en el dominio

del diseño arquitectónico en planta.

! El capítulo 12, “Exploración de Criterios en el Diseño de Carreteras”, describe la

aplicación de los algoritmos de satisfacción de metas a este problema.

Finalmente, el apéndice A resume algunos aspectos de la notación y terminología

empleadas, y el apéndice B incluye el texto original de las citas insertadas en la memoria y

cuyo idioma no era el castellano.

Page 25: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

15

II. INTELIGENCIA ARTIFICIAL Y DISEÑO

En esta segunda parte de la memoria se presenta una selección de las principales

aportaciones y líneas de trabajo que han surgido de la investigación sobre diseño en IA

durante los últimos treinta años.

Las evoluciones de dicha investigación no han sido ajenas a las evoluciones tanto

teóricas como prácticas de la propia IA a lo largo de su corta pero intensa historia. Los

progresos recientes del campo sugieren que organizar esta exposición sobre la base de

diversos conceptos y descripciones teóricas sobre el diseño como proceso puede resultar no

solo adecuado sino también revelador y clarificador.

El eje principal de la segunda parte de la memoria lo forman un conjunto de

aportaciones y trabajos teóricos que en las últimas décadas han ido imprimiendo en el campo

de la IA diversas perspectivas sobre el problema del diseño. Estos trabajos se han agrupado de

la siguiente forma:

• El diseño y la búsqueda en espacios de estados (Simon, 1973).

• El diseño y la reflexión en la acción (Schön, 1983).

• Enfoques pragmáticos (Gero, 1994a; Navinchandra, 1991).

• El diseño al nivel del conocimiento (Smithers, 1998).

Page 26: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

16

Con los dos primeros se pretende dar una visión intuitiva sobre qué se entiende por

diseño en IA, y cuales son sus principales elementos. Con los dos siguientes se pretende dar

una visión general de cuales son las principales líneas de investigación actuales sobre diseño,

y proporcionar descripciones más operativas del mismo.

Los trabajos de Simon y Schön se fundamentan en el marco de la ciencia cognitiva, es

decir, describen y estudian la forma en que actúan los diseñadores humanos. El primero

proporciona una caracterización del diseño como un proceso de búsqueda en un espacio de

estados. Considera, por tanto, que el diseño es una actividad de resolución de problemas, una

idea que hoy día continúa ejerciendo una poderosa influencia en muchos trabajos sobre

diseño. El segundo presenta una caracterización alternativa sobre algunos procesos cognitivos

de diseño y representa una critica directa a los planteamientos y bases filosóficas del primero.

Las líneas de investigación más recientes se han clasificado en dos grupos. Por una

parte están aquellos enfoques ‘pragmáticos’ que postulan el uso de sistemas informáticos para

ayudar a los diseñadores y aprovechan cualquier aportación teórica o empírica para tal fin. Por

otra parte están aquellos enfoques que persiguen un fundamento teórico para la implantación

de dichos sistemas. Se ha optado aquí por presentar una teoría del diseño al nivel del

conocimiento que ha servido, en cierta medida, de soporte para el trabajo presentado en la

tesis. Las teorías al nivel del conocimiento pretenden ser una alternativa práctica a las teorías

cognitivas, sin entrar necesariamente en conflicto con ellas.

Page 27: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

17

CAPÍTULO 2

LA INTELIGENCIA ARTIFICIAL

"Sometimes I just don’t understand human behavior!"

C3PO en «The Empire Strikes Back» George Lucas, 1980

2.1. ¿QUÉ ES LA INTELIGENCIA ARTIFICIAL?

Existen muchas definiciones del concepto de Inteligencia Artificial (IA), algunas de

ellas bastante ambiguas. Sin duda el carácter elusivo de la “inteligencia artificial” proviene

del hecho de que la inteligencia humana en si misma es difícil de definir, no digamos ya la

artificial si es que tal cosa existe.

Desde un punto de vista pragmático puede definirse la IA como aquel campo o ciencia

que se preocupa de analizar el comportamiento inteligente humano y de las formas y medios

para simularlo y/o emularlo. Algunos ejemplos de comportamiento estudiados por la IA son

los del aprendizaje, la comunicación, el proceso de diseño y, muy especialmente, la

resolución de algunas clases de problemas como, por ejemplo, la clasificación, la

configuración, o la planificación. La IA surge, por tanto, de una curiosa intersección entre

otras disciplinas como la psicología cognitiva, la filosofía y la informática.

Tradicionalmente han existido dos paradigmas fundamentales para el estudio de la IA.

El primero intenta explicar el comportamiento inteligente como procesamiento de símbolos.

El segundo puede denominarse como sub-simbólico, y plantea el comportamiento inteligente

como resultado de la interacción de distintos módulos de comportamiento descentralizados.

Dentro de este segundo paradigma se incluyen fundamentalmente las llamadas redes

neuronales. Ninguno de los dos enfoques ha conseguido hasta el momento replicar las

capacidades de la inteligencia humana, ni parece que lo vayan a conseguir en un futuro

Page 28: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

18

cercano. Muy posiblemente para acercarse a dicho objetivo será necesaria la integración de

ambos enfoques.

El contenido de la tesis doctoral puede enmarcarse, al igual que la inmensa mayoría de

los trabajos sobre diseño en IA, dentro del primer paradigma. En este capítulo se exponen

brevemente algunos de sus fundamentos.

2.2. INTELIGENCIA Y PROCESAMIENTO DE SÍMBOLOS

La principal hipótesis defendida por los enfoques de la IA basados en procesamiento

de símbolos es la llamada Hipótesis del Sistema Simbólico Físico (Newell y Simon, 1976):

“Un sistema simbólico físico posee los medios necesarios y suficientes para acciones

inteligentes generales.”

El adjetivo “físico” se añade para resaltar el hecho de que el sistema simbólico es

realizable físicamente y permite observar sus mecanismos de funcionamiento. Un sistema

simbólico se define como aquel sistema que cumple las siguientes condiciones:

1. Posee un conjunto de símbolos.

2. Posee un conjunto de operadores para construir, modificar, reproducir y destruir

estructuras simbólicas (expresiones). Estos operadores son reglas bien definidas

que están representadas a su vez mediante estructuras simbólicas.

3. Está relacionado con un contexto de objetos del mundo real.

Esto no es más que decir que los sistemas inteligentes representan su entorno y

razonan sobre el mismo empleando estructuras simbólicas, y que, por tanto, los procesos del

comportamiento inteligente pueden ser formalizados y observados.

Para estudiar una clase o aspecto del comportamiento inteligente se pueden construir

teorías que lo formalicen tal como se muestra en el gráfico de la figura 2.1. La relación causal

entre sucesos del sistema que se está estudiando intenta describirse y explicarse utilizando

implicaciones entre descripciones formales de dichos sucesos. Para intentar estudiar un

determinado comportamiento (A) tomando de partida como válidas las hipótesis de la IA, se

Page 29: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

19

construye una teoría computacional que más adelante puede ser verificada y observada

utilizando un ordenador (B+C+D).

SISTEMA

MATERIAL

SISTEMA

FORMAL

D = Decodificación

B = Codificación

C = ImplicaciónA = Causalidad

Figura 2.1. Formalización de un sistema material (adaptado de (Smithers y Troxell, 1990)).

2.3. LA BÚSQUEDA Y LA RESOLUCIÓN DE PROBLEMAS

Como ya se ha comentado, uno de los principales comportamientos estudiado por la

IA es el de la resolución de problemas. Hoy día es una hipótesis universalmente aceptada que

la búsqueda es un modelo computacional adecuado para explicar y emular dicho

comportamiento. Esta hipótesis recibe el nombre de Hipótesis de la Búsqueda Heurística

(Newell y Simon, 1976):

“Las soluciones a los problemas pueden representarse mediante estructuras

simbólicas. Un sistema simbólico físico ejerce su inteligencia en la resolución de

problemas mediante búsqueda -es decir, generando y modificando progresivamente

estructuras simbólicas hasta que produce una estructura solución.”

En definitiva, la resolución de problemas mediante búsqueda se basa en las siguientes

ideas (Stefik, 1995, cap. 2):

1. Las estructuras simbólicas pueden emplearse para representar la solución de

problemas.

2. Los sistemas simbólicos físicos pueden generar estructuras simbólicas para

representar candidatos a solución alternativos.

Page 30: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

20

3. Los sistemas simbólicos físicos pueden realizar comprobaciones sobre las

estructuras simbólicas de los candidatos para comparar su calidad como

soluciones.

4. Los procesos de búsqueda pueden describirse mediante métodos (los métodos son

esencialmente programas para llevar a cabo los pasos de la resolución de

problemas).

5. Los métodos de búsqueda pueden informarse y mejorarse usando conocimiento.

En tal caso se denominan métodos heurísticos.

La formulación de un problema incluye normalmente tres elementos:

a) Una estructura simbólica que representa la situación o estado inicial del problema.

b) Un conjunto de funciones u operadores que representan acciones posibles. Cada

una de estas funciones transforma una descripción del estado del problema en otra

que representa la descripción de dicho estado tras realizar la acción.

c) Una condición objetivo, que permite determinar si la descripción de un estado

corresponde a una solución al problema.

Los elementos (a) y (b) definen lo que se denomina el espacio de estados del

problema. Al conjunto de estados que cumplen la condición objetivo se le denomina espacio

de soluciones del problema.

Aunque la búsqueda es un modelo útil para la resolución de problemas, no está del

todo claro que lo sea para la explicación del comportamiento inteligente en general. Algunas

de las teorías sobre diseño que se comentan más adelante están basadas precisamente en

procesos de búsqueda. Otras, por el contrario ponen en cuestión dicho modelo, ya que diseñar

no sólo implica resolución de problemas, sino también otras actividades que tal vez no puedan

caracterizarse adecuadamente mediante procesos de búsqueda.

2.4. LA IMPORTANCIA DEL CONOCIMIENTO

Durante los años sesenta el paradigma de la búsqueda fue ampliamente utilizado para

demostrar que los ordenadores podían resolver problemas antes sólo al alcance de los

Page 31: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

21

humanos (la demostración de teoremas sencillos y algunos juegos son ejemplos citados con

frecuencia). Estos éxitos iniciales alentaron predicciones optimistas que aseguraban que en

pocos años los ordenadores resolverían muchos problemas mejor que los humanos. Por

ejemplo, se llegó a afirmar que en un plazo de diez años un ordenador sería campeón del

mundo en ajedrez y demostraría un importante teorema desconocido hasta entonces. Las

siguientes afirmaciones, realizadas por Herbert Simon en 1958 y 1960 respectivamente, son

representativas en este sentido1:

“Existen actualmente en el mundo máquinas que piensan, que aprenden y que crean.

Más aún, su capacidad para realizar estas acciones se incrementará rápidamente,

hasta que, en un futuro próximo, la clase de los problemas a que podrán enfrentarse

serán coextensivos con los que ha afrontado la mente humana.”

“En un futuro muy próximo –inferior a veinticinco años– dispondremos de una

capacidad técnica que nos permitirá utilizar máquinas para cualesquiera de las

funciones que realiza el hombre en una organización. En el mismo periodo, habremos

alcanzado una teoría amplia y empíricamente probada de los procesos cognoscitivos

y su interacción con las emociones, actitudes y valores humanos.”

Obviamente, estas expectativas se vieron defraudadas. El desarrollo de la teoría de la

complejidad a principios de los años setenta vino a confirmar lo que ya se venía

experimentando en la práctica: la mayoría de los problemas que la IA pretende resolver sufren

la denominada explosión combinatoria. Para problemas reales los espacios de estados son tan

grandes que la búsqueda de una solución simplemente por ensayo y error es intratable

utilizando recursos de tiempo y memoria razonables.

Sin embargo, la inteligencia humana permite resolver dichos problemas. La clave para

intentar superar estas dificultades surgió de la observación de que los humanos no actúan

ciegamente en la búsqueda de soluciones a un problema. Dada una situación concreta y un

objetivo, una persona prefiere realizar determinadas acciones con preferencia a otras. En

definitiva posee cierto conocimiento adquirido a través de la experiencia que le permite

razonar sobre el problema y limitar la búsqueda de una solución a un conjunto de alternativas

prometedoras.

1 Citadas en (Weizenbaum, 1976).

Page 32: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

22

Estas ideas produjeron un cambio irreversible en la concepción de las bases para el

comportamiento inteligente dentro de la IA. Se reconoció que más importante aún que el

estudio de procesos y técnicas para el procesamiento de símbolos es la representación y uso

de grandes cantidades de conocimiento para guiar el comportamiento. En definitiva se

produjo un cambio desde las teorías de la inteligencia orientadas a técnicas de búsqueda de

propósito general, hacia teorías de la inteligencia orientadas al conocimiento (Goldstein y

Papert, 1977):

“El problema fundamental en la comprensión de la inteligencia no está en identificar

unas pocas técnicas potentes, sino más bien en cómo se pueden representar grandes

cantidades de conocimiento de modo que permitan su interacción y uso eficaz.”

En (Feigenbaum, 1979) se resume esta misma idea de la siguiente forma:

"[...] la potencia en la resolución de problemas que un agente inteligente exhibe en

sus prestaciones es, en primer lugar, consecuencia del conocimiento especializado

empleado por el agente, y sólo se relaciona muy secundariamente con la generalidad

y la potencia del método de inferencia empleado."

2.5. LOS PRIMEROS SISTEMAS EXPERTOS

La aparición de los primeros sistemas expertos dio un nuevo impulso al enfoque

simbólico de la Inteligencia Artificial. La investigación se centró fundamentalmente en el

desarrollo de medios y técnicas sobre razonamiento y para la obtención y representación del

conocimiento.

Los trabajos realizados en los años setenta en torno al Proyecto de Programación

Heurística (Buchanan y Shortliffe, 1984) de la Universidad de Stanford (EE.UU.) definieron

la ya clásica arquitectura software de los sistemas expertos. Esta se compondría de tres

elementos fundamentales: base de conocimientos, motor de inferencia, y memoria de trabajo.

La idea general era que el conocimiento de un experto humano en la resolución de una clase

de problemas podría obtenerse mediante una serie de entrevistas y otros medios para luego

codificarse explícitamente en algún lenguaje formal. El resultado sería la llamada base de

conocimientos. Podría construirse entonces un sistema que dispusiera de una representación

interna del mundo (la memoria de trabajo) y de un mecanismo de inferencia general que se

Page 33: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

23

encargara de actualizar dicha representación y buscar la solución a un problema aprovechando

la información codificada en la base de conocimientos.

También en esta época apareció el concepto de Ingeniería del Conocimiento (IC),

como aquella parte de la Inteligencia Artificial dedicada al desarrollo de bases de

conocimiento, y entendida normalmente con una vocación fundamentalmente aplicada.

Comenzaron entonces a acuñarse también términos técnicos que son de uso común hoy día en

el análisis y desarrollo de sistemas con conocimiento. Las definiciones presentadas a

continuación están tomadas de (Stefik, 1995):

• Dominio. Se trata de un cuerpo de conocimiento. A menudo un dominio es bien un

campo de estudio académico o bien un área profesional.

• Tarea. Es una clase de trabajo a realizar. Una tarea implica la resolución de una clase

de problemas (por ejemplo, diagnóstico, configuración, diseño o planificación).

• Conocimiento del dominio. Se refiere a la terminología y hechos de un dominio sin

referencia a ninguna tarea en concreto.

• Conocimiento de la tarea. Se refiere a la terminología, modelos computacionales y

hechos asociados a la realización de una clase de tarea, sin referirse necesariamente a

un dominio concreto.

• Dominio de tareas. Combina las dos ideas anteriores. Se refiere al conocimiento,

suposiciones y requisitos asociados a la realización de una tarea concreta en un

dominio concreto (por ejemplo, el diagnóstico de enfermedades infecciosas).

• Problema. Es una instancia particular de una tarea.

Los graves problemas prácticos, encontrados fundamentalmente en la obtención del

conocimiento, dieron al traste con estas ideas iniciales y llevaron a una revisión profunda del

concepto de sistema experto. (Van de Velde, 1994) resume así esta problemática:

“La idea de que el conocimiento está ahí para ser extraído del experto humano y

traducido en elementos utilizables de conocimiento [...] era equivocada. [...]

Combinar todos estos elementos de conocimiento altamente especializados en un

modelo completo del experto resultó ser un auténtico problema de ingeniería. A un

Page 34: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

24

nivel más técnico, la esperanza de que podría obtenerse un sistema inteligente

amontonando fragmentos de representaciones de conocimiento en una base de

conocimientos, para luego dejar que un mecanismo general de inferencia (p.ej., un

intérprete de reglas con encadenamiento hacia delante [...]) decidiera cuando utilizar

dichos elementos, ha fracasado.”

2.6. EL NIVEL DEL CONOCIMIENTO

La comunidad de IA comenzó a plantearse que una arquitectura de módulos software,

aunque en su día supuso un logro considerable, no era el modelo más adecuado para describir

y comprender un sistema experto. A raíz de todo ello cambió la concepción misma de la

naturaleza del conocimiento y se empezaron a desarrollar nuevas metodologías para la

especificación y desarrollo de sistemas expertos.

En 1979 Allen Newell pronunció un discurso presidencial en la primera conferencia

científica de la Asociación Americana para la Inteligencia Artificial (AAAI)2 titulado "El

Nivel del Conocimiento" (Newell, 1982). Con este discurso Newell pretendía hacer explícitas

estas nuevas ideas que, en su opinión, ya estaba utilizando implícitamente en la práctica la

comunidad de la IA. Al parecer las ideas no estaban aún tan claras como Newell pensaba y,

ante la confusión creada, escribió un nuevo artículo más de diez años después aclarando sus

intenciones iniciales (Newell, 1993).

La idea fundamental de Newell era proporcionar una conceptualización más explícita

del concepto de conocimiento, con la esperanza de que futuros debates se encargaran de

establecer los detalles técnicos (no hay que olvidar que se trataba, al fin y al cabo, de un

discurso). Muchos libros de texto de Inteligencia Artificial introducen hoy día el concepto de

nivel del conocimiento, pero curiosamente casi ninguno proporciona una definición explícita

de qué se entiende por conocimiento en Inteligencia Artificial.

2.6.1 Una definición del conocimiento

En líneas generales el argumento de Newell es que el conocimiento es un concepto

abstracto empleado para describir y explicar el comportamiento de un agente. El término

2 American Association for Artificial Intelligence.

Page 35: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

25

agente se refiere aquí a cualquier sistema que se desenvuelve en un determinado medio en el

que puede realizar acciones y del cual puede recibir percepciones (por ejemplo, una persona o

un "robot"). Además, se supone que el agente posee una serie de objetivos que desea cumplir

y que siempre intenta seleccionar sus acciones de modo que pueda conseguirlos (lo que se

denomina el principio de racionalidad).

A este nivel de abstracción, el conocimiento de un agente se define como aquello que

le hace competente para la consecución de sus objetivos. Es lo que le permite seleccionar las

acciones adecuadas. El conocimiento es, por tanto, algo abstracto que nosotros, como

observadores, atribuimos a un agente para explicar su comportamiento sin entrar en los

detalles de su estructura física.

2.6.2 Niveles de descripción

Los sistemas que realizan algún tipo de procesamiento de información, ya sean

biológicos o informáticos, pueden describirse a muchos niveles de abstracción. Atendiendo a

las definiciones proporcionadas hasta ahora, estos niveles pueden agruparse básicamente en

tres: nivel físico, nivel simbólico y nivel del conocimiento. Los dos últimos son comunes

tanto a sistemas biológicos como informáticos:

1. El Nivel Físico. Es el encargado de describir los mecanismos y medios físicos

empleados por el sistema para representar y manipular símbolos. En realidad el

nivel físico agrupa a su vez distintos niveles de abstracción. Por ejemplo, un

sistema biológico puede describirse en términos de neuronas o en términos

bioquímicos; un sistema informático puede describirse en términos lógicos, de

circuitos, o de dispositivos electrónicos.

2. El Nivel Simbólico. Se ocupa de describir y explicar el comportamiento del sistema

en términos de procesamiento de símbolos, es decir, de representaciones o

estructuras simbólicas y de los procesos que operan sobre las mismas.

3. El Nivel del Conocimiento. Se ocupa de describir y explicar el comportamiento del

sistema exclusivamente en términos del conocimiento que se le atribuye. La ventaja

esencial de este tercer nivel es que permite captar la esencia del comportamiento

basándose únicamente en el contenido de las representaciones y en el conocimiento

Page 36: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

26

de los objetivos, abstrayéndose por completo de representación, estructura y

proceso.

La existencia del nivel simbólico es, en realidad, la esencia de la Hipótesis del Sistema

Simbólico Físico. El nivel del conocimiento se presenta como un nivel de descripción de estos

mismos sistemas en términos más abstractos. Así, cuando decimos que un programa

informático posee un conocimiento K, nos referimos realmente al hecho de que en el

programa hay una estructura que, desde nuestro punto de vista, representa K y que existen

procesos capaces de utilizar dicha representación para seleccionar acciones de acuerdo con el

principio de racionalidad. Si tomamos como ciertas las hipótesis de la IA, en principio podría

decirse lo mismo de una persona.

En consecuencia, el conocimiento, al ser algo abstracto, no puede "verse" sino "sólo

imaginarse como resultado de un proceso de interpretación que opera sobre expresiones

simbólicas" (Newell, 1982). La tarea de representar el conocimiento puede entenderse

entonces claramente como la creación de estructuras y procesos simbólicos que exhiban

determinadas capacidades o competencias.

El nivel del conocimiento descrito por Newell tiene sus peculiaridades. A diferencia

de los niveles físicos y simbólico, la descripción de un sistema al nivel del conocimiento no

permite determinar completamente su comportamiento. Se trata únicamente de una

aproximación. Esto se debe a que hay situaciones en las que ningún estado de conocimiento

permite seleccionar entre dos acciones posibles, por ejemplo, cuando el agente posee dos

objetivos incompatibles.

Según el propio Newell, el nivel del conocimiento no es algo de su propia invención,

sino un concepto tan obvio que ya se estaba utilizando implícita e intuitivamente en la

práctica de la ingeniería del conocimiento (Newell, 1993, p. 34):

"La gente descubre el nivel del conocimiento porque debe realizar especificaciones de

los sistemas que se van a programar. No realizan estas especificaciones sólo en

términos de entradas y salidas, sino también en términos de lo que el programa sabe

que puede utilizar para calcular las salidas a partir de las entradas. De este modo

inducen a partir de su práctica una cierta noción de lo que significa que un sistema

tenga conocimiento y qué significa proporcionar los mecanismos del nivel simbólico

que codifican dicho conocimiento y lo extraen para que el programa se comporte del

Page 37: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

27

modo deseado. No hace falta ser un Newton para formar el concepto de nivel del

conocimiento [...]"

2.6.3 Utilidad del nivel del conocimiento

El nivel del conocimiento se presenta como una herramienta útil para la Inteligencia

Artificial, especialmente "en el diseño de sistemas, donde el diseñador especifica un

componente postulando su función (es decir, su objetivo) y el conocimiento que tiene a su

disposición" (Newell, 1993).

La figura 2.2 representa una situación en la que se emplea el conocimiento. En ella

intervienen un observador y un agente. Como el observador desconoce los mecanismos

físicos específicos del agente lo describe únicamente al nivel del conocimiento. Así el

observador atribuye al agente un conocimiento (K) y unos objetivos (G), y conoce también

(tal vez por observación) el medio y el conjunto de acciones posibles del agente. Esto permite

al observador realizar predicciones sobre el comportamiento del agente empleando el

principio de racionalidad.

Sin embargo, lo que el agente posee realmente (físicamente) es un sistema simbólico

(S) que le permite calcular las acciones que llevará a cabo.

Sistemasimbólico

S'

Conocimiento

K'

Sistemasimbólico

S

ConocimientoK

Objetivos

G

Observador Agente

Acciones

Figura 2.2. Una situación en la que se emplea conocimiento (adaptado de (Newell, 1982))

El observador es también un agente (por definición, ya que estamos suponiendo que

"tiene" conocimiento), y podemos describirlo también al nivel del conocimiento. Podemos

atribuir al observador un conocimiento (K') consistente en: el conocimiento K, el

conocimiento de que K es el conocimiento del agente, el conocimiento G, el conocimiento de

que G son los objetivos del agente, conocimiento de las acciones del agente, etc.

Page 38: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

28

Sin embargo, lo que el observador posee realmente (físicamente) es un sistema

simbólico (S') que le permite, por ejemplo, calcular lo que el agente haría si tuviese

conocimiento K y objetivos G.

El nivel del conocimiento permite, por tanto, predecir y comprender el

comportamiento de un agente sin necesidad de ningún modelo de los procesos simbólicos que

realiza. Se puede entender como un medio para construir una teoría o modelo del

comportamiento del agente basándose exclusivamente en información externa al mismo.

La tarea de la Inteligencia Artificial puede entenderse entonces en dos pasos. En

primer lugar, construir estas teorías o modelos a partir del estudio y observación del

comportamiento humano. Las descripciones al nivel del conocimiento pueden servir de este

modo de especificación de los sistemas de IA. En segundo lugar, construir sistemas al nivel

simbólico que sirvan como soluciones a los modelos y, por tanto, como representaciones del

conocimiento. El conocimiento no puede representarse únicamente mediante una estructura al

nivel simbólico, necesita tanto estructuras como procesos.

2.6.4 Teorías computacionales

El precedente más claro de la necesidad de tres niveles de descripción lo encontramos

en (Marr, 1977; 1982). Concretamente (Marr, 1982) describe cómo los estudios

computacionales sobre la visión humana han evolucionado necesariamente, desde

explicaciones basadas en la estructura neuronal del cerebro, hacia explicaciones basadas en

teorías de procesamiento de información independientes de las estructuras y mecanismos del

cerebro (p. 27):

“[...] intentar comprender la percepción estudiando únicamente las neuronas es

como intentar comprender el vuelo de un pájaro estudiando únicamente las plumas:

simplemente no puede hacerse. Para comprender el vuelo de un pájaro necesitamos

comprender la aerodinámica; sólo entonces cobran sentido la estructura de las

plumas y las distintas formas de las alas de los pájaros.”

Los tres niveles que Marr identifica para la descripción de sistemas que realizan

procesamiento de información son, en gran medida, análogos a los descritos por Newell

(véase la tabla 2.1):

Page 39: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

29

Teoría computacional Representación y algoritmo Implementación hardware ¿Cuál es el objetivo de la computación? ¿Por qué es apropiada? Y, ¿cuál es la lógica de la estrategia mediante la que puede llevarse a cabo?

¿Cómo puede implementarse la teoría computacional? Concretamente: ¿Cuál es la representación para la entrada y la salida? ¿Cuál es el algoritmo para la transformación?

¿Cómo pueden llevarse a la práctica físicamente la representación y el algoritmo?

Tabla 2.1. Los tres niveles a los que debe comprenderse una máquina que realiza procesamiento deinformación para poder decir que se ha comprendido por completo (adaptado de (Marr, 1982)).

1. El primer nivel es el más abstracto, y se denomina nivel de teoría computacional3.

Describe qué hace el sistema y por qué lo hace así (qué restricciones debe cumplir

para realizar su tarea).

2. El segundo nivel describe cómo realiza el sistema su tarea de procesamiento de

información. Para ello hay que elegir:

• Una representación para la entrada y la salida del proceso.

• Un algoritmo capaz de realizar la transformación deseada.

Normalmente es posible elegir entre varias representaciones alternativas. El

algoritmo a elegir depende con frecuencia de la representación, aunque incluso

para una misma representación pueden existir varios algoritmos que realicen el

mismo proceso.

3. El tercer nivel es el del dispositivo en el que el proceso se realiza físicamente. El

aspecto más importante aquí es que un mismo algoritmo puede implementarse

empleando tecnologías muy diferentes. Algunas clases de algoritmos serán más

adecuadas que otras para cada soporte físico.

Para Marr los tres niveles sólo están débilmente acoplados, por lo que algunos

fenómenos pueden explicarse únicamente a uno o dos niveles. Marr, al igual que Newell,

3 Marr apunta como ejemplo pionero de teoría computacional la desarrollada por Chomsky para el estudio de las gramáticas, que especifica cuál debe ser la descomposición sintáctica de una frase, pero no cómo realizarla. Chomsky distinguió así los términos competencia o capacidad (competence) y actuación (performance). A veces se emplea el término teoría de competencia (competence theory) para referirse a este tipo de teorías.

Page 40: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

30

tampoco se atribuye el mérito de haber “descubierto” estos “tres niveles”, y se sorprende de

que el nivel de teoría computacional “no jugase un papel más vigoroso en el desarrollo inicial

de la Inteligencia Artificial” (Marr, 1982, p. 28).

2.7. TENDENCIAS ACTUALES EN LA INGENIERÍA DEL

CONOCIMIENTO

Tras estos cambios en la concepción del conocimiento y la introducción de nuevas

metodologías, el término ‘sistema experto’ empezó a caer en desuso y se vio sustituido por el

de sistema experto de segunda generación, o más recientemente por sistema basado en

conocimiento (SBC) o sistema con conocimiento.

El modelado de la experiencia al nivel del conocimiento es hoy día parte fundamental

en el diseño y construcción de SBC (Cuena, 1992). Muchos trabajos se han dedicado al

modelado al nivel del conocimiento de agentes que realizan una determinada tarea. La

abstracción del conocimiento por encima de las actividades humanas permite afirmar qué

conocimiento es necesario y suficiente para determinadas clases de comportamiento experto,

y cómo tiene que ser organizado, generado y empleado para llevar a cabo la tarea que se está

modelando.

En este sentido ha recibido gran atención la técnica de análisis de la estructura de una

tarea (Chandrasekaran, 1992). Este tipo de análisis, propuesto por Balakrishnan

Chandrasekaran, representa una evolución del concepto de tarea genérica (Chandrasekaran,

1986) como elemento para la representación del conocimiento. Sus conceptos básicos son

tarea, método, y estructura de tarea:

• El término tarea se refiere a una familia de instancias de un tipo de problema.

• Los métodos son procedimientos para la resolución de una tarea. Normalmente

están generalizados para abstraerse de un dominio concreto, lo que permite su

reutilización instanciándolos adecuadamente. En general un método es un

algoritmo de búsqueda en algún espacio de estados, aunque en algunos casos la

solución podrá calcularse sin necesidad de búsqueda. Pueden existir distintos

métodos válidos para una misma tarea, cada uno con diferentes requisitos tanto

Page 41: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

31

computacionales (tiempo y memoria) como del conocimiento necesario para su

aplicación.

• En ocasiones, la aplicación de un método para la resolución de una tarea puede

implicar a su vez la realización de diversos tipos de tareas. El análisis de la

estructura de una tarea produce combinaciones de tarea-método-subtarea

resursivamente. Analizar la estructura de una tarea consiste por tanto en

identificar métodos alternativos para la misma, así como las subtareas que plantea

cada método. El análisis se repite entonces sobre cada subtarea hasta alcanzar

tareas que, a efectos de análisis, son directamente realizables.

Las nuevas metodologías para la Ingeniería del Conocimiento se aproximan

conceptualmente a sus homólogas de la Ingeniería del Software, y consideran el desarrollo de

un SBC integrado en el contexto de un sistema más amplio de procesamiento de información.

Un ejemplo es la metodología de programación basada en Unidades Cognitivas, cuyo

entorno software de desarrollo se denomina KSM (Knowledge Structure Manager) (Cuena y

Molina, 1994). La programación en KSM está orientada a la reutilización y puede realizarse

en tres niveles:

! Nivel del conocimiento, donde el agente que realiza la tarea se describe en

términos de su conocimiento ("lo que el agente sabe"), y su funcionalidad ("lo que

el agente hace"), mediante lo que se denomina una Unidad Cognitiva.

! Nivel simbólico, donde se detallan los módulos de conocimiento declarativo y

procedural encargados de modelar el conocimiento y el comportamiento del

agente. Esto incluye la declaración del conocimiento mediante algún formalismo

de representación (por ejemplo, reglas o restricciones), la estrategia de uso de ese

conocimiento (es decir, los motores de inferencia asociados a la representación

elegida), y el vocabulario conceptual que permite compartir términos entre

distintas representaciones.

! Nivel de implementación, donde se definen en algún lenguaje de alto nivel los

programas que conforman el soporte computacional de los módulos del nivel

simbólico.

Page 42: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

32

Otro ejemplo es la metodología CommonKADS (Van de Velde, 1994). Se trata de una

auténtica extrapolación de las metodologías de la Ingeniería del Software al desarrollo de

SBC, basada también en la especificación mediante la elaboración de modelos y en el

concepto de reutilización.

La moderna Ingeniería del Conocimiento ha adoptado el concepto de nivel del

conocimiento, pero también lo ha modificado y ampliado. En (Smithers, 1996) se plantean

dos diferencias importantes entre en Nivel del Conocimiento propuesto por Newell (KLN) y el

empleado actualmente por algunas metodologías de la Ingeniería del Conocimiento (KLKE):

1. En KLKE no se pretende, en general, establecer una conexión necesaria y directa

entre los procesos cognitivos humanos y los sistemas informáticos desarrollados,

sin excluir tampoco obligatoriamente una relación entre ambos. Los modelos de

comportamiento al nivel del conocimiento se emplean únicamente para apoyar la

formulación e implementación de especificaciones para sistemas informáticos.

2. En KLKE se distinguen clases de conocimiento y se les da una estructura. Esto

permite construir un modelo del comportamiento en términos de un proceso de

conocimiento: identificando los tipos de conocimiento suficientes y necesarios, sus

funciones, su interacción y su organización para que el proceso sea precisamente un

modelo de dicho comportamiento.

La ventaja de KLKE es que permite explicar y comprender el comportamiento de

resolución de problemas, tal como se percibe en los expertos humanos, pero abstrayéndose de

toda implicación cognitiva.

2.8. EL PROBLEMA DEL DISEÑO Y LA INGENIERÍA DEL

CONOCIMIENTO

Recientemente se ha denunciado que las investigaciones realizadas en IA sobre diseño

dan la espalda con excesiva frecuencia a estas nuevas aportaciones de la Ingeniería del

Conocimiento (Smithers, 1996, p. 563):

"[...] en la IAD (Inteligencia Artificial en Diseño), aún podemos encontrar sistemas

desarrollados usando formas que recuerdan la construcción de los Sistemas Expertos

de primera generación en los años 70 y principios de los 80. Encontramos muy poco

Page 43: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

33

del tipo de modelado de la experiencia que defienden y apoyan activamente los

métodos modernos de la Ingeniería del Conocimiento."

No significa esto que el comportamiento de diseño no haya sido estudiado ni

modelado adecuadamente, tal como demostrarán los capítulos siguientes. Concretamente, la

metodología CommonKADS incluye el diseño como comportamiento de resolución de

problemas junto a otros bien conocidos en la IA como la clasificación o la configuración

(Breuker, 1994). Uno de los elementos más valorados de CommonKADS es su biblioteca de

'modelos de experiencia'. Se trata de un conjunto de modelos expresados al nivel del

conocimiento que describen la racionalización de un determinado comportamiento de

resolución de problemas. Concretamente los modelos sobre diseño descritos en la biblioteca

(Bernarás, 1994) (Bernarás y Van de Velde, 1994) están fundamentados en parte en la teoría

sobre diseño al nivel del conocimiento que se describe más adelante (véase el capítulo 6).

Trabajos como el realizado en el marco de la metodología CommonKADS

representan, por tanto, un paso adelante para que el desarrollo de SBC de diseño experimente

un nuevo avance, beneficiándose de las nuevas técnicas de la Ingeniería del Conocimiento y

participando activamente en su evolución y desarrollo.

Page 44: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 2

34

Page 45: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

35

CAPÍTULO 3

EL DISEÑO Y LA BÚSQUEDA EN ESPACIOS DE

ESTADOS

“Everyone designs who devises courses of action

aimed at changing existing situations into preferred ones.”

Herbert A. Simon, 1969

Probablemente algunas de las corrientes actuales más importantes que estudian el

diseño en el contexto de la IA tienen su base en los trabajos de Herbert A. Simon The

Sciences of the Artificial (Simon, 1969) y The Structure of Ill-Structured Problems (Simon,

1973). En ellos se define y analiza el diseño desde del punto de vista de la psicología

cognitiva.

3.1. LAS CIENCIAS DE LO ARTIFICIAL

El libro The Sciences of the Artificial está construido fundamentalmente a partir de

unas conferencias invitadas pronunciadas por Herbert Simon en el Instituto de Tecnología de

Massachusetts4 (EE.UU.) en 1968. El objetivo del mismo es proponer y analizar una mejor

organización del curriculum en las escuelas universitarias norteamericanas dedicadas a la

formación de profesionales (como por ejemplo las escuelas de arquitectura, ingeniería,

administración o psicología).

Gran parte del libro se articula en torno a dos conceptos fundamentales que Simon

emplea para establecer las bases de toda actividad profesional: el concepto de lo artificial, y el

concepto de diseño.

4 Massachusetts Institute of Technology (M.I.T.)

Page 46: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 3

36

En primer lugar se define como “artificial” todo aquello que está encaminado a

satisfacer un propósito u objetivo humano, y que se opone, por tanto, al concepto de lo

“natural”. Los conceptos de natural/artificial permiten establecer entonces una distinción entre

las ciencias y las profesiones en el ámbito académico: las ciencias se ocupan de lo natural, de

cómo son las cosas; las profesiones se ocupan de lo artificial, de cómo deberían ser las cosas.

También se define el concepto de “artefacto”5 como cualquier sistema cuyo comportamiento

se adapta a un medio para cumplir un determinado objetivo o propósito.

5 En inglés, en el original: artifact.

En este contexto Simon aprovecha para proporcionar una primera definición de diseño

(Simon, 1969, p. 55):

"Diseña todo aquel que idea líneas de actuación con objeto de cambiar situaciones

existentes por otras preferidas. [...] El diseño, interpretado de este modo, es la esencia

de toda formación profesional: es la señal que distingue las profesiones de las

ciencias. Las escuelas de ingeniería, al igual que las escuelas de arquitectura,

comercio, educación, derecho y medicina, están involucradas de forma directa en el

proceso del diseño."

En definitiva, se proyecta la idea de que existe una base común a todas las actividades

profesionales, y esta base común es precisamente la que recibe el nombre de diseño.

Las “ciencias de lo artificial” defendidas por Simon son aquellas que tienen como

objetivo comprender y predecir el comportamiento de los artefactos, así como la forma de

crearlos. Estas ciencias deberían, por tanto, formar parte importante del curriculum de las

escuelas universitarias, ya que su objetivo es precisamente estudiar las bases de la actividad

profesional. Simon identifica al menos dos ciencias de lo artificial: la psicología y la ciencia

del diseño.

La psicología puede considerarse una ciencia de lo artificial en tanto que intenta

estudiar el comportamiento humano. Puesto que dicho comportamiento está obviamente

encaminado a la consecución de los propósitos u objetivos humanos puede calificarse

Page 47: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

37

indudablemente como artificial. Son artefactos estudiados por la psicología, por ejemplo, las

estrategias que los seres humanos emplean para la resolución de problemas.

La "ciencia del diseño” es otra ciencia de lo artificial que se preocupa de la creación de

artefactos, y que tradicionalmente ha recibido más atención en el contexto de la ingeniería y la

arquitectura. El proceso de diseño, o de creación de artefactos, se define simplemente como la

adaptación de los recursos disponibles a un determinado medio con objeto de satisfacer un

determinado propósito. En definitiva se perfila la idea de que “la teoría del diseño es la teoría

general de búsqueda en grandes espacios de estados combinatorios” (Simon, 1969, p. 54). No

obstante, esta idea se analiza de nuevo con importantes matizaciones en (Simon, 1973), tal y

como se comenta más adelante.

La generalidad de la definición proporcionada sobre el diseño y sus implicaciones para

gran cantidad de ámbitos de actividad humana (p.ej., las actividades profesionales de la

ingeniería, arquitectura o composición musical) llevan a Simon a afirmar que “el auténtico

objeto de estudio de la humanidad es la ciencia del diseño” (Simon, 1969, p. 83) y no el

propio ser humano.

Básicamente las ideas expuestas en el libro de Simon sobre el proceso de diseño

pueden resumirse en los siguientes puntos:

• La resolución de problemas (de diseño) puede explicarse en términos de procesamiento de

información (en definitiva una aplicación más de lo que más tarde se denominó Hipótesis

del Sistema Simbólico Físico).

• El proceso de diseño humano sigue una organización jerárquica y “casi

descomponible”. Esto permitiría explicar en gran medida el comportamiento,

aparentemente complejo, de un diseñador simplemente basándose en los elementos

que componen el proceso y su organización.

• El proceso de diseño humano es independiente del hardware (en este caso el

cerebro) que le sirve de soporte. Esto permitiría emularlo utilizando otro tipo de

sistemas que procesen información, como los ordenadores digitales. No obstante,

las limitaciones de un determinado sistema físico restringen las estrategias

concretas que dicho sistema puede emplear para la resolución de problemas. Por

Page 48: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 3

38

ejemplo, determinadas estrategias de búsqueda que pueden tener éxito en un

ordenador serán inviables para la mente humana.

3.2. LA ESTRUCTURA DE LOS PROBLEMAS MAL

ESTRUCTURADOS

La ciencia del diseño tal como aparece descrita en The Sciences of the Artificial es

claramente insuficiente: es evidente que los problemas que surgen en la práctica profesional

de un arquitecto o un ingeniero, por ejemplo, no siempre se adaptan al esquema de la

resolución de problemas en un espacio de estados dado. Dicho en otras palabras, los

problemas del mundo real no se parecen con frecuencia en nada a los problemas “de libro”

que se estudian en las escuelas universitarias. Sin embargo, los profesionales son capaces de

abordarlos con éxito en la mayoría de las ocasiones.

Una característica importante en el diseño (esencial para algunos) es que los

problemas están “mal definidos” en el sentido de que no se dispone de una descripción

explícita adecuada de los criterios que permitan identificar una solución, y/o no se ha

construido aún un espacio de problema adecuado que permita encontrar tal solución.

En (Simon, 1973) se analiza la relación entre problemas bien y mal estructurados y se

defienden dos ideas fundamentalmente:

1. No existe una división clara entre ambas clases de problemas, ya que todos los

problemas reales están, en cierto sentido, mal definidos.

2. En consecuencia, ambas clases de problemas pueden resolverse empleando los

mismos procesos que se utilizan en la resolución de problemas bien estructurados

(es decir, búsqueda en espacios de estados).

Para apuntalar la idea de que todos los problemas reales están mal definidos,

Simon considera a modo de ejemplo dos problemas: la demostración de teoremas y el

juego del ajedrez. Tradicionalmente ambos problemas se consideran como bien

estructurados y pueden resolverse con cierto grado de éxito en un ordenador.

Un análisis preliminar de la demostración de teoremas muestra, sin embargo, que su

espacio de estados no suele estar completamente definido a priori. Un agente humano que

Page 49: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

39

intenta demostrar un teorema puede cambiar inopinadamente su espacio de búsqueda,

incluyendo acciones imprevistas. Por ejemplo, puede recurrir a conocimiento metafórico, o

adaptar demostraciones análogas pero no legales desde el punto de vista de la lógica. Si se

admite que el resolutor de problemas puede reestructurar y modificar el espacio de estados

introduciendo nuevos recursos, entonces hay que considerar la demostración de teoremas

como un problema mal definido

Lo mismo puede decirse del juego del ajedrez. Sin embargo, este problema es más

adecuado para mostrar que en él no existe un criterio factible y definido para encontrar una

solución. Por el contrario, a medida que el juego avanza y emerge nueva información (en la

forma de los movimientos previsibles o imprevistos del contrario), es necesario redefinir

continuamente el objetivo a perseguir para poder ganar el juego. Simon señala que encontrar

una buena jugada o movimiento inmediato también es un problema mal definido en el mismo

sentido. A medida que un jugador explora las posibles consecuencias de sus movimientos el

objetivo de ‘comerse aquel peón’ o ‘amenazar aquel maldito caballo’ puede verse sustituido

por otros que aparezcan repentinamente más adecuados como ‘cubrir un honroso enroque del

rey’ o ‘comenzar a desbaratar el flanco derecho del contrario’.

La conclusión que Simon proporciona sobre estos ejemplos es que todos los problemas

reales son problemas mal definidos y que un problema sólo se vuelve bien definido en el

proceso de prepararlo para un determinado resolutor de problemas. Es justo, por tanto,

reconocer que la mayor parte del esfuerzo dedicado para resolver un problema se dedique a

estructurarlo, y sólo una pequeña parte a resolverlo una vez que está estructurado.

El artículo termina con dos reflexiones importantes que configuran la base de muchos

trabajos posteriores sobre diseño en IA: ¿cuáles son las características que hacen que un

problema esté mal definido?, y, sobre la base de lo anterior, ¿qué capacidades debe tener un

resolutor para resolver problemas mal estructurados?

3.2.1 Origen de los problemas mal estructurados

Cualquier proceso de resolución de problemas parecerá mal estructurado si se emplea

como resolutor de problemas una máquina que tiene:

Page 50: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 3

40

• acceso a una memoria a largo plazo6 muy grande, con información potencialmente

relevante, y/o,

• acceso a una memoria externa muy grande, con información sobre las

consecuencias en el mundo real de las acciones llevadas a cabo para la resolución

de problemas.

Si toda la información para resolver un problema está en la memoria a largo plazo del

sujeto que lo va a resolver, y toda esa información no se puede considerar a la vez en la

práctica, entonces es necesario descomponer el problema y organizar el proceso de

resolución. De este modo se puede ir evocando lo necesario para formular y resolver los

distintos subproblemas, y luego recomponer lo mejor posible sus soluciones cuidando de las

posibles interacciones. La propia organización del proceso influye decisivamente en el

resultado obtenido.

El límite entre problemas bien y mal estructurados tiene su origen en la insistencia en

sustituir nociones de "posibilidad de computación en principio" por nociones de "posibilidad

de computación en la práctica" en la definición de los problemas bien estructurados. La idea

es que el carácter mal estructurado de un problema es relativo, al menos en cierta medida, a la

naturaleza del resolutor que se enfrenta a él. Concretamente relativo a su conocimiento,

recursos y capacidad de proceso. Un problema como el del ajedrez dejaría de estar mal

estructurado si un resolutor tuviese la capacidad de analizar una estrategia de juego desde una

determinada posición hasta la terminación del mismo. Sin embargo, esto es algo inalcanzable

para las capacidades humanas y computacionales salvo en los movimientos finales del juego.

3.2.2 Capacidades para la resolución de problemas mal estructurados

Simon afirma que cuando el espacio del problema está sujeto a modificaciones durante

el proceso de resolución, el sistema debe ser capaz de aceptar y asimilar información que

proviene de diversas fuentes. La primera es la ya mencionada memoria a largo plazo, que

6 En (Simon, 1969, p. 33) se trata sobre las capacidades de la memoria humana en términos de memoria a corto plazo, y memoria a largo plazo. Se estima que la primera permite "almacenar" una cantidad de conceptos muy reducida (entre 2 y 7 elementos) en un tiempo muy pequeño, mientras que la segunda parece tener una capacidad de almacenamiento casi ilimitada, aunque el tiempo necesario para "almacenar" un elemento en la misma es relativamente lento.

Page 51: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

41

debe de poder almacenar la información necesaria en un formato adecuado y disponer,

además, de un mecanismo de evocación y recuperación. Otras fuentes importantes de

información son las instrucciones en lenguaje natural que originan el proceso de diseño (y que

implican la capacidad de comprender dicho lenguaje) y los cambios en el mundo real

provocados por el propio resolutor o ajenos al mismo (y que implican capacidades de

percepción y reconocimiento de patrones).

3.3. COMENTARIOS

En The Sciences of the Artificial (Simon, 1969) aparecen tres conceptos básicos para el

estudio del diseño en IA:

• Las bases del proceso de diseño son comunes a todas las actividades profesionales.

• La importancia que tiene la búsqueda en espacios de estados en la resolución de

problemas.

• La distinción entre los conceptos de función (propósito o finalidad), estructura y

comportamiento de un artefacto.

Otros aspectos, por el contrario, quedaron ignorados o relegados a un segundo plano, y

se apuntan en The Structure of Ill-Structured Problems (Simon, 1973). Uno de ellos es la

importancia del conocimiento en el proceso de diseño. El diseño es una actividad intensiva en

conocimiento.

Otro aspecto importante es la evidencia de que los espacios de búsqueda de los

problemas de diseño no vienen definidos de antemano. Su construcción es una parte

importante del proceso. Simon aborda este problema afirmando que todos los problemas

reales están, en cierto sentido, mal definidos. El problema de construir un espacio de estados

adecuado para un problema viene obligado por las limitadas capacidades del resolutor, que no

es capaz de considerar todos los aspectos y variaciones simultáneamente.

Puede que no haya otra cosa que el tamaño de la base de conocimientos para distinguir

entre problemas bien y mal estructurados. Por tanto, los resolutores de problemas bien

estructurados deberían poder ampliarse para tratar dominios mal estructurados sin necesidad

de introducir componentes cualitativamente nuevos. Simplemente hay que disponer del

Page 52: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 3

42

conocimiento adecuado para descomponer el problema y poder abordar los subproblemas

resultantes de forma separada. En el próximo capítulo se presenta una interpretación

radicalmente diferente de estos fenómenos.

La afirmación de que la búsqueda es un proceso necesario, pero no suficiente, para

resolver problemas mal estructurados conlleva una primera distinción entre clases de diseño:

• El diseño rutinario, que puede abordarse mediante búsqueda en un espacio de

estados ya conocido.

• El diseño no rutinario, que precisa de la construcción y/o modificación del espacio

de estados en el que se realizará la búsqueda. Es necesaria entonces una meta-

búsqueda para la construcción del espacio de estados adecuado para cada

subproblema. Dicha meta-búsqueda estaría basada en la memoria a largo plazo y

en su mecanismo de evocación de información relevante.

Estas ideas son, hoy por hoy, cuando menos controvertidas. Algunos trabajos sobre

diseño se han centrado precisamente en buscar formas de descomponer y organizar la

resolución de problemas (Liu y Brown, 1994). Otros se han apoyado en la noción de alguna

meta-búsqueda para la construcción de los espacios de estados (Gero, 1994a). Otros autores,

por el contrario, consideran que estructurar y resolver un problema de diseño no son procesos

independientes, sino que un problema no está resuelto hasta que no se descubre una estructura

para el mismo. No es posible saber si una estructura es adecuada para un problema hasta que

no se han encontrado y valorado las soluciones que proporciona (Smithers y Troxell, 1990).

Este proceso de encontrar una estructura adecuada para un problema no puede caracterizarse

entonces adecuadamente como una meta-búsqueda. En próximos capítulos se volverán a

interpretar los conceptos de diseño rutinario y no rutinario en el contexto de trabajos más

recientes.

Page 53: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

43

CAPÍTULO 4

EL DISEÑO Y LA REFLEXIÓN-EN-LA-ACCIÓN

“The practice situation is neither

clay to be molded at will nor an independent, self-sufficient object of study from which the inquirer keeps his distance.”

Donald A. Schön, 1983

En los libros de Donald A. Schön The Reflective Practitioner (Schön, 1983) y

Educating the Reflective Practitioner (Schön, 1987) encontramos un nuevo análisis del

proceso de diseño en el mismo contexto empleado por Simon en The Sciences of the

Artificial: el de la práctica profesional y las necesidades para la formación de los

profesionales en la universidad. En (Schön, 1992) se describen algunas implicaciones de este

análisis sobre el campo de la IA.

Aunque la base del análisis empleado por Schön es también la psicología, sus bases

filosóficas y las conclusiones obtenidas son, en muchos aspectos, opuestas a las de Simon.

Una primera diferencia se refiere al uso de la palabra “diseño”. Al igual que Simon,

Schön analiza la resolución de problemas reales en la práctica profesional y considera que

pueden existir unas bases comunes para la práctica en diversas profesiones. Sin embargo, es

más cauto al emplear el término diseño (Schön, 1983, p. 77):

"En los últimos veinte años, más o menos, el concepto de diseño se ha ampliado. [...]

Herbert Simon y otros han sugerido que todos los oficios dedicados a transformar

situaciones reales por otras preferidas están involucrados en el diseño. Ha existido

una tendencia creciente a considerar políticas, instituciones, y el comportamiento

mismo, como objetos del diseño.

Es cuestionable cuánto más se debería avanzar en esta dirección. Nos arriesgamos a

ignorar o subestimar diferencias significativas en los medios, contextos, objetivos y

Page 54: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

44

cuerpos de conocimiento propios de las profesiones. Aunque también puede que

descubramos, a un nivel más profundo, un proceso de diseño genérico que subyace a

estas diferencias".

En consecuencia emplea el término sólo en su análisis de los campos de la arquitectura

y la ingeniería, que están reconocidos ampliamente como paradigmas del diseño

(especialmente el primero). Al proceso común que identifica en toda actividad profesional y

que permite abordar los problemas del mundo real lo denomina reflexión-en-la-acción.

Este capítulo se organiza de la siguiente forma. En primer lugar se plantea una crítica a

los planteamientos filosóficos que sirven de base a los trabajos de Simon expuestos en el

capítulo anterior. La conclusión es la necesidad de una caracterización alternativa del diseño.

En segundo lugar se presentan los conceptos fundamentales de esta nueva caracterización. A

continuación se describen y explican los procesos de diseño empleando estos términos. Por

último se establecen algunas implicaciones relativas al desarrollo de una teoría computacional

de diseño basándose en estos principios y se realizan algunos comentarios.

4.1. LA RACIONALIDAD TÉCNICA Y SUS CONSECUENCIAS

Para Schön la problemática en la formación universitaria de profesionales tiene su

origen en las bases filosóficas sobre las que se ha construido la universidad moderna, y que

han impregnado los curricula de las escuelas técnicas.

La organización de las universidades tal y como las conocemos actualmente está

basada en los principios de la filosofía positivista, ideada por Auguste Compte, imperante a

finales del siglo XIX y principios del XX. Sus tres principales doctrinas son:

• La convicción de que la ciencia empírica es la única fuente positiva de

conocimiento sobre el mundo. Se considera que las únicas proposiciones válidas

son, bien las analíticas y esencialmente tautológicas provenientes de la lógica y las

matemáticas, o bien las empíricas, que expresan nuestro conocimiento del mundo.

• La intención de eliminar de la mente humana todo misticismo, superstición y

demás formas de pseudo-conocimiento.

Page 55: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

45

• La intención de utilizar el conocimiento científico y el control técnico para

gobernar y dirigir la sociedad hacia un estado de mayor bienestar, haciendo de la

tecnología algo no ya exclusivamente geométrico, mecánico o químico, sino

también y primordialmente político y moral.

A la epistemología positivista de la práctica se la denomina Racionalidad Técnica. De

acuerdo con este modelo la actividad profesional se define como la resolución de problemas

instrumentales de forma rigurosa gracias a la aplicación de técnicas y teorías científicas. El

conocimiento de un profesional capacitado para resolver estos problemas está formado por

tres componentes (E. Schein, Professional Education, McGraw-Hill, 1973, citado en (Schön,

1983)):

"1.) Un componente de ciencia básica o disciplina subyacente sobre la que descansa la

práctica o a partir de la cual se desarrolla.

2.) Un componente de ciencia aplicada o «ingeniería» del que se obtienen muchas de

las soluciones a problemas y de los procedimientos de diagnóstico cotidianos.

3.) Un componente de destreza y actitud que se ocupa de la prestación de servicios

real al cliente, empleando los conocimientos aplicados y básicos subyacentes."

El conocimiento que representan las teorías y técnicas de las ciencias básicas y

aplicadas está perfectamente reconocido en los currícula universitarios. Por el contrario, las

habilidades que permiten la aplicación de dichos conocimientos a problemas reales están

consideradas como una clase secundaria de conocimiento.

Este es también el orden en que se enseñan normalmente los conocimientos en las

universidades, quedando para último lugar muchas veces la resolución de “casos prácticos”

donde el alumno debe aplicar los conocimientos adquiridos.

Sin embargo, es evidente que el conocimiento práctico existe, aunque “no encaja bien

en ninguna de las categorías positivistas, ya que no es un conocimiento descriptivo del

mundo, ni puede reducirse a los esquemas analíticos de la lógica y las matemáticas”. Para

solventar este problema, el modelo de Racionalidad Técnica concibe el conocimiento práctico

como conocimiento sobre la relación entre medios y fines. Dados unos fines, la cuestión de

elegir los medios más adecuados para conseguirlos se convierte en una cuestión técnica. A

medida que el conocimiento científico avanza, las relaciones causales medios/fines pueden

Page 56: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

46

irse sustituyendo por otras más instrumentales. Se hace posible entonces elegir los medios

más adecuados para un fin utilizando la teoría científica adecuada. Desde esta perspectiva, la

práctica profesional se considera como un proceso de resolución de problemas.

Sin embargo, algunos aspectos de la realidad son difíciles de conciliar con esta visión

de la práctica profesional. Los profesionales deben enfrentarse continuamente a situaciones

nuevas que van más allá de los problemas que fueron preparados para resolver. Problemas

que muchas veces presentan características únicas, o en los que los objetivos a perseguir o sus

prioridades no están nada claros. Los profesionales no sólo resuelven problemas, sino que

también deben indentificarlos. Schön argumenta que esta actividad no encaja fácilmente en un

modelo de actividad profesional basado en los principios de la Racionalidad Técnica (Schön,

1983, p. 39-41):

"[...] con este énfasis en la resolución de problemas, [la Racionalidad Técnica]

ignora la actividad de plantear problemas, el proceso mediante el que se define la

decisión a tomar, los fines a conseguir, los medios que pueden ser elegidos. En la

práctica del mundo real los problemas no se le presentan dados al profesional. [...]

Para convertir una situación problemática en un problema, un profesional debe llevar

a cabo un determinado trabajo. Debe dar sentido a una situación incierta que

inicialmente no lo tiene.

[...] aunque la construcción de problemas es una condición necesaria para la

resolución técnica de problemas, no es en sí misma un problema técnico. [...] La

actividad de plantear problemas es un proceso en el que, de forma interactiva, damos

nombre a los elementos a los que prestaremos atención, y enmarcamos el contexto en

el que les prestaremos dicha atención.

La Racionalidad Técnica depende de un acuerdo sobre los fines. Cuando los fines son

fijos y están claros, entonces las decisiones sobre cómo actuar se presentan como un

problema instrumental. Pero cuando los fines están confusos y en conflicto, no hay

aún ningún "problema" que resolver. Un conflicto en los fines no puede resolverse

mediante el uso de técnicas obtenidas de la investigación aplicada. Es más bien a

través del proceso no técnico de enmarcar la situación problemática como podemos

organizar y clarificar tanto los fines a conseguir como los medios posibles para

conseguirlos".

Page 57: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

47

En consecuencia el modelo de Racionalidad Técnica deja a los profesionales ante un

dilema que Schön denomina de "rigor o pertinencia". Las teorías y técnicas que los

profesionales conocen pueden aplicarse con rigor a un conjunto determinado de problemas

técnicos establecidos. Sin embargo, los problemas reales que tienen una importancia social en

lugar de técnica no están bien definidos. En ellos el profesional debe abandonar el rigor

técnico y realizar una indagación cargada de ensayos, errores e intuiciones.

Algunos intentos se han realizado para arreglar esta situación. Uno de ellos es el de

Simon en The Sciences of the Artificial, comentado en el capítulo anterior. Schön valora estos

intentos de la siguiente forma (Schön, 1983, p. 45):

"Algunos estudiosos de las profesiones han intentado dar cuenta de las limitaciones

de la pericia técnica y han propuesto nuevos enfoques para fundamentar el

conocimiento profesional. Entre ellos [se encuentra] Herbert Simon, cuyo libro The

Sciences of the Artificial ha despertado un gran interés en los círculos profesionales

[...]

Es Simon [...] el que establece una conexión más clara entre los fundamentos del

conocimiento profesional y los orígenes históricos de la epistemología positivista de

la práctica. Simon cree que todo conocimiento profesional está involucrado de forma

directa con lo que él denomina «diseño», es decir, el proceso de «cambiar situaciones

existentes por otras preferidas». Pero el diseño, en este sentido, es precisamente lo

que no enseñan las escuelas profesionales [...] estas escuelas «han abdicado

prácticamente de la responsabilidad de formar en esta habilidad troncal de las

profesiones», en gran medida porque tal formación debería basarse en una ciencia

del diseño que aún no existe. Simon propone construir una ciencia del diseño

emulando y ampliando los métodos de optimización que se han desarrollado en la

teoría de la decisión estadística y en las ciencias empresariales [...]

Una vez que los problemas están bien formados en este sentido, pueden resolverse

mediante un cálculo de decisión. Como acabamos de ver, sin embargo, los problemas

instrumentales bien formados nos vienen dados sino que deben construirse a partir de

situaciones problemáticas y confusas. Aunque Simon propone llenar el hueco entre las

ciencias naturales y la práctica del diseño con una ciencia del diseño, su ciencia

puede aplicarse sólo a los problemas bien formados ya extraídos de las situaciones de

la práctica".

Page 58: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

48

Puesto que el modelo de Racionalidad Técnica no puede abordar adecuadamente la

cuestión del conocimiento práctico, Schön propone buscar una nueva epistemología de la

práctica profesional que permita explicar la competencia en situaciones nuevas, que no se

adaptan a los problemas instrumentales conocidos por los profesionales.

4.2. FUNDAMENTOS DE LA REFLEXIÓN-EN-LA-ACCIÓN

La descripción que Schön realiza de la práctica profesional se basa en dos conceptos

fundamentales: el saber-en-la-acción y la reflexión-en-la-acción.

4.2.1 El saber-en-la-acción

Muchas veces nuestro conocimiento sobre una determinada actividad se manifiesta

solamente en nuestras acciones, y no siempre somos capaces de dar una descripción adecuada

del mismo. Algunos ejemplos son el saber de un equilibrista que se pasea por la cuerda floja o

el de una persona que monta en bicicleta. La actividad de los profesionales depende también

muchas veces de ese conocer o “saber-en-la-acción” tácito y que no puede explicarse

mediante reglas o planes que existan en la mente de forma previa a la propia acción.

El concepto de saber-en-la-acción (knowing-in-action) se refiere a una forma de saber

inherente a la acción inteligente que no encaja bien en las formas de conocimiento empleadas

por el modelo de Racionalidad Técnica. Schön utiliza este concepto para construir su

epistemología de la práctica (Schön, 1982, p. 276):

"Cuando un profesional muestra su maestría, su saber intuitivo es siempre más rico

en información que cualquier descripción del mismo. [...] Cualquiera que haya

intentado aprender a esquiar o escribir historias leyendo un libro sabe lo difícil que

puede ser actuar a partir de tales descripciones".

Esta forma de saber ha sido descrita por diversos autores en diferentes contextos:

como “procesos no lógicos” que no pueden expresarse mediante palabras o como

razonamiento, y que sólo se manifiestan mediante un juicio, decisión o acción; o como un

“saber tácito”. Chris Alexander considera el saber utilizado en el diseño arquitectónico, y

describe cómo es posible reconocer y arreglar una forma que “no encaja” en un determinado

contexto, aunque no sea posible describir las reglas que indican por qué la forma “no encaja”

ni por qué la forma corregida es buena.

Page 59: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

49

Esta forma de saber es para Schön la forma característica del conocimiento práctico, y

posee las siguientes propiedades:

• Existen acciones que llevamos a cabo de forma espontánea y no necesitamos

pensar en ellas antes de realizarlas o durante su realización.

• A menudo no somos conscientes de haberlas aprendido.

• En algunos casos fuimos conscientes alguna vez de la comprensión que ha

quedado implícita en la acción. En otros nunca llegamos a ser conscientes de ella.

Sin embargo, en ambos casos no somos capaces de describir el saber que se

manifiesta en la acción.

4.2.2 La reflexión-en-la-acción

El hecho de poder aplicar un saber tácito en la práctica de determinadas actividades

permite experimentar a veces una sorpresa sobre sus consecuencias que nos lleva a pensar y

actuar de forma simultánea. Al igual que el saber-en-la-acción, la reflexión-en-la-acción es un

proceso que puede llevarse a cabo de forma espontánea y sin una articulación consciente

(Schön, 1983, p. 56):

"Cuando nuestra actuación espontánea e intuitiva no produce más que los resultados

que se esperan de ella, entonces tendemos a no pensar en ella. Pero cuando la

actuación intuitiva nos produce sorpresas, agradables y prometedoras, o no deseadas,

respondemos mediante la reflexión-en-la-acción. [...] En tales procesos la reflexión

tiende a centrarse de forma interactiva en los resultados de la acción, la acción

misma y el saber intuitivo implícito en la acción".

En realidad, cabe distinguir tres actitudes ante el factor sorpresa provocado por

nuestras acciones intuitivas:

• Ignorarlo completamente.

• Ignorarlo temporalmente y reflexionar sobre la acción, una vez que el proceso ha

terminado. En tal caso la reflexión es retrospectiva y carece de conexión directa

con la acción.

Page 60: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

50

• Reflexionar en el transcurso de la acción sin llegar a interrumpirla. En tal caso el

pensamiento sirve para reorganizar lo que se está haciendo mientras se está

haciendo, sin llegar a interrumpirlo. En tal caso se está reflexionando-en-la-acción.

Lo que realmente distingue a la reflexión-en-la-acción es su "inmediata relevancia

para la acción". Temporalmente ocurre dentro de lo que Schön denomina "action-present"

(acción presente), el periodo de tiempo en que la acción todavía puede ser relevante para

cambiar la situación. Estos periodos de tiempo pueden variar desde segundos (p.ej. en el caso

de un arquitecto que esta dibujando bocetos) a meses (p.ej. en el caso de un abogado que está

defendiendo un caso).

Las consecuencias imprevisibles del saber tácito de las acciones son las que propician

a su vez la posibilidad de reflexionar-en-la-acción. Un ejemplo claro se encuentra en la

actuación de un grupo de músicos de jazz cuando realizan una improvisación. La sensación

que tienen de la música que están creando mediante sus acciones les conduce a realizar otras

nuevas “pensando en lo que están haciendo y, en el proceso, cambiando su forma de hacerlo".

Schön distingue varios "momentos" en un proceso idealizado de reflexión-en-la-

acción, aunque estos se funden con frecuencia en un solo proceso:

a) Situación de la acción en la que se traen respuestas espontáneas y rutinarias. El

conocimiento es tácito y produce los resultados esperados si la situación es

"normal".

b) Sorpresa agradable o desagradable.

c) La sorpresa conduce a una reflexión dentro de la acción presente (no se ignora).

d) La reflexión-en-la-acción pone en cuestión las suposiciones subyacentes al

conocimiento-en-la-acción. Durante este proceso pueden reestructurarse las

estrategias de acción, la comprensión de los fenómenos de la situación o las

maneras de formular el problema que las acciones intentan resolver.

e) La reflexión da lugar a la experimentación in situ. Se idean y prueban nuevas

acciones con objeto de explorar los fenómenos recién observados, verificar la

comprensión global de los mismos, o afirmar las acciones anteriores.

Page 61: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

51

4.2.3 El saber-en-la-práctica y la reflexión-en-la-práctica

Para Schön el proceso de reflexión-en-la-acción forma la base fundamental de la

práctica profesional en situaciones problemáticas o mal definidas. En este contexto se refiere

a dicho proceso como “reflexión-en-la-práctica”, y al conocimiento tácito empleado como

“saber-en-la-práctica” (Schön, 1983, pp. 60-61):

"A medida que un profesional experimenta muchas variaciones de un pequeño número

de tipos de casos, puede «practicar» su práctica. Desarrolla un repertorio de

expectativas, imágenes y técnicas. Aprende qué debe buscar y cómo debe responder a

lo que encuentra. Mientras su práctica sea estable, en el sentido de que le presenta los

mismos tipos de casos, se hace cada vez menos propenso a la sorpresa. Su saber-en-

la-práctica tiende a hacerse cada vez más tácito, espontáneo y automático,

confiriéndole a él y a sus clientes los beneficios de la especialización.

[...] Mediante la reflexión, [el profesional] puede hacer aflorar y criticar la capacidad

tácita de comprender los problemas que ha desarrollado a partir de las experiencias

repetitivas de una práctica especializada, y puede dar nuevo sentido a las situaciones

únicas e inciertas que se permita experimentar."

Saber-en-la-acción y reflexionar-en-la-acción forman parte de nuestras experiencias

cotidianas de hacer y pensar. Cuando aprendemos el arte de una práctica profesional, estamos

aprendiendo nuevas formas de utilizar tipos de competencias que ya poseemos, aunque

adaptados a un contexto social e institucional que condiciona muchas veces dicha práctica.

Los esfuerzos de Schön se encaminan a construir una epistemología de la práctica basada en

el proceso de reflexión-en-la-práctica, y a mostrar como dicho proceso puede emplearse para

resolver situaciones problemáticas de forma rigurosa.

4.3. LA ESTRUCTURA DE LA REFLEXIÓN-EN-LA-ACCIÓN

En (Schön, 1983) se presenta la estructura del proceso de reflexión-en-la-acción a

partir del análisis de la práctica en dos profesiones aparentemente muy diferentes: la

arquitectura y la psicoterapia. A continuación analiza cómo procesos similares aparecen en la

práctica de otras profesiones como la ingeniería, la planificación urbana o la administración

de empresas.

Page 62: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

52

Normalmente los problemas del mundo real no encajan completamente en un conjunto

cerrado de "problemas tipo" y no vienen descritos formalmente de antemano, ni en cuanto a

los medios a emplear para resolverlos, ni en cuanto a los fines a perseguir. Por el contrario,

normalmente es necesario descubrir las características peculiares de cada “situación

problemática” y existe realmente un “problema para encontrar el problema”. Estas situaciones

son complejas e inestables, vienen acompañadas normalmente de incertidumbre,

características únicas que no aparecen en problemas ya conocidos y/o objetivos incompatibles

o inconsistentes.

La forma de abordar estas situaciones problemáticas puede describirse como una

indagación. Se intenta imponer un marco a la situación y seguir la lógica de sus

consecuencias, pero de una forma abierta y teniendo en cuenta cómo reacciona la propia

situación. En el transcurso de esta indagación se llevan a cabo dos procesos de fundamental

importancia:

• Construcción de mundos de diseño. Cuando un profesional se encuentra un

fenómeno desconocido lo percibe de una forma esencialmente subjetiva e intenta

asimilarlo a algún elemento de su repertorio de casos familiares.

• Experimentación en diseño. El profesional formula nuevas hipótesis a medida que

reflexiona sobre las similitudes establecidas con un caso familiar. Estas hipótesis

se comprueban mediante acciones que sirven a la vez para modificar la situación y

para explorarla.

A continuación se describen ambos procesos por separado aunque están íntimamente

entrelazados.

4.3.1 Construcción de mundos de diseño

El proceso para la resolución de situaciones problemáticas se basa en el desarrollo de

un marco adecuado para la situación, es decir, de determinar qué elementos hay en ella

(cuáles son los medios disponibles) y de dar un sentido a la misma (cuáles son los fines a

perseguir).

Cada diseñador construye gradualmente una ontología o "mundo de diseño" para cada

situación problemática, es decir, "una construcción de la totalidad de las cosas y relaciones

Page 63: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

53

que el diseñador toma como la realidad del mundo en que diseña" (Schön, 1992). Para llegar a

tener un problema bien definido, el diseñador tiene que construirlo a partir de los materiales

que encuentra en la situación, eligiendo y denominando aquello en lo que va a reparar. Los

procesos cognitivos que confluyen para la construcción de un mundo de diseño pueden ser

diversos (Schön, 1992):

"[Los diseñadores construyen mundos de diseño] mediante procesos de apreciación,

que se refieren tanto a la percepción sensorial activa del material en cuestión, como a

la construcción de un orden en el material, lo que incluye el dar nombre y marco a las

cosas, cualidades y relaciones."

El concepto de mundo de diseño está muy relacionado con los de estilo y espacio de

estados. La percepción de los materiales disponibles en una situación y de sus posibilidades

es siempre subjetiva. Dado un conjunto de materiales disponibles, distintos diseñadores

seleccionan con frecuencia distintos objetos, e incluso perciben los 'mismos' objetos de

formas distintas (Schön, 1992). Esto permite que cada diseñador construya su propio "espacio

de estados" para la resolución de un problema. Un ejemplo bastante clarificador en este

sentido aparece resumido en (Schön, 1987, pp. 18-19):

"En función de nuestra experiencia disciplinar, nuestros roles organizativos,

situaciones del pasado, intereses y perspectivas políticas y económicas, nos

enfrentamos a las situaciones problemáticas de maneras muy diferentes. Un

especialista en nutrición, por ejemplo, puede convertir una vaga preocupación sobre

la mala alimentación de los niños de países en vías de desarrollo en un problema de

selección de la dieta ideal. Pero un agrónomo puede definir el problema en términos

de producción de alimentos, un epidemiólogo puede hacerlo en términos de las

enfermedades que aumentan la demanda de alimentos nutritivos o que impiden su

absorción; los demógrafos tratarán de verlo en términos de una tasa de crecimiento

de la población que ha sobrepasado a la producción agrícola; los ingenieros en

términos de una inadecuada distribución y almacenamiento de alimentos; los

economistas en términos de un insuficiente poder adquisitivo o de la desigual

distribución de la tierra o la riqueza. En el campo de la desnutrición, las afinidades

profesionales y las perspectivas político-económicas determinan el modo en que

puede verse una situación problemática, y los debates sobre la mala alimentación

giran alrededor de un problema que requiere solución. Estos debates encierran

Page 64: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

54

estructuras de conflicto que no se resuelven fácilmente, si es que pueden resolverse,

por el exclusivo recurso a los datos. Aquellos que manejan estructuras de conflicto

atienden a hechos diferentes e interpretan de manera distinta los hechos en los que

reparan."

Schön propone además que para dar sentido a una situación problemática, cada

profesional echa mano del repertorio de ejemplos, imágenes, capacidades de comprensión y

acciones formado a partir de su experiencia previa. El profesional da un sentido a la situación

viéndola como7 algo ya presente en su repertorio. Este es un proceso simultaneo y ambiguo de

pensamiento y percepción que puede llevarse a cabo sin una articulación consciente. La

situación problemática se percibe como similar y diferente a una situación familiar, sin que

sea posible decir inicialmente con respecto a qué es similar o diferente. A continuación, el

profesional puede reflexionar sobre las similitudes y diferencias de forma consciente. Sin

embargo, la percepción inicial de similitud y diferencia es lógica y psicológicamente anterior

a su posterior articulación.

Todo lo anterior es aplicable tanto a los medios como a los fines. A medida que se

desarrolla el proceso de diseño, el diseñador va elaborando también de forma gradual una

intención, que no viene dada de antemano y que sirve para guiar todo el proceso de diseño. La

evolución de la intención depende de los resultados de los experimentos que el diseñador

realiza a lo largo del proceso y de su reflexión sobre los mismos.

4.3.2 Experimentos en diseño

Ver-como permite elaborar un marco y dar significado para la situación

(identificar tentativamente cuál es el problema), pero no es suficiente. Para descubrir si el

marco establecido es adecuado es necesario intentar adaptar la situación al mismo. Para

Schön estos intentos se llevan a cabo mediante la realización de experimentos que

responden básicamente a la pregunta “¿Qué pasa si...?” y pueden tomar tres formas

diferentes:

• Experimentos exploratorios (exploratory experiments), en los que la acción se

lleva a cabo sin ninguna pretensión inicial, únicamente para ver que ocurre. Se

7 Schön toma este término de la obra Philosophical Investigations de L.Wittgenstein.

Page 65: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

55

trata de una actividad de carácter "lúdico" y exploratorio que permite apreciar las

cosas. El experimento tiene éxito si lleva a descubrir la presencia de algo

sorprendente.

• Experimentos de prueba de movimientos (move-testing experiments), en los que la

acción tiene como objeto producir un determinado fin. En este caso el éxito del

experimento no se valora solamente con la respuesta afirmativa a la pregunta ¿se

ha conseguido el fin deseado?, sino a la pregunta alternativa ¿me gustan los efectos

de la acción, tomando sus consecuencias en conjunto?

• Experimentos de prueba de hipótesis (hypothesis testing experiments). Hablando

en un sentido general, cada marco o formulación del problema va acompañado de

una hipótesis sobre la situación. Para validar dicha hipótesis las acciones tienen

como objetivo cambiar la situación para que se amolde a la misma. No obstante,

las situaciones no siempre son completamente manipulables y pueden resistirse a

las acciones del diseñador, produciendo interacciones y efectos imprevistos. Este

tipo de experimentos se convierte por tanto en un “juego” con la situación.

A lo largo del proceso de experimentación las tres tareas (exploración, prueba de

movimientos y prueba de hipótesis) son llevadas a cabo por las mismas acciones: las acciones

mediante las cuales el diseñador comprueba sus hipótesis son también movimientos con los

que quiere cambiar la situación y le sirven a la vez como medio para explorarla.

El diseñador está interesado en transformar la situación de su estado actual en otra que

le parezca mejor. También está interesado en comprender la situación, pero sólo en la medida

que le facilite cambiarla más a su gusto.

A medida que se realizan experimentos, cada movimiento puede producir resultados

que haya que interpretar, problemas que es necesario resolver o nuevas oportunidades que se

puedan explotar. Después de cada experimento es necesario apreciar los resultados

producidos. Cualquier consecuencia no deseada puede conducir a un nuevo cambio en la

forma de concebir el problema. El diseñador debe ser capaz de hacer que la indagación siga

en marcha. Este esquema se ilustra en la figura 4.1.

Page 66: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

56

apreciación acción apreciación reflexión

Figura 4.1. Esquema conversacional para la reflexión-en-la-acción.

El diseñador debe aprender si su hipótesis es correcta a través de la reflexión sobre la

dificultad que encuentra para hacerla cierta. La necesidad y modo de la reflexión viene

dictada por los cambios producidos por sus movimientos, y se resumen en la tabla 4.1.

Consecuencias en relación con la intención

Consecuencias percibidas (intencionadas o no)

Reflexión

1. Sorpresa No deseables Necesaria 2. Sorpresa Deseables o neutras No necesaria 3. Sin sorpresa Deseables o neutras No necesaria 4. Sin sorpresa No deseables Necesaria

Tabla 4.1. Consecuencias de la acción.

1. El primer caso es típico para la reflexión-en-la-acción. La acción del diseñador no

produce los resultados esperados y además la teoría o hipótesis asociada

implícitamente a la acción queda refutada. El diseñador responde a la negación del

movimiento reflexionando sobre la teoría subyacente al mismo.

2. En el segundo caso tampoco se consigue el fin esperado, pero las consecuencias

globales de la acción se consideran deseables. La teoría asociada es negada, pero el

movimiento resulta afirmado. De acuerdo con la lógica de afirmación que se

utiliza normalmente en diseño, no es necesario reflexionar sobre una acción que ha

tenido éxito.

3. En el tercer caso se consigue el fin esperado y las demás consecuencias percibidas

son favorables, por lo que tampoco es necesario reflexionar sobre la acción.

4. Por último, en el cuarto caso, es necesario reflexionar sobre la teoría o hipótesis

asociada al movimiento, concretamente sobre su adecuación para la situación que

se intenta resolver.

Page 67: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

57

Es así como la percepción de los cambios producidos determinan la necesidad y forma

de la reflexión-en-la-acción.

El proceso de prueba de hipótesis termina cuando los cambios producidos por las

acciones se consideran satisfactorios en su conjunto, o cuando el descubrimiento de nuevas

características del problema da un nuevo sentido a la situación y cambian la dirección de la

indagación.

Es interesante señalar que este proceso conversacional ver-actuar-ver puede llevarse a

cabo en diversos contextos:

• En mundos virtuales, particulares de cada profesión y con los que el diseñador está

familiarizado. Por ejemplo, mediante bocetos o dibujos técnicos si se trata de un

arquitecto. La habilidad para construir y manipular estas representaciones es

fundamental para poder experimentar de forma rigurosa.

• A un nivel social, en el que el diseñador intenta comprender la visión que el cliente

u otros colegas tienen de la situación, e intenta comunicar a los demás su propia

visión.

4.3.3 Relación del profesional con la situación

La relación del profesional con la situación no es simplemente la de un

observador/manipulador, a la que aplica una técnica de su repertorio con objeto de conseguir

un fin preestablecido. Schön describe en su lugar esta relación como una transacción, en la

que el profesional da forma a la situación pero en "conversación" con ella: sus percepciones

están condicionadas por la situación, pero los fenómenos que pretende comprender también

son en cierto sentido su propia creación. El propio diseñador es parte de la situación que

pretende comprender.

El proceso en su conjunto se define como una conversación reflexiva con la situación.

El profesional no observa a distancia la situación, sino que provoca la transacción imponiendo

una visión y un orden propio sobre la misma. Al mismo tiempo que intenta amoldar la

situación a su marco o formulación, está abierto a la forma en que responde la misma. Actúa

de acuerdo a la visión y el orden que ha impuesto, pero abierto a cambiarla para dar sentido a

los fenómenos que va descubriendo.

Page 68: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

58

4.4. COMPARACIÓN DE LA RACIONALIDAD TÉCNICA Y LA

REFLEXIÓN-EN-LA-ACCIÓN

La epistemología positivista de la práctica está basada en tres divisiones

fundamentales:

• La separación de medios y fines, que permite plantear la resolución de problemas

instrumentales como un procedimiento técnico cuya eficacia puede medirse en

función de la consecución de un objetivo preestablecido.

• La separación de la investigación y la práctica profesional, que permite plantear la

práctica rigurosa como la aplicación a problemas instrumentales de teorías y

técnicas generales obtenidas a través de métodos de investigación científica.

• La separación de "el saber" de "el hacer", que permite considerar la acción como la

implementación y prueba de una decisión técnica.

La epistemología de la práctica basada en la reflexión-en-la-acción desafía estas tres

divisiones. Concretamente considera que los problemas se plantean considerando medios y

fines de forma interdependiente, que la práctica es una clase de investigación, y que la

indagación resultante es una transacción con la situación en la que "el saber" y "el hacer" son

inseparables.

Desde el punto de vista de la racionalidad técnica el énfasis principal en la formación

de profesionales es el estudio de problemas instrumentales, en los que se trata de encontrar los

medios mas adecuados para la consecución de unos fines claramente definidos (Schön, 1987,

p. 42):

"Vista así, la competencia profesional consiste en la aplicación de teorías y técnicas

derivadas de la investigación sistemática, preferiblemente científica, a la solución de

los problemas instrumentales de la práctica."

En aquellas situaciones que no se adaptan con claridad a los problemas cuya solución

técnica es conocida es necesario algún tipo de indagación. Desde la perspectiva de la

racionalidad técnica este tipo de indagación se considera guiado por un conjunto de reglas

explicables que permiten establecer conexiones claras entre las situaciones concretas y el

Page 69: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

59

conocimiento científico y técnico. Este es, como señala acertadamente (Schön, 1987), uno de

los principios sobre los que se asentaban los primeros sistemas expertos (p. 43):

"Los «sistemas expertos», hoy tan populares en la medicina hospitalaria al igual que

en otros campos, intentan hacer explícitas las fases de información, las reglas y los

procedimientos mediante los que el conocimiento profesional se aplica a casos

problemáticos singulares"

Por el contrario, desde el punto de vista de la práctica basada en la reflexión-en-la-

acción, los tipos de situaciones a las que puede enfrentarse en la práctica un profesional se

entienden de otra manera. En un extremo están aquellas situaciones en las que es posible la

aplicación rutinaria de técnicas y procedimientos. Por otra parte, en aquellas situaciones en las

que es posible establecer una conexión entre las técnicas y reglas conocidas y la situación

concreta, esta se realiza mediante una aplicación limitada de la reflexión-en-la-acción. Por

último están las situaciones más complejas de la práctica en las que los profesionales "no sólo

siguen reglas de indagación sino que, algunas veces, responden también ante resultados que

les sorprenden mediante el recurso a la invención de nuevas reglas sobre la marcha. Este tipo

de reflexión-en-la-acción es central al arte con que los profesionales algunas veces clarifican

situaciones de incertidumbre, singularidad y conflicto."

4.5. UNA TEORÍA COMPUTACIONAL DEL DISEÑO REFLEXIVO

A la luz de las consideraciones anteriores, en (Schön, 1992) se aborda la cuestión de

construir una teoría computacional sobre diseño siguiendo el esquema propuesto en (Marr,

1982) (véase la sección 2.6.4).

El primer aspecto relevante para la construcción de dicha teoría es que el

conocimiento del diseño es fundamentalmente tácito, es decir, sólo se manifiesta en la acción.

Esto tiene ya implicaciones graves al nivel simbólico (o de representación y algoritmo):

“Las representaciones procedurales, simbólicas, del conocimiento tácito de diseño

están destinadas a ser incompletas o inadecuadas con relación a los fenómenos reales

del diseño [...]”.

Page 70: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

60

(Schön, 1992) describe un conjunto de fenómenos de diseño que pueden considerarse

como “preliminares a la especificación de las clases de tareas de procesamiento de

información que se llevan a cabo al diseñar, tal como Marr las especificó para la visión.”

Así, por ejemplo, comienza analizando el proceso conversacional ver-dibujar-ver que

correspondería a la prueba de un movimiento (move experiment). A partir de dicho análisis

determina que la intención en evolución es una de las salidas del diseño. Además, establece

como finalidad para la estructura ver-actuar-ver el permitir gestionar la complejidad del

diseño:

“Cuando la gente diseña, consideran muchos dominios y muchas cualidades dentro de

cada dominio; sus movimientos producen consecuencias importantes en más de un

dominio. En casos extremos, un movimiento informado por una intención formulada

en un dominio tiene consecuencias en todos los demás. Debido a la limitada

capacidad de procesamiento de información de los humanos, estos no pueden

considerar, antes de realizar un movimiento concreto, todas las consecuencias y

cualidades que pudieran considerar relevantes para su evaluación.”

Otros fenómenos de diseño se argumentan de forma parecida, como los procesos de

formación de imágenes a partir de las marcas realizadas sobre un papel (gestalting), o la

construcción de mundos de diseño.

Formular todas estas tareas desde el punto de vista del procesamiento de información

y encontrar representaciones y algoritmos adecuados al nivel simbólico supone un desafío

muy difícil de superar. Esto es así tanto si se pretende simular el comportamiento humano

como si se pretende únicamente emularlo. Ante esta disyuntiva Schön apunta como objetivo

más asequible y prometedor para la IA la construcción de sistemas de ayuda al diseño.

Algunos ejemplos de cómo los ordenadores pueden servir de ayuda en el proceso de diseño

son:

• Producir entornos que potencien el proceso de percepción-acción-percepción.

• Crear micromundos que puedan programarse para servir de mundos de diseño,

ampliando la capacidad del diseñador para construirlos y explorarlos.

Page 71: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

61

• Proporcionar un sistema que amplie el repertorio de prototipos del diseñador, y

potencie su habilidad para explorarlos y ponerlos en transacción con situaciones de

diseño concretas.

• Crear entornos que ayuden al diseñador a descubrir su propio conocimiento de

diseño y a reflexionar sobre el mismo.

4.6. COMENTARIOS

En esta sección se resaltan básicamente dos cuestiones. En primer lugar se establece

una breve comparación de las ideas de Schön con las de Simon presentadas en el capítulo

anterior. A continuación se destacan los principales aspectos del diseño considerados por

Schön y se perfila su relación con el material presentado en los capítulos siguientes.

Los trabajos de Schön comparten con los de Simon una preocupación por la formación

universitaria para la práctica profesional, es decir, para lo que se denomina diseño. Ambos

coinciden también en que para poder enseñar a diseñar es importante comprender primero qué

es el diseño.

Cada uno de estos autores plantea soluciones distintas para caracterizar el

conocimiento práctico. Como ya se comentó en el capítulo anterior, (Simon, 1973) argumenta

que el carácter mal definido de los problemas radica en las capacidades limitadas del resolutor

de problemas, y que todos los problemas pueden considerarse, en este sentido, mal definidos.

El proceso de diseño se convierte entonces en una tarea de evocación de conocimientos que

permitan una descomposición y organización factibles para la resolución del problema. Estos

conocimientos se encuentran fundamentalmente en la Memoria a Largo Plazo del diseñador.

Para Schön, por el contrario, buena parte del conocimiento práctico es

fundamentalmente tácito, se manifiesta únicamente en la acción. No se puede describir

explícitamente de forma completa y, por tanto, no puede "extraerse" y representarse

explícitamente en un ordenador (Schön, 1992): “El diseñador no solo diseña con la mente,

sino también con el cuerpo y los sentidos, un hecho que supone un desafio interesante para los

ordenadores”.

Page 72: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

62

Este tipo de crítica, contraria a las expectativas y exageraciones que acompañaron a la

llegada de la tecnología de los primeros sistemas expertos, es común a otros autores.

(Winograd, 1990) supone un buen ejemplo en este sentido (p. 179):

“[...] no es nada evidente que el resultado de la experiencia pueda formalizarse de

forma adecuada como un repertorio de patrones discretos [...]. Para decir que «todo

el conocimiento del mundo» podría articularse explícitamente en forma simbólica

(computacional o no) debemos suponer la posibilidad de reducir todas las formas de

conocimiento tácito (habilidades, intuición, y otras parecidas) a hechos y reglas

explícitas. Heidegger y otros fenomenologistas han desafiado esta afirmación [...].”

Una crítica importante al conocimiento representado en los sistemas expertos es que

debe formularse independientemente del contexto o situación en que será utilizado. Toda

ambigüedad o matiz debe ser eliminado. Winograd resume también esta limitación de la

siguiente forma (pp. 182-183):

“Enunciado de forma sencilla, las técnicas de la inteligencia artificial son a la mente

lo que la burocracia es a la interacción social humana. [...] La despersonalización del

conocimiento en los sistemas expertos [...] tiene un paralelismo obvio con la

burocracia. [...] El «yo sólo cumplo las normas» del funcionario burócrata tiene su

analogía directa en «eso es lo que dice la base de conocimientos».”

Dos características fundamentales del diseño destacadas por Schön son su carácter

subjetivo y reflexivo. Las situaciones de diseño no son objetos externos, distantes e

independientes del diseñador, sino que éste las percibe y construye de forma subjetiva a través

de procesos de indagación. Tanto los medios a emplear como los fines a perseguir son el

resultado de apreciaciones subjetivas. La concepción de ambos resulta en un mundo de diseño

que evoluciona a través de la respuesta de la situación ante las acciones del diseñador, y de la

reflexión que esta provoca.

El diseño también es una actividad social y comunicativa, en el que cada individuo

implicado en el proceso (al menos un cliente y un diseñador) debe descifrar los mundos de

diseño de los demás.

Incluso en el caso en que la experiencia y conocimiento práctico humano pudieran

reproducirse de algún modo en el ordenador, el resultado sería una máquina capaz de percibir

las situaciones de una única forma preestablecida. (Schön, 1992) argumenta que no tiene

Page 73: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

63

sentido intentar construir sistemas que pretendan simular ni emular las capacidades humanas

de diseño. Sí parece buena idea, por el contrario, intentar construir sistemas de ayuda que

faciliten la tarea del diseñador. Esta línea de investigación, de hecho, parece haber sustituido

actualmente a cualquier pretensión de diseño automático.

Los dos capítulos que siguen a continuación pretenden dar una visión representativa de

las líneas de investigación actuales sobre IA en diseño. Los dos grupos de trabajos

presentados persiguen precisamente como objetivo la introducción del ordenador en el

proceso de diseño con objeto de ayudar a los diseñadores.

Las descripciones de los fenómenos de diseño proporcionados por (Schön, 1992)

sirven para identificar algunas tareas importantes de procesamiento de información aunque

desde una perspectiva muy cercana al diseñador humano. En el capítulo 6 se presenta una

teoría computacional que tienen por objetivo, precisamente, describir el diseño como un

proceso al nivel del conocimiento.

Page 74: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 4

64

Page 75: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

65

CAPÍTULO 5

ENFOQUES PRAGMÁTICOS

"It is unlikely that AI will provide the basis of

a theory of designing." John S. Gero, 1998

Los trabajos pioneros de Herbert Simon han influido de forma significativa en la

formación de diversas líneas y trabajos de investigación actuales sobre diseño en IA. En este

apartado se describen dos modelos del proceso de diseño que representan, en muchos

aspectos, una elaboración de estas ideas.

El primer modelo ha sido desarrollado en el Key Centre of Design Computing

(KCDC) de la Universidad de Sidney (Australia). Posiblemente se trate de uno de los grupos

de investigación más influyentes en el campo de la IA en diseño, estando codirigido

actualmente por John Gero y Mary Lou Maher. El segundo modelo ha sido desarrollado por

D. Navinchandra en el Massachusetts Institute of Technology (EE.UU.) y posteriormente en

la universidad de Carnegie Mellon (EE.UU.). Ambos modelos presentan caracterizaciones del

diseño que son complementarias en muchos sentidos o, cuando menos, compatibles. Una

característica común es que no pretenden servir como modelos cognitivos del diseño, al

contrario que los presentados hasta ahora. Su objetivo es más pragmático: simplemente

formalizar algunas ideas del proceso de modo que sirvan de base en el desarrollo de

herramientas de ayuda al diseño.

Las primeras cuatro secciones describen el primer modelo. La quinta y sexta se

dedican al segundo.

5.1. MÉTODOS DE INVESTIGACIÓN DE IA EN DISEÑO

El equipo de investigadores del KCDC ha estudiado modelos computacionales de

diseño basados en conocimiento desde los años 80, y más recientemente se dedica también al

Page 76: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

66

estudio de modelos cognitivos. En (Gero y Maher, 1997) se da una visión general de los

trabajos recientes del grupo y se propone agrupar en tres categorías los métodos de

investigación de IA en diseño:

1. Basándose en la evidencia empírica sobre la actividad de diseño humana.

2. Basándose en axiomas y sus derivaciones. Incluye representaciones lógicas de

objetos y modelos lógicos de exploración.

3. Basándose en conjeturas sobre procesos potencialmente útiles, que pueden ser de

dos tipos:

a) Conjeturas basadas en procesos observados en diseñadores humanos.

b) Conjeturas basadas en otros procesos (y que obviamente no están relacionadas

con los diseñadores humanos).

Los trabajos que se describen a continuación pertenecen a la tercera categoría. Esta

línea de investigación no pretende simular ni describir procesos cognitivos, sino emularlos

con el fin de automatizar tareas de diseño y promover un uso eficaz de los ordenadores en

el proceso de diseño (Coyne y otros, 1990, p. 37):

"Al modelar el diseño no pretendemos decir qué es el diseño o cómo los diseñadores

humanos hacen lo que hacen, sino más bien proporcionar modelos mediante los que

poder explicar y tal vez replicar algunos aspectos del comportamiento de diseño."

La afirmación de (Gero, 1998) es contundente en este sentido:

"Los procesos computacionales que sirven de apoyo al diseño no precisan

necesariamente de un fundamento teórico, y se restringen habitualmente a un

subconjunto de la totalidad de actividades del diseño humano.

Aunque la IA busca un fundamento teórico, su utilidad radica en su habilidad para

representar situaciones de diseño y procesos de diseño utilizando conceptos con

diferente rigor teórico. Estas mismas situaciones y procesos no tienen necesariamente

ningún rigor teórico."

Page 77: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

67

Por último, en (Gero, 1994b, p. 357) se hace una matización necesaria para recalcar

que la construcción de sistemas de ayuda al diseño debe apoyarse siempre en algún

formalismo explícito:

"Aunque las herramientas de diseño pueden emplearse como 'cajas negras' sin

preocupación por los conceptos subyacentes, la falta de comprensión del enfoque

formal adoptado respecto al diseño por quien desarrolló la herramienta acarrea

problemas para el usuario de la misma."

Para dar coherencia a estos trabajos el KCDC ha desarrollado un esquema o marco del

proceso de diseño que sintetiza los principales conceptos y procesos identificados en otros

modelos (fundamentalmente modelos cognitivos, de la Inteligencia Artificial, de la

investigación operativa o de la teoría de sistemas). Aunque estos modelos no pueden explicar

individualmente todos los aspectos del proceso de diseño, el esquema propuesto pretende

establecer una referencia común a todos ellos y servir de base para el desarrollo de

herramientas de diseño. La siguiente sección muestra dicho esquema. Más adelante se

presentan los componentes fundamentales de un modelo del proceso de diseño basado en

conocimiento.

5.2. UN MARCO GENERAL PARA LOS PROCESOS DE DISEÑO

En (Gero, 1990) y (Gero, 1994b) se describe un marco o representación de la

estructura del proceso de diseño que pretende incorporar diversos conceptos procedentes de

otros modelos como: la distinción entre función, comportamiento y estructura; la noción de

que el diseño implica búsqueda en un espacio de estados; o la noción de que dicho espacio

puede modificarse a lo largo del proceso.

Concretamente, el proceso de diseño se caracteriza de la siguiente forma:

• Es una actividad intencional, orientada a algún propósito, aunque determinar las

metas del diseño es un objetivo del proceso.

• Es una actividad restringida por las condiciones naturales y sociales del entorno en

que deberá operar el artefacto diseñado.

Page 78: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

68

• Implica la toma de decisiones, y por tanto la búsqueda en un espacio de decisiones.

Determinar el espacio de decisiones también es parte del proceso, lo que implica

exploración. Una de las nociones más importantes que ha introducido la IA en los

estudios sobre diseño es la de espacio de diseño. (Gero, 1994b) describe este

espacio como "el espacio de diseños posibles para una articulación concreta de la

formulación de un diseño". Este espacio puede subdividirse a su vez en tres

subespacios o abstracciones: el espacio de la estructura, S (denominado con

frecuencia espacio de decisión); el espacio del comportamiento, B (de los objetivos

o criterios a cumplir) y el espacio de la función, F (que define la teleología del

artefacto, es decir, la función es una interpretación del comportamiento en un

contexto determinado).

• Implica aprendizaje de las características emergentes a lo largo del proceso.

• Es una actividad situada, es decir, se realiza en un contexto cambiante que, en

cierto sentido, está definido por lo que el diseñador percibe. Estas percepciones

cambian a lo largo del proceso, lo que supone un cambio del contexto.

Los conceptos de función (F), estructura (S) y comportamiento (B) son especialmente

útiles para articular una descripción de este proceso. En primer lugar, el objetivo del proceso

se concibe como "transformar una función F (donde F es un conjunto) en una descripción de

diseño D de modo que el artefacto descrito sea capaz de producir dichas funciones".

La descripción D de un artefacto consiste en una representación de su estructura S, es

decir, de sus elementos y las relaciones entre los mismos. La transformación S → D se realiza

normalmente empleando herramientas de dibujo tradicionales o asistidas por ordenador, y

corresponde al proceso de documentación del diseño.

La complejidad del diseño radica en que rara vez existe una transformación directa

F → S salvo en casos sencillos que no suelen considerarse como diseño (p.ej., la consulta de

catálogos). La transformación debe realizarse por tanto a través de medios indirectos,

concretamente a través del espacio de los comportamientos (ver figura 5.1). Para dar cuenta

de esta transformación se describen diversos procesos (ver figura 5.2 y figura 5.3):

• Formulación o especificación (F → Be). La función F, que representa los objetivos

del diseñador se trasforma en un comportamiento esperado (Be). Por ejemplo, en

Page 79: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

69

el caso del diseño de una ventana, la función de "controlar la ventilación" se puede

formular en términos de una determinada "tasa de ventilación".

• Análisis (S → Bs). A partir de una estructura determinada se obtiene su

comportamiento (Bs). Por ejemplo, la "tasa de ventilación" de una determinada

ventana puede calcularse a partir de sus dimensiones.

• Evaluación (Be ↔ Bs). El comportamiento de la estructura se compara con el

comportamiento esperado para ver si la estructura es adecuada.

• Síntesis (Be → S(Bs)). Los comportamientos esperados se utilizan para la

selección y combinación de una estructura. Éste es, por lo general, un proceso

basado en conocimiento.

• Reformulación. Corresponde a un cambio en el comportamiento esperado, y por

extensión, de la función F. Puede originarse por dos motivos:

- La estructura produce comportamientos adicionales no previstos.

- La comparación entre el comportamiento de la estructura y el esperado no es

satisfactoria, ni pueden reconciliarse ambos comportamientos manipulando la

estructura.

Fb

Fa Bi Sp

Bj Sq

Figura 5.1. Los tres subespacios de función, F, comportamiento, B, y estructura, S, que

conforman el espacio de estados del diseño (adaptado de (Gero, 1994a)).

Page 80: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

70

F

Be

S

Bs

D F : Conjunto de funcionesBe : Conjunto de comportamientos esperadosBs : Conjunto de comportamientos realesS : EstructuraD : Descripción del diseño→ : Transformación↔ : Comparación

Figura 5.2. Un modelo del diseño como proceso (adaptado de (Gero, 1990)).

F

Be

S

Bs

D

(a) Formulación

F

Be

S

Bs

D

(b) Síntesis

F

Be

S

Bs

D

(c) Análisis

F

Be

S

Bs

D

(d) Evaluación

F

Be

S

Bs

D

(e) Reformulación

F

Be

S

Bs

D

(f) Documentación del diseño

Figura 5.3. Actividades en diseño (adaptado de (Gero, 1990)). La hipótesis es que un modelo de diseño basado en conocimiento puede dar cuenta de

todos los aspectos mencionados. En las siguientes secciones se presentan aspectos básicos de

este modelo. En primer lugar se muestra un formalismo adecuado para la representación del

conocimiento de diseño. Este formalismo permite a su vez caracterizar tres clases de diseño:

rutinario, innovador y creativo. Por último se describen algunas formalizaciones de procesos

de exploración que permiten realizar diseño no rutinario.

Page 81: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

71

5.3. REPRESENTACIÓN DEL CONOCIMIENTO DE DISEÑO:

PROTOTIPOS

El proceso de diseño se concibe como un proceso basado en conocimiento, y dicho

conocimiento se describe como aquél que define espacios de diseño. Estos espacios, sin

embargo, no vienen dados normalmente a priori. Cabe entonces realizar las siguientes

preguntas: ¿Cómo es posible que los diseñadores comiencen a diseñar con información

incompleta y antes de que toda la información relevante esté disponible? ¿De donde

provienen las estructuras? ¿Cómo aparecen funciones adicionales a lo largo del proceso?

¿Cómo sabe un diseñador qué comportamientos debe analizar?

Una respuesta posible es que el diseñador aporta a la tarea el conocimiento de sus

experiencias anteriores. El diseño no es por tanto un simple proceso de computación, sino que

además implica razonar con conocimiento.

Para caracterizar en términos computacionales cómo puede representarse y emplearse

el conocimiento de espacios de diseño se propone el concepto de prototipo (Oxman y Gero,

1988), (Gero y otros, 1988), (Coyne y otros, 1990), (Gero, 1990). Básicamente un prototipo

es un esquema para la representación de conocimiento generalizado de diseño, i.e. los

prototipos se forman a partir de la generalización de un conjunto de experiencias individuales

(Gero y otros, 1988):

"[...] la experiencia de diseño se generaliza de modo que permita su representación al

nivel conceptual en forma de una clase a partir de la cual pueden crearse instancias

para hacer frente a la situación única de un diseño concreto. Clase e instancia toman

aquí el significado del paradigma de la programación orientada a objetos."

En definitiva, un prototipo define un espacio de estados a partir del cual puede

producirse la descripción de un diseño. Formalmente un prototipo (P) se describe como

(Coyne y otros, 1990):

P = (Dp, V, Ki, Ks, I)

donde,

Page 82: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

72

• Dp es una noción de la descripción del diseño a producir, tal vez en forma

parametrizada, o tal vez en la forma de un generador de descripciones

parametrizadas.

• V es un vocabulario, o conjunto de elementos, de los diseños representados por el

prototipo.

• Ki es el conocimiento necesario para la interpretación de diseños.

• Ks es el conocimiento sintáctico para la generación de diseños.

• I es el conjunto de interpretaciones o requisitos asociados al prototipo.

En general la forma del conocimiento dependerá de cada caso concreto. Una de las

ideas que hay tras el concepto de prototipo es que sea independiente de cualquier forma de

razonamiento, al contrario que ocurre con otras representaciones del conocimiento (como

reglas o scripts). En (Gero y otros, 1988) y (Oxman y Gero, 1988) se describen dos ejemplos

distintos de prototipos en los que la producción de diseños se realiza a partir de conocimiento

interpretativo y generativo respectivamente.

Los prototipos descritos en (Gero y otros, 1988) proceden del dominio del diseño de

estructuras, y en ellos la descripción del diseño está parametrizada, es decir, viene dada a

partir de un conjunto de variables. Por ejemplo, la tabla 5.1 muestra parcialmente el prototipo

correspondiente a una viga. La descripción se divide en tres grupos de variables: definición,

entorno y rendimiento. Las variables de definición conforman la descripción del diseño, las de

rendimiento representan los objetivos y restricciones a cumplir, y finalmente, las del entorno

representan influencias externas al diseño, y sus valores vienen normalmente dados como

requisitos o se calculan a partir de códigos y estándares. El conocimiento procedural asociado

a las variables de definición (métodos) permite calcular valores para las mismas y el asociado

a las variables de rendimiento permite analizar si la estructura generada es satisfactoria

(Oxman y Gero, 1998):

"En las situaciones donde la descripción del diseño está parametrizada, ésta se

presenta como un conjunto de variables relacionadas, cuyos valores definen un

diseño. La función del conocimiento es producir dichos valores a partir de los

objetivos, donde I proporciona los objetivos y V los elementos sobre los que puede

Page 83: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

73

operar K. En términos de la teoría de sistemas, [Dp] hace las veces del modelo del

sistema que se pretende diseñar y define las variables de decisión, y I define los

objetivos e, implícitamente, las variables de rendimiento. V define las variables del

sistema que contienen a todas las variables de decisión, y K es un conjunto de

procesos o métodos que establecen una relación entre las variables de decisión y las

de rendimiento."

En (Oxman y Gero, 1998) se describen prototipos para el diseño arquitectónico de

casas adosadas. Estos prototipos se denominan generativos porque en ellos la descripción del

diseño viene dada en forma de un generador de descripciones de diseño, concretamente

mediante gramáticas de formas. Adicionalmente se incluye algún tipo de conocimiento de

control para garantizar que las formas generadas intentarán satisfacer los objetivos del diseño.

La figura 5.4 y la figura 5.5 muestran gráficamente algunas de estas gramáticas,

concretamente para la ubicación de las escaleras y la cocina respectivamente.

PROTOTIPO DE VIGA

Variables de definición • material: - rango: acero, hormigón.

- método: SI es parte de un marco o estructura (truss) ENTONCES mismo material que el marco o estructura.

• envergadura: - rango: 10 - 100 pies. • sección-transversal: - rango: SI acero ENTONCES | o caja.

SI hormigón ENTONCES T o rectángulo - método: F(material, carga, forma). Variables del entorno • cargas-distribuidas-transversalmente:

- rango: 1 -10 kps/pie • cargas-distribuidas-longitudinalmente: ... • momentos: ... Variables de rendimiento • peso: - método: material.peso-unidad × longitud. • max-tensión: - rango: < material.max-tensión.

- método: F(cargas, envergadura, sección-transversal). • Max-deflexión: - rango: < envergadura / 300

- método: F(cargas, envergadura, sección-transversal).

Tabla 5.1. Prototipo de viga (adaptado de (Gero y otros, 1988)).

Page 84: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

74

Figura 5.4. Descripciones de diseño generativas en forma gráfica para las escaleras (Oxman y Gero,

1988).

.

Figura 5.5. Descripciones de diseño generativas en forma gráfica para la cocina (Oxman y Gero,1988).

(Coyne y otros, 1990) proporciona una descripción extensa y detallada de los tipos de

conocimiento interpretativo y generativo que pueden emplearse en la definición de espacios

de diseño.

Es importante señalar que el concepto de prototipo aparece de nuevo, revisado y

actualizado, en (Gero, 1990). La diferencia principal consiste en separar dentro del prototipo

la información relativa a la estructura, el comportamiento y la función, de acuerdo con el

esquema presentado en la sección anterior. En el ejemplo de la viga presentado anteriormente

las variables de definición pueden asimilarse a la estructura, mientras que las de rendimiento

y entorno pueden asimilarse al comportamiento. El énfasis está, por tanto, en señalar la

importancia de la función en el proceso de diseño. Se trata de un elemento más a tener en

cuenta, que puede evolucionar a lo largo del proceso, y que además puede formularse usando

distintos conjuntos de comportamientos (Gero, 1990):

"Aunque existe un amplio consenso en que no hay función en la estructura ni

estructura en la función, la experiencia de diseño humana produce una conexión entre

Page 85: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

75

función y estructura. Una vez que se ha aprendido esta conexión es difícil de olvidar.

Una vez establecida la conexión entre comportamiento y estructura, y entre

comportamiento y función, estas forman la base de gran parte del conocimiento de un

diseñador. [...] si debe producirse razonamiento para transformar la función en

estructura, entonces debe realizarse una separación clara entre ambos conceptos, y

entre función, estructura y comportamiento."

5.3.1 Diseño rutinario, innovador y creativo

El concepto de prototipo permite distinguir entre diversas clases de diseño en función

de la forma en que se manipula el espacio de diseño asociado. Los conceptos de diseño

rutinario, innovador y creativo pueden ponerse en correspondencia con distintas operaciones

sobre prototipos, concretamente con operaciones de refinado, adaptación y generación

respectivamente:

• Refinado: Consiste en trabajar dentro de los límites de los espacios definidos en el

prototipo. (Gero y otros, 1988) describe este proceso de la siguiente forma:

"En este caso el prototipo se instancia a partir de su clase y se considera

adecuado, así que sólo se buscan los valores para las variables de la

descripción de diseño parametrizada, o el generador de descripciones de

diseño, dentro de los límites definidos para su existencia. Estos valores

producen las interpretaciones necesarias.

[ D = τ(P, I) ]

Si las variables de decisión contenidas en la descripción de diseño son

solamente numéricas, entonces pueden emplearse métodos de optimización,

suponiendo que las interpretaciones necesarias pueden expresarse

numéricamente. Si los valores son simbólicos son necesarios otros enfoques."

(Coyne y otros, 1990, p. 81) proporciona un ejemplo basado en el diseño

de un automóvil. El conocimiento empleado para realizar ciertas interpretaciones

(como atractivo para las masas, sencillez, bajo coste o facilidad de producción)

pueden utilizarse para seleccionar un prototipo adecuado. Para diseñar un coche

atractivo para las masas puede emplearse el prototipo "Volkswagen". El refinado

Page 86: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

76

del prototipo puede llevarse a cabo seleccionando otras opciones disponibles,

como el color de la pintura o los accesorios basándose en objetivos secundarios.

• Adaptación: Este proceso corresponde a una modificación del espacio de diseño

definido por el prototipo. Si en algún momento un diseñador recupera un prototipo

y descubre que no es satisfactorio en algún aspecto, puede intentar adaptarlo a sus

necesidades. Esta modificación puede afectar a cualquiera de los elementos que

definen el prototipo.

Volviendo al ejemplo del diseño de un coche, puede que un determinado

prototipo no sea adecuado para una familia porque no es posible ajustar una silla

para niños en el asiento trasero. En este caso puede intentarse una transformación

del vocabulario o de la sintaxis del prototipo empleando el conocimiento

adecuado.

• Creación: Consistiría en la construcción de prototipos totalmente nuevos. Es

cuestionable el hecho de que la creación de prototipos realmente nuevos se llegue

a producir en la práctica. Es razonable suponer que en su lugar se trate de una

adaptación de una magnitud suficiente o de un proceso continuado de adaptación.

La adaptación y creación de prototipos recibe el nombre común de diseño no rutinario.

5.4. PROCESOS FORMALES PARA DISEÑO NO RUTINARIO

El concepto de diseño rutinario está asociado a las nociones de resolución de

problemas o problema bien definido. La búsqueda es, por tanto, un proceso que permite

localizar la solución adecuada dado un objetivo y un espacio de diseño.

El diseño no rutinario se ocupa por el contrario de la creación o modificación de

espacios de diseño. Estos espacios nuevos o modificados se obtienen a partir de otros ya

existentes a través de procesos que se califican genéricamente como exploración.8

8 En el contexto de la teoría del Diseño como Exploración, descrita más adelante, el término 'exploración' recibe un significado diferente. (Smithers, 1994a) presenta una aclaración en este sentido.

Page 87: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

77

La modificación de un espacio de diseño puede afectar, en principio, tanto al

subespacio de la función como al del comportamiento o al de la estructura, aunque "por lo

general, el espacio alterado suele ser el de la estructura" (Gero, 1994a, p. 318).

(Gero, 1994a, pp. 319-320) propone la siguiente relación entre los procesos de

búsqueda y exploración en diseño:

"la exploración precede a la búsqueda y, de hecho, convierte una formulación del

problema de diseño en otra [...] Parte del diseño implica determinar para qué se

diseña (función o teleología), determinar como medir la satisfacción

(comportamiento), y determinar qué puede emplearse en el artefacto final

(estructura). La exploración es el proceso que apoya estas determinaciones del

diseño. Una vez tomadas estas decisiones mediante exploración, la búsqueda toma el

relevo."

Más adelante se describe la posibilidad de considerar la exploración como una meta-

búsqueda (p. 335):

"En algún sentido [...] la exploración puede concebirse como una meta-búsqueda

porque, en términos computacionales todos los espacios de estados que pudieran ser

generados por un conjunto de procesos de exploración está determinado a priori por

el espacio de estados inicial y dichos procesos."

A continuación se describen dos procesos computacionales de exploración:

emergencia y combinación evolutiva. El primero está inspirado en un proceso observado en

diseñadores humanos, el segundo es una conjetura que no tiene ninguna base cognitiva.

5.4.1 Emergencia

El proceso de emergencia descrito en (Gero, 1994a) se basa en el concepto kantiano de

esquema, entendido como una abstracción conceptual de entidades. Los ejemplos propuestos

para ilustrar el concepto de emergencia se basan en la representación visual de estructuras,

aunque podrían extrapolarse a otros campos. La figura 5.6 muestra cómo una forma visual (en

este caso un rectángulo con una cuña) repetida y organizada adecuadamente permite ver,

cognitivamente, nuevas formas visuales. En este caso aparece una estrella de seis puntas, o tal

vez dos triángulos equiláteros superpuestos.

Page 88: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

78

(a) (b)

Figura 5.6 (a) Una forma visual. (b) Combinando adecuadamente tres copias de la forma anterioremergen nuevas formas visuales (figura tomada del servidor web del KCDK).

La emergencia visual permite:

• Encontrar nuevas instancias de un esquema que ya se está considerando, como en

la figura 5.7, donde el triángulo T3 emerge tras la superposición de los triángulos

T1 y T2.

• Identificar nuevos esquemas que no se estaban considerando en la representación

original. Por ejemplo en la figura 5.6 ya comentada, donde se consideraba un

rectángulo con cuña y ahora aparecen triángulos y/o estrellas.

Lo importante es que a partir de las nuevas formas se ha construido un nuevo espacio

de diseño que afecta a la forma de considerar el problema. Concretamente, los ejemplos

presentados suponen una modificación del subespacio de estructuras, al incorporar nuevos

materiales al diseño (Gero, 1994a, p. 321):

"La emergencia permite que surjan nuevas perspectivas de situaciones existentes y se

convierte así en un modo de cambiar la dirección o el centro de atención del diseño."

(Gero y Damski, 1994) elaboran estas ideas y describen un modelo para la

emergencia de objetos en representaciones tridimensionales. (Poon y Maher, 1996) amplían el

concepto de emergencia al subespacio de comportamientos.

T3

T2T1

Figura 5. 7. Al dibujar los triángulos T1 y T2 emerge el triángulo T3 (adaptado de (Gero, 1994a))

Page 89: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

79

5.4.2 Combinación evolutiva

La idea en este caso es que los procesos de combinación evolutiva que se utilizan

normalmente en algoritmos genéticos pueden servir para realizar exploración en diseño.

Concretamente se propone utilizarlos para modificar espacios de diseño definidos mediante

gramáticas de formas. Esta conjetura no tiene ninguna base cognitiva.

Los algoritmos genéticos se basan en realizar iterativamente una secuencia de

operaciones sobre una población de "organismos". En primer lugar se aplica una serie de

operadores a la población. El resultado es una nueva generación de organismos modificados.

Después de ser generada, la nueva generación se somete a un proceso de "selección natural",

y sólo los organismos más prometedores son seleccionados para una nueva iteración. El

proceso continúa hasta que una generación es considerada satisfactoria o se alcanza un límite

de iteraciones preestablecido.

Los organismos se representan normalmente mediante cadenas de dígitos o símbolos.

Los operadores más comunes son:

• La mutación, que se aplica con muy baja probabilidad, y que corresponde a una

alteración aleatoria de un elemento de la cadena.

• La recombinación (crossover), que se aplica con mayor probabilidad. Esta

operación imita una reproducción sexual, y en ella se selecciona un par de

organismos, un punto de corte en las cadenas, y se obtiene un nuevo organismo

uniendo dos trozos de cada cadena (ver figura 5.8).

Una gramática de formas es un modelo para la generación de formas de manera

análoga a la generación de frases en una gramática convencional. Cada regla de la gramática

permite sustituir una forma por otra o por un conjunto de ellas. Las gramáticas de formas son

un método común para representar espacios de diseño en arquitectura.

Page 90: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

80

Organismo A Organismo B

Nuevo organismo Figura 5.8. La recombinación de los organismos A y B produce un nuevo organismo. La elección de

diferentes puntos de corte puede dar lugar a diferentes reglas de descendencia.

Si codificamos una gramática de modo que pueda ser manipulada por un algoritmo

genético, entonces podrán generarse nuevas gramáticas, es decir, nuevos espacios de diseño.

La figura 5.9 es un ejemplo de como las reglas de una gramática pueden recombinarse para

producir nuevas reglas.

(Schnier y Gero, 1996) elaboran esta idea y describen cómo las técnicas de algoritmos

genéticos pueden utilizarse para generar gramáticas de diseño a partir de ejemplos.

Regla A

Nueva regla

A A B B B C

A B C

Regla B

Figura 5.9. Generación de nuevas reglas para una gramática mediante recombinación (adaptado de

(Gero, 1994a)). El "punto negro" conque se etiquetan algunas figuras indica que estas puedenutilizarse para unificar con la parte izquierda de una regla.

5.5. UN MODELO COMPUTACIONAL PARA EL DISEÑO

INNOVADOR

En (Navinchandra, 1990) y (Navinchandra, 1991) encontramos otro modelo del diseño

innovador que aborda muchos de los aspectos considerados en los trabajos anteriores:

caracterización del diseño rutinario y no rutinario, representación del conocimiento y

descripción de procesos computacionales de diseño. Existen sin embargo diferencias

Page 91: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

81

importantes respecto a otros trabajos en la forma de caracterizar un diseño como "innovador"

o "no rutinario".

El objetivo de estos trabajos es la búsqueda de un modelo computacional del proceso

de diseño que permita construir herramientas de ayuda a los diseñadores (Navinchandra,

1991, p. 3):

"[...] no es nuestro objetivo desarrollar modelos cognitivos del pensamiento humano,

sino construir herramientas informáticas prácticas que muestren algunas

características de los enfoques humanos hacia el diseño innovador. No afirmo que

nuestros programas informáticos reflejen lo que ocurre en la cabeza de un diseñador;

sólo intentamos que el ordenador produzca resultados que parezcan innovadores a un

observador."

5.5.1 La innovación como noción relativa

Antes de sentar las bases de un modelo computacional sobre diseño innovador es

necesario dar una caracterización operativa del mismo. La definición de Navinchandra es

diferente en muchos aspectos de la sencilla propuesta de (Gero, 1990) y (Coyne y otros, 1990)

y se resume en la siguiente afirmación (Navinchandra, 1991, p. 3):

"Simplemente, algo es innovador si resuelve un problema nuevo o conocido de un

modo diferente a otros diseños conocidos. La clave para la innovación, en mi opinión,

es ser diferente."

Para distinguir un diseño rutinario de uno innovador es necesario elaborar esta idea

dando una definición, aunque sea incompleta, de cómo medir lo "diferente" que es algo.

Al contrario que otros autores, Navinchandra sostiene que no tiene sentido dar

definiciones absolutas para identificar un diseño como innovador. La percepción de un

artefacto como innovador no se debería a una propiedad inherente al mismo, sino que es una

apreciación subjetiva del observador. Un mismo diseño podrá parecer innovador o no

simultáneamente a varios observadores (Navinchandra, 1990, p. 4):

"Considérese la siguiente situación: un ingeniero de caminos adquiere un robot y lo

programa para poner ladrillos. El proyecto será considerado por los ingenieros de

caminos como una idea muy innovadora. Los investigadores en robótica, sin embargo,

Page 92: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

82

considerarán el proyecto como «una aplicación más». El motivo es que un robot para

poner ladrillos no es más que un brazo robot estándar programado para realizar una

nueva tarea."

Cualquier caracterización del diseño innovador deberá ser relativa al observador. Para

ello se propone el concepto de cultura de diseño. Una cultura de diseño viene definida por las

técnicas, estilos, usos y costumbres comunes a un colectivo dado de personas9. Cada

observador puede participar de una o varias culturas, y cada cultura tiene su forma de percibir

un diseño como rutinario o innovador. La clave para ser innovador es ser "diferente" respecto

a lo habitual en una cultura dada. Ahora bien, esta diferencia puede venir dada, al menos,

respecto a tres dimensiones: la especificación inicial, el proceso de diseño y el artefacto

producido finalmente (véase la tabla 5.2). Al ser la innovación una cuestión subjetiva, no

puede existir una división objetiva entre diseño rutinario e innovador, sino un continuo que va

de lo meramente rutinario a lo innovador.

La palabra "diferente", tal como se usa en la tabla 5.2, denota que las ideas presentes

en la especificación, proceso o producto se apartan de las normas de la cultura de diseño

considerada, pero ¿cuán diferente es una idea? y ¿de dónde provienen esas ideas "diferentes"?

Navinchandra propone que una fuente de innovación es la capacidad de razonar a

partir de experiencias previas o "precedentes" tomados de otras culturas de diseño, lo que se

conoce en IA como "razonamiento por analogía" (Navinchandra, 1991, p. 7-8):

"Si un diseñador busca nuevas ideas más allá del conocimiento que emplea

normalmente al diseñar, su producto parecerá diferente. Cuanto más lejos busque,

más diferente o novedoso parecerá su diseño. La razón de este fenómeno es que, para

una cultura dada, algunas culturas (o dominios) se consideran relacionadas, mientras

que otras se consideran lejanas y con poca relación. Cuando se transfieren ideas

entre culturas no relacionadas las soluciones de diseño parecen diferentes, y tal vez

novedosas. El nivel de relación o falta de relación entre culturas está determinado

socialmente y fluye constantemente."

9 Navinchandra intenta aclarar este concepto con la siguiente frase: "it's their weltanschauungen", que puede traducirse aproximadamente del inglés/alemán por: "es su concepción del mundo".

Page 93: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

83

Especif. Proceso Artefacto Ejemplo M M M Diseño rutinario (diseño de una viga). D M M Donde la aplicación es nueva pero la solución es

bastante corriente (p.ej., automatización de la oficina de una iglesia).

M D M Una técnica nueva y rápida para diseño de vigas. M M D No es posible. D D M Parecido a DMM, solo que esta vez una nueva

técnica nos lleva a la misma solución corriente. M D D Un nuevo método para resolver un problema

antiguo. P. ej. usar chips VLSI para controlar una tostadora.

D M D Una especificación diferente se somete a un proceso corriente para producir un nuevo artefacto. P. ej. diseñar un circuito antes desconocido usando técnicas conocidas.

D D D Una auténtica situación de diseño no rutinario. Leyenda: M: Mundano o corriente (diseño intra-cultural). D: Diferente del estado imperante en la cultura de diseño.

Tabla 5.2. Tipos de diseño (adaptado de (Navinchandra, 1991, p. 6)).

Para medir de alguna manera en un ordenador la "novedad" de las ideas transferidas de

un dominio o cultura a otra Navinchandra propone el uso de jerarquías de dominios como la

de la figura 5.10. Las líneas discontinuas muestran interconexiones entre dominios. Cuantos

más arcos sea necesario atravesar para ir de un dominio a otro, mayor será la "diferencia"

entre ellos. Naturalmente, cuanto más lejanas sean conceptualmente las ideas trasladadas a

otro dominio, mayor será la probabilidad de que fallen, pero si tienen éxito también será

mayor la probabilidad de que el resultado sea innovador.

Además de esta original caracterización, Navinchandra identifica en el proceso de

diseño no rutinario ciertas características que, en general, coinciden con las presentadas por

otros autores:

• No se dispone de antemano de una estructura prefijada para el diseño.

Page 94: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

84

Dominio Raíz

Ciencia Ingeniería Humanidades

Química

Orgánica

Física

Nuclear De EstadoSólido

Informática

Algoritmos IA

Biología

Celular Botánica

Química

Caminos Nuclear

Mecánica

Robótica Materiales

EstructuralConstrucción

Sociología

Psicología

Económicas

Figura 5. 10. Una jerarquía de dominios (adaptado de (Navinchandra, 1991, p. 8)).

• Pueden existir múltiples criterios (restricciones y/o objetivos) en conflicto. A lo

largo del proceso pueden aparecer criterios nuevos y otros pueden ser

abandonados. Los compromisos entre los diversos objetivos deben establecerse

dinámicamente en cada situación.

• A veces el diseño innovador surge de la exploración caprichosa de nuevas

alternativas. Otras veces, sin embargo, el diseñador no puede encontrar solución al

problema y debe modificarlo utilizando ideas de experiencias previas, de su

"Memoria a Largo Plazo".

5.5.2 Bases para un modelo del diseño innovador

Partiendo de las ideas anteriores, (Navinchandra, 1991) analiza la hipótesis de que una

herramienta capaz de explorar alternativas y de adaptar diseños con fallos puede ayudar a los

diseñadores a ser más innovadores. Esta hipótesis se basa en tres propuestas:

1. Algunos problemas útiles de diseño pueden modelarse como problemas de

etiquetado (satisfacción de restricciones), es decir, mediante búsqueda en un

espacio de estados.

Page 95: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

85

2. La clave para la innovación es ser diferente, aunque no todos los diseños diferentes

resultan innovadores. La capacidad de un sistema para innovar está en función de

su capacidad para explorar, es decir, de generar una gran diversidad de alternativas

que se aparten de las normas y restricciones existentes, y que, por tanto, se

encuentren fuera del espacio de soluciones original. Un buen algoritmo de

exploración es suficiente para desarrollar un sistema de diseño innovador.

3. La percepción de algo como diferente es subjetiva a un observador. Una fuente de

innovación es la capacidad de razonar por analogía, es decir, aprovechar

conocimiento de experiencias previas que en principio no tengan relación directa

con el problema que se intenta resolver. Concretamente, sobre la base de estas

experiencias previas se puede:

a) Recordar algún criterio nuevo (restricción u objetivo) que se consideró

importante en una situación similar. Este fenómeno se denomina emergencia

de criterios.

b) Sugerir una forma nueva de resolver un problema en un diseño a partir de la

estrategia empleada en otra situación similar.

Todas estas ideas se han probado e implementado en una arquitectura denominada

CYCLOPS (Criteria Yielding, Consistent Labeling, Optimization and Precedents-based

System - Sistema basado en precedentes, optimización, etiquetado consistente y producción

de criterios).

5.6. VISIÓN GENERAL DEL SISTEMA CYCLOPS

(Navinchandra, 1991) da una descripción del sistema CYCLOPS lo bastante detallada

como para realizar una reconstrucción del mismo. A continuación se da una breve descripción

de sus principales componentes.

5.6.1 Espacios de diseño

CYCLOPS resuelve problemas de optimización y etiquetado consistente. Un problema

de etiquetado consistente o satisfacción de restricciones (CLP = Consistent Labeling Problem)

viene definido por:

Page 96: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

86

• Un conjunto finito de variables.

• Un dominio, o conjunto finito de valores posibles, para cada variable.

• Un conjunto finito de restricciones sobre los valores compatibles para ciertos

subconjuntos de variables.

La solución al problema es una o todas las asignaciones de valores válidos a variables

de modo que se cumplan todas las restricciones.

Según Navinchandra muchos problemas de diseño pueden adaptarse a este

formalismo. Un CLP puede considerarse por tanto como la descripción de un espacio de

diseño. Las soluciones a un problema de etiquetado pueden calcularse fácilmente utilizando

un algoritmo de búsqueda.

Por ejemplo, considérese el siguiente problema de ordenación urbana. Se dispone de

ocho parcelas de terreno en las que se deben ubicar cinco servicios: una zona recreativa, un

complejo de apartamentos, un grupo de 50 viviendas unifamiliares, un gran vertedero y un

cementerio (ver figura 5.11). La asignación de parcelas a cada servicio debe cumplir con los

siguientes criterios:

autopista

alta tensión

N

lago

Figura 5.11. Localización de parcelas para un problema de ordenación urbana (adaptado de

(Navinchandra, 1991)).

Page 97: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

87

1. El cementerio y el vertedero no deben ser visibles desde las viviendas ni los

apartamentos.

2. El área recreativa debería estar próxima a algún lago o estanque.

3. Los terrenos con fuertes pendientes deben evitarse para los edificios.

4. Los terrenos con suelo en malas condiciones deben evitarse para los servicios que

impliquen construcción.

5. La autopista debe evitarse al situar las viviendas, los apartamentos y la zona

recreativa.

En este problema las variables corresponden a los cinco servicios (zona-recreativa,

apartamentos, viviendas, vertedero, cementerio) y sus dominios son subconjuntos del

conjunto de cinco parcelas definidos por los criterios 2, 3, 4 y 5 (restricciones unarias). El

criterio 1 representa un conjunto de restricciones binarias, concretamente entre las variables

‘cementerio’ y ‘apartamentos’; ‘cementerio’ y ‘viviendas’; ‘vertedero’ y ‘apartamentos’; y

‘vertedero’ y ‘viviendas’.

Si se establecen preferencias entre las posibles soluciones de un CLP mediante uno o

más objetivos, entonces se obtiene un problema de optimización y etiquetado consistente

(CLOP = Consistent Labeling and Optimization Problem).

Algunos ejemplos de objetivos para el anterior problema de ordenación urbana pueden

ser:

1. Minimizar la suma del coste de compra de las parcelas (suponiendo que cada una

puede tener un coste diferente).

2. Minimizar la suma de los excesos en niveles de ruido recomendados (suponiendo

que cada parcela tiene un nivel de ruido determinado, y que para cada servicio hay

un nivel de ruido recomendable).

Cuando sólo existe un objetivo y la función de coste es aditiva, estos problemas

pueden resolverse empleando algoritmos de búsqueda primero el mejor, como el algoritmo de

Page 98: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

88

Dijkstra o el algoritmo A*. Para el caso multiobjetivo, Navinchandra propone, entre otras, una

generalización del algoritmo A* denominada PO-A* (Pareto-Optimal A*)10.

5.6.2 Relajación de Restricciones y Exploración de Alternativas

La formulación de un problema como un CLOP y el uso de un algoritmo de búsqueda

para resolverlo equivalen a un proceso de diseño rutinario.

Para ser innovador es necesario considerar alternativas fuera del espacio de diseño

definido por las restricciones del problema. Una forma es relajar dichas restricciones. Por

ejemplo, supongamos que en el problema de ordenación urbana descrito anteriormente se

relaja la restricción de no construir en parcelas con fuerte pendiente. Esto modifica los

dominios de varias variables, con lo que se abre la posibilidad de encontrar nuevas

alternativas, tal vez con mejor valor para algún objetivo.

Para automatizar el proceso de relajación de restricciones Navinchandra propone

reformular cada restricción como un objetivo. Por ejemplo, consideremos un problema de

construcción de viviendas con un objetivo de minimización de costes y la restricción de que

“las casas deben orientarse al sur”. Si la restricción se reemplaza por el objetivo de

“minimizar la desviación de las casas de la orientación sur”, entonces podrían obtenerse

nuevas soluciones que representen compromisos entre el coste y la orientación (tal vez

desviándose un poco de la orientación sur pueden entrar en consideración otras parcelas y se

mejora el coste). De este modo relajación de restricciones y optimización de objetivos se

presentan como dos caras de la misma moneda. Navinchandra utiliza el término criterio para

referirse tanto a los objetivos originales como a las restricciones reformuladas.

La figura 5.12 muestra el espacio de alternativas de un problema (denominadas A, B,

C, D). Las preferencias establecidas respecto a la minimización de dos objetivos señalan que

A, B y C son las mejores opciones (son los óptimos de Pareto11). Tras relajar alguna

restricción pueden aparecer alternativas nuevas que compitan con las anteriores y tal vez las

10Este algoritmo puede considerarse como una versión para búsqueda en árbol del algoritmo MO-A* (MultiObjective-A*), propuesto independientemente en (Stewart y White, 1991) y descrito en el capítulo 9.

11Una solución a un problema multiobjetivo se dice que es óptimo de Pareto si ninguna otra solución la mejora o iguala respecto a todos los objetivos y la mejora estrictamente respecto al menos uno de ellos (véase capítulo 8).

Page 99: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

89

mejoren (como en el caso de las alternativas E y F en la figura 5.12.c). La relajación de

restricciones conduce a un nuevo espacio de diseño, concretamente a un nuevo subespacio de

estructuras12.

5.6.3 Razonamiento por Analogía: Adaptación de diseños

La relajación de restricciones puede permitir encontrar alternativas mejores a las

conocidas. Sin embargo las restricciones de un problema no suelen ser caprichosas y relajarlas

tiene un precio: el diseño resultante tendrá "fallos", no será válido.

Supongamos que en el ejemplo de la ordenación urbana se elige una solución con los

apartamentos en una parcela con gran inclinación, porque proporciona menor coste y exceso

de ruido que otras alternativas. Las técnicas de construcción habituales, como allanar el

terreno, pueden no ser adecuadas ya que allanar un terreno muy inclinado origina problemas

de erosión (este es precisamente el origen de la restricción).

CYCLOPS permite buscar soluciones innovadoras para adaptar los diseños con fallos

mediante un mecanismo de razonamiento por analogía. En primer lugar se busca una

explicación al problema o fallo que se pretende resolver. Esto se consigue utilizando

conocimiento de diseño especializado. En el ejemplo anterior, una posible explicación del

fallo puede ser: (sobre edificio suelo) Y (suelo inclinado). A continuación se utiliza esta

explicación para recuperar de una ‘Memoria a Largo Plazo’ experiencias previas o

precedentes como el de la figura 5.13. Una vez recuperado el precedente se establece una

correspondencia entre el caso actual y el recuperado (por ejemplo los conceptos de 'edificio' y

'cabaña' juegan papeles análogos en ambos casos). Utilizando los datos del caso análogo se

puede inferir una estrategia para reparar el fallo. En este caso el precedente sugiere utilizar

columnas para levantar el edificio del suelo de forma análoga a los zancos empleados por

algunas cabañas tailandesas para evitar inundaciones.

Este tipo de razonamiento incorpora nuevos elementos al espacio de diseño (en este

caso los zancos), y más concretamente al subespacio de las estructuras. En general los

procesos de adaptación pueden afectar a la forma en que se evalúan las alternativas, por

12Navinchandra no emplea la terminología de subespacio de estructuras, comportamientos y funciones al referirse a un espacio de diseño. Sin embargo utilizar esta terminología para describir su trabajo puede resultar bastante clarificador.

Page 100: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

90

ejemplo porque suponen un coste adicional. La figura 5.12.d muestra el resultado de evaluar

los diseños obtenidos por exploración una vez considerado el coste de su adaptación.

A

D

E

F B C

RUIDO

A

F

CD

E

B

−−−−

COSTE

+

+ −−−−

A

F

CD

E

B

−−−−

COSTE

+

+ −−−−

RUIDO

A

CD

B

−−−−

COSTE

+

+ −−−−

RUIDOA

C D

B

(a) (b) (c)

(d) (e)

LEYENDA: Soluciones satisfactorias y óptimos de Pareto. Soluciones satisfactorias pero no óptimas.

Figura 5.12. (a) Conjunto de soluciones al problema que cumplen las restricciones. (b) Ordenaciónde las alternativas basándose en dos objetivos. La línea punteada representa la "curva de Pareto",

bajo la cual todas las soluciones son inferiores. (c) La aparición de dos nuevas alternativas desplazala curva de Pareto. (d) Nueva curva de Pareto tras considerar el coste de adaptación de E y F. (e) Unnuevo criterio supone una nueva dimensión en el espacio de comportamientos. La curva de Paretoestá representada ahora por una superficie sombreada. En virtud del nuevo objetivo, F vuelve a ser

una alternativa interesante.

5.6.4 Razonamiento por Analogía: Emergencia de Criterios

El último proceso de exploración considerado en CYCLOPS, la emergencia de

criterios, modifica el subespacio de comportamientos del problema.

Page 101: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

91

El mecanismo de razonamiento por analogía permite también reconocer nuevas

oportunidades o nuevos problemas de forma innovadora sobre la base de experiencias previas.

En el ejemplo considerado, tras relajar la restricción de la pendiente surge una nueva

alternativa que sitúa los apartamentos en una zona elevada. Esto puede recordar al diseñador

un diseño similar de una construcción con unas magníficas vistas (ver figura 5.14). Esta

ventaja puede traducirse en un nuevo criterio (“la vista desde los apartamentos debe ser

buena”) que competirá con los ya presentes en el problema y que puntuará favorablemente esa

alternativa. Cada nuevo criterio representa una dimensión adicional en el subespacio de

comportamientos (ver figura 5.12.e).

Nótese que la aparición del nuevo criterio surge gracias a una alternativa generada

mediante exploración, independientemente de que sea o no la finalmente elegida, o de que

pueda o no ser adaptada. El mismo proceso puede llevar a reconocer tanto ventajas como

inconvenientes en las alternativas consideradas.

5.7. COMENTARIOS

Los trabajos descritos en esta sección son representativos de buena parte de los

problemas que se investigan actualmente en IA bajo el nombre de diseño. Durante los años 70

y principios de los 80 la mayoría de trabajos de IA que se referían a diseño pueden situarse en

la clase de diseño rutinario. Desde entonces el interés por los procesos de generación y

modificación de espacios de diseño postulados en (Simon, 1973) no ha hecho más que crecer.

La conexión de los trabajos descritos con las ideas aportadas por Herbert Simon es bastante

evidente.

El primer modelo presenta una caracterización del diseño no rutinario basándose

precisamente en los procesos de exploración. La concepción de los procesos de exploración

como una meta-búsqueda también representa una comunión de ideas importante.

En el segundo caso la conexión es también evidente, aunque nunca explícita. Basta

considerar el modo en que Navinchandra justifica el uso de la emergencia de criterios, muy

similar al empleado por (Simon, 1973) para justificar el uso de una Memoria a Largo Plazo en

la resolución de problemas mal estructurados (Navinchandra, 1991, pp. 33-34):

Page 102: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

92

Precedente #10 Situación Inicial: Condiciones: (sobre cabaña suelo) Y (esta suelo inundado) Y (esta cabaña “en Tailandia”) Efectos: (desfavorable cabaña “cabaña inundada) Explicaciones: (B1) (desfavorable cabaña “cabaña anegada de agua”) porque (esta cabaña anegada-agua) (B2) (esta cabaña anegada-agua) porque (sobre cabaña suelo) Y (esta suelo inundado) Solución: Acción: (acción (y (sobre cabaña zancos) (sobre zancos suelo))) Efectos: (no (desfavorable cabaña “cabaña anegada de agua”)) Explicación: (B3) (no (desfavorable cabaña “cabaña anegada de agua”)) porque (no (esta cabaña anegada-agua)) Y (B1) era cierto inicialmente (B4) (no (esta cabaña anegada-agua)) porque (no (sobre cabaña suelo)) Y (B2) era cierto inicialmente13 (B5) (no (sobre cabaña suelo)) porque (sobre cabaña suelo) Y la acción llevada a cabo fue: (acción (y (sobre cabaña zancos) (sobre zancos suelo)))

Figura 5.13. Caso correspondiente a un precedente sobre como los habitantes de ciertos pueblostailandeses sitúan sus casas sobre zancos para resguardarse de las inundaciones (adaptado de

(Navinchandra, 1991, p. 102)).

Precedente #23 Condiciones: (altitud hogar alta) Y (vista hogar valle) Y (valle tiene lagos) Y (valle tiene bosques) Efectos: (favorable: hogar buena-vista)

Figura 5.14. Caso correspondiente a una experiencia previa de una casa con buenas vistas(adaptadode (Navinchandra, 1991, p.90))

13En castellano esta relación se leería de la siguiente forma: “La cabaña no está anegada por el agua porque ya no se encuentra en el suelo, esto se debe a que, el motivo original por el que la casa estuviese anegada por el agua era que se encontraba en el suelo que estaba inundado”.

Page 103: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

93

"Puede plantearse lo siguiente[...]: Si todos los criterios provienen de precedentes,

entonces ¿por qué no es posible proponer todos los criterios antes de empezar a

diseñar? ¡De todos modos ya está todo en la cabeza del diseñador! El problema es

que, cuando un diseñador se enfrenta a un nuevo problema, todo el contenido de su

Memoria a Largo Plazo es potencialmente relevante. Es imposible para el diseñador

tenerlo todo en cuenta. Debe limitar el ámbito del problema ciñéndose al dominio del

diseño actual. Sólo se recuperan nuevos criterios externos al dominio cuando algunos

patrones del diseño actual recuerdan al diseñador casos pasados de su Memoria a

Largo Plazo. [...] Buscar en un espacio de diseño empleando como operadores todos

los casos pasados de la Memoria a Largo Plazo es computacionalmente intratable. El

uso de la base de precedentes debe controlarse bien limitando su uso a ciertas partes

del diseño, o bien permitiendo que sean las condiciones de los nuevos diseños

generados las que disparen la recuperación de casos pasados."

A primera vista ambos modelos presentan una caracterización muy diferente del

diseño innovador: basada directamente en los procesos en el primer caso; relativa al

observador y su cultura de diseño en el segundo. Sin embargo las coincidencias son mayores

que las diferencias.

Una coincidencia importante de ambos modelos consiste en considerar el espacio de

diseño como dividido en (al menos) dos subespacios, el de estructuras y el de

comportamientos, que evolucionan de forma natural a lo largo del proceso. Tanto es así que

hoy día existe una gran reticencia a considerar que un sistema realice diseño si no tiene

capacidad para modificar de algún modo alguno de estos subespacios. Aunque se ha

reconocido la importancia del subespacio de funciones y su evolución, este ha recibido hasta

ahora menos atención.

Concretamente se han presentado en este capítulo cuatro procesos

computacionales de exploración diferentes:

• En el contexto del primer modelo: la emergencia de formas visuales y la

combinación evolutiva.

• En el contexto del segundo modelo: la relajación de restricciones (compensada con

procesos de adaptación) y la emergencia de criterios.

Page 104: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 5

94

En esta tesis se aborda el problema del análisis del espacio de comportamientos de un

problema, aunque desde un punto de vista diferente. El modelo propuesto por Navinchandra

hace un especial énfasis en el carácter multicriterio del diseño. El sistema CYCLOPS es capaz

de encontrar el conjunto de soluciones óptimas de Pareto para un problema multiobjetivo.

Cada una de estas soluciones representa un compromiso diferente, es decir, algunas

alternativas se comportan mejor en uno o varios objetivos a cambio de empeorar en los

demás. Una de las tareas a llevar a cabo por un diseñador es precisamente descubrir qué

posibles compromisos pueden establecerse entre los objetivos considerados y elegir de forma

subjetiva uno de ellos.

Más adelante se examinan las posibilidades de ciertos algoritmos de búsqueda para

facilitar la comparación entre distintas alternativas, establecer prioridades entre objetivos en

conflicto y analizar la importancia de las restricciones en el contexto del problema que se

pretende resolver. Este proceso no implica necesariamente la modificación de los subespacios

de estructura ni la adición de nuevos criterios u objetivos, aunque puede ser el origen de

ambos. En cualquier caso, la relevancia de estos subprocesos en el proceso de diseño puede

presentarse con mayor claridad en el contexto de la teoría del diseño descrita en el siguiente

capítulo.

Page 105: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

95

CAPÍTULO 6

EL DISEÑO AL NIVEL DEL CONOCIMIENTO

“We design things

when we need things or would like things to be different,

but cannot yet specify exactly how or in what way” Tim Smithers, 1998

Frente a los enfoques pragmáticos, que buscan el desarrollo de sistemas de ayuda al

diseño sobre la base de conjeturas o descripciones y modelos empíricos, están aquellas líneas

de investigación que se inspiran en fundamentos o bases teóricas. Las ventajas de emplear una

teoría en cualquier proyecto de investigación son evidentes. La teoría proporciona aquellos

conceptos teóricos necesarios para comprender y explicar los procesos de diseño. Trabajar

sobre la base de una teoría permite especificar con mayor claridad las limitaciones y

posibilidades de los sistemas desarrollados, comparar diversos enfoques y establecer criterios

y métodos de evaluación para los mismos.

Actualmente se perfilan dos tipos de teorías alternativas sobre diseño en Inteligencia

Artificial. Por un lado están las teorías cognitivas, que pretenden explicar como diseñan los

agentes humanos, y de las que ya se han visto dos ejemplos. Por otro están las teorías al nivel

del conocimiento, que pretenden explicar el proceso de diseño independientemente de que el

agente que lo lleva a cabo sea o no humano. Existen posturas enfrentadas respecto a qué tipo

de teoría es más adecuada actualmente para guiar la investigación sobre diseño en IA, como

reflejan por ejemplo (Smithers, 1996) y (Darlington y otros, 1998).

En este capítulo se presentan KLDE0, una teoría del diseño basada en el concepto de

Nivel del Conocimiento. Una ventaja de este tipo de teoría, frente a las teorías cognitivas es

que es más fácil de desarrollar (la psicología aún está lejos de poder proporcionar una teoría

unificada de la cognición humana). De hecho este tipo de teorías permite establecer más

Page 106: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

96

fácilmente una definición precisa de cuando un proceso puede considerarse diseño y cuando

no, algo que las teorías cognitivas no permiten actualmente.

6.1. KLDE0: UNA TEORÍA DEL DISEÑO AL NIVEL DEL

CONOCIMIENTO

La teoría KLDE0 tiene sus orígenes en los años ochenta (Smithers y otros, 1989) y aún

hoy día continúa su desarrollo. Existen numerosas publicaciones que a lo largo de la última

década han ido perfilando sus distintos aspectos hasta el estado en que se encuentra

actualmente. Entre ellas cabe destacar (Smithers y Troxell, 1990), (Smithers, 1992), (Smithers

y otros, 1994), (Smithers, 1996) y (Smithers, 1998). Inicialmente recibió el nombre de

‘modelo del Diseño como Exploración14’, más adelante ‘teoría del Diseño como

Exploración’, y por último su denominación actual como KLDE0.

En (Smithers, 1998) se describen las motivaciones para el desarrollo de esta teoría:

"La necesidad de una teoría, o teorías, del diseño al Nivel del Conocimiento (KL) se

plantea como una alternativa práctica a la extendida y aparente necesidad que existe

de una teoría cognitiva del diseño: una teoría de cómo diseñan los humanos. La

posibilidad y utilidad de una teoría del diseño al nivel del conocimiento se basa en

dos premisas. Primero, que el diseño no es exclusivamente una actividad humana; que

otras clases de agentes podrían diseñar (en teoría). Segundo, que el Nivel del

Conocimiento representa un nivel adecuado de abstracción para construir y expresar

una teoría aprovechable del diseño (independiente del agente)."

En KLDE0

se supone que las distintas formas de diseño pueden distinguirse de otras

actividades de resolución de problemas estudiadas en IA como, por ejemplo, la generación de

planes o la configuración.

Es necesario matizar que el significado del nivel del conocimiento no se corresponde

exactamente con el original dado por (Newell, 1982), sino con el empleado actualmente por

las nuevas metodologías de la Ingeniería del Conocimiento (véase el capítulo 2), y más

concretamente como el de la metodología CommonKADS. En esta metodología, la

14 Nótese que el término ‘exploración’ se utiliza aquí en un sentido diferente al empleado en el capítulo anterior.

Page 107: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

97

descripción de una tarea al nivel del conocimiento se concibe como un proceso basado en

conocimiento. En él se distinguen diversos tipos de conocimiento (Van de Velde, 1994):

1. Conocimiento de la tarea. Describe la descomposición de la tarea en subtareas; qué

significa realizar dichas tareas; y cuándo deben ejecutarse las subtareas para

conseguir realizar la tarea original (estructura de control).

El conocimiento de la tarea incluye una descripción de cuál es la tarea

(objetivos, entradas, salidas) y de cómo puede realizarse, indicando su estructura,

es decir, el conjunto de subtareas a realizar para poder realizar la tarea original y

cómo se relacionan en función de sus entradas y salidas.

2. Conocimiento del dominio. Consiste en el conjunto de hechos y suposiciones

relevantes para poder razonar la forma de realizar la tarea en el dominio de la

aplicación. El conocimiento del dominio se estructura en una serie de modelos del

dominio que proporcionan visiones coherentes parciales del mismo.

Especifica la forma, estructura y contenido del conocimiento específico del

dominio relevante para la aplicación (conceptos y relaciones). La forma y

estructura de estos elementos se define en una ontología, es decir, una serie de

términos para referirse a las clases naturales de un dominio o de una visión

particular del mismo.

3. Conocimiento de inferencia. Describe cómo se emplea el conocimiento del

dominio en pasos de razonamiento elementales (inferencias). También especifica

las clases de conocimiento producidos por dichas inferencias. Las inferencias se

consideran "primitivas" con relación a un modelo o teoría concreto.

Las inferencias de una aplicación concreta forman una estructura de

inferencias que expresa dependencias de datos entre ellas. Esta estructura, sin

embargo, no expresa ningún tipo de control.

La siguiente sección define de forma precisa el significado de los términos teoría,

modelo, descripción y método en diseño, y el papel que puede jugar cada uno de ellos en la

investigación sobre diseño en IA. A continuación se presentan los conceptos teóricos

proporcionados por KLDE0 para comprender y explicar el diseño. Estos conceptos se utilizan

entonces para proporcionar una caracterización del mismo. Por último se describe uno de los

Page 108: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

98

resultados más interesantes proporcionados hasta ahora por esta teoría: una definición precisa

de qué es diseño y de cómo identificar sus distintas clases.

6.2. TEORÍAS, MODELOS Y MÉTODOS DE DISEÑO

El “Taller sobre la Naturaleza y Función de la Teoría en la Investigación de IA sobre

Diseño”, celebrado en el contexto del Tercer Congreso Internacional sobre Inteligencia

Artificial y Diseño15 (Smithers, 1994b), puso de relieve la confusión existente en el uso de los

términos teoría, modelo y método en el contexto de las investigaciones sobre diseño.

En KLDE0 se clarifican estos términos y se utilizan con un significado muy concreto.

Las definiciones que se presentan a continuación coinciden básicamente con las descritas en

(Smithers, 1994b) y (Smithers, 1996).

Una teoría científica consiste en un conjunto de enunciados generales sobre un

fenómeno, de modo que no hacen referencia ni dependen de instancias particulares del

mismo. En este sentido, los llamados ‘modelos’ del proceso de diseño descritos en el capítulo

anterior pueden considerarse como componentes de una teoría, ya que no se refieren a

instancias concretas de ningún proceso de diseño.

Una característica fundamental en las teorías científicas es la posibilidad de permitir

explicaciones de instancias particulares del fenómeno. Para dar estas explicaciones la teoría

debe proporcionar un conjunto de términos y conceptos operativos, es decir:

1. Que permitan dar una descripción simbólica de los distintos aspectos del fenómeno.

2. Que sea posible a otras personas establecer mediante observación la mismas

relaciones entre los aspectos del fenómeno y la descripción.

15Workshop on The Nature and Role of Theory in AI in Design Research - Third International Conference on Artificial Intelligent in Design, AID’94. Lausana, Suiza.

Page 109: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

99

Por ejemplo, la teoría cinética de la materia esclareció en el pasado conceptos como

masa, velocidad, aceleración, fuerza, energía y potencia. Estos conceptos permitieron

desarrollar leyes para explicar y predecir, entre otras cosas, el movimiento de los cuerpos16.

El desarrollo y prueba de teorías es el objeto de la ciencia. La incapacidad de una

teoría para proporcionar la explicación de nuevas instancias de un fenómeno puede conducir a

la elaboración de otra nueva. Por ejemplo, las dificultades encontradas por las teorías

mecanicistas de la luz condujeron a identificar el concepto de campo en la física, y más

adelante al desarrollo de la teoría de la relatividad (véase (Einstein e Infeld, 1986) para una

descripción detallada).

Los modelos se refieren a instancias o clases de instancias particulares de un

fenómeno. Los modelos pueden ser teóricos (corresponden a particularizaciones o

especializaciones de una teoría) o bien tener un origen empírico. En principio un modelo

teórico no tiene por qué ser mejor que uno empírico. Sin embargo los primeros permiten

establecer con mayor fidelidad bajo qué condiciones son válidos. Este es el motivo por el que

la ingeniería no precisa muchas veces de teorías, pero funciona mejor cuando dispone de

ellas. También es importante señalar que la simple descripción de una instancia de un

fenómeno no constituye una explicación del mismo. Las descripciones no pueden ser

consideradas por tanto ni como modelos ni como teorías, “concretamente, las descripciones

de lo que hacen los diseñadores al diseñar no son, honradamente, modelos o teorías del

proceso de diseño, y no deberían presentarse como tales” (Smithers, 1996, p. 566).

Por último, los métodos de diseño especifican normas concretas para la realización de

ciertos tipos de diseño con el objetivo de obtener resultados de buena calidad. Considérense,

por ejemplo, las metodologías de diseño descendente empleadas comúnmente en el diseño de

software. En principio la mejor forma de establecer un método de diseño sería sobre la base

de un modelo, teórico o empírico, del proceso de diseño en cuestión.

16Muchas teorías científicas permiten realizar también predicciones sobre el fenómeno, aunque este requisito no es indispensable. Considérese el caso de la ‘Evolución mediante Selección Natural’, una teoría sobre el origen de las especies. Esta teoría ofrece hasta ahora la mejor explicación sobre la variedad de especies animales y vegetales que pueblan La Tierra, pero no permite predecir qué nuevas especies aparecerán en el futuro.

Page 110: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

100

6.3. CONCEPTOS TEÓRICOS

Una importante aportación de KLDE0

es identificar un conjunto de conceptos abstractos

necesarios para poder comprender y explicar el proceso del diseño. Estos conceptos se

corresponden con las clases de conocimiento necesarias y suficientes para llevar a cabo el

proceso. Son los que se describen a continuación.

Necesidades y deseos (ND). Son el detonante de cada nuevo proceso de diseño. Un

agente, el cliente, siente la necesidad o el deseo de cambiar una situación actual por otra

diferente, aunque no es capaz de articular exactamente en qué sentido. En otras palabras, el

cliente sugiere un nuevo problema, pero no es capaz de enunciarlo directamente. También es

frecuente el caso en que el cliente ni siquiera expone directamente sus necesidades al

diseñador y este debe identificarlas.

Considérese por ejemplo el siguiente fragmento de la inscripción encontrada en un

templo junto al puente romano de Alcántara sobre el río Tajo (figura 6.1). En él se sugieren

algunas de las motivaciones o deseos que originaron su construcción (Bendala, 1992):

"El puente, destinado a durar por siempre en los siglos del mundo, lo hizo Lácer,

famoso por su divino arte. El mismo levantó este templo a los divinos Romúleos y a

César [los emperadores muertos y el reinante, que era Trajano]. Tanto por lo uno

como por lo otro su obra es acreedora del favor celestial. Quien ha erigido este

enorme puente, con su vasta mole, rindió honor y satisfacción a los dioses."

A primera vista podría parecer que la construcción de un puente responde simplemente

a la necesidad de cruzar un río. Sin embargo esta necesidad puede verse satisfecha por una

construcción mucho más modesta. Posiblemente otras necesidades y deseos, como realizar

una construcción destinada a "durar por siempre en los siglos del mundo" y "rendir honor y

satisfacción a los dioses" nos den una clave mejor sobre los criterios empleados para la

construcción de una de las obras más impresionantes de la ingeniería romana.

KLDE0

considera también la posibilidad de que el proceso de diseño motive un cambio

en las necesidades y deseos del cliente, pero este cambio no se considera parte del proceso.

Las necesidades y deseos no son una construcción del proceso de diseño.

Page 111: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

101

Requisitos (R), enunciados de problemas (P), soluciones (S) y valoraciones (V).

Para poner en marcha un proceso de diseño es necesario identificar qué requisitos o criterios

debería cumplir un artefacto para satisfacer las necesidades y deseos del cliente.

Una vez que se dispone de un conjunto de requisitos (R) se puede formular un

enunciado de problema (P) bien definido e intentar resolverlo. En otras palabras, la función

de P es hacer operativos los requisitos. Una vez encontrada una solución (S) al problema hay

que valorar si cumple los requisitos lo suficiente para satisfacer las necesidades y deseos

originales.

Figura 6.1. Puente romano de Alcántara (Cáceres), construido en el siglo II d.C (época de Trajano).

La altura total, incluido el arco triunfal, es de 61 m., la luz del arco mayor 28 m.

Las dificultades del diseño se manifiestan aquí de diversas formas. Para empezar es

posible encontrar distintos conjuntos de requisitos para satisfacer unas mismas necesidades y

deseos. Normalmente la forma de operativizar un conjunto de requisitos tampoco es única, y

en general no es posible saber cuál es la más adecuada hasta que se evalúan las soluciones. La

relación entre requisitos, enunciados de problema y soluciones no es sencilla. Las

transformaciones ND → R, y R → P forman normalmente un proceso incremental que utiliza

y genera diversas clases de conocimiento.

Page 112: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

102

El diseño puede caracterizarse, en este sentido, como un proceso de análisis mediante

síntesis. Aunque la resolución de problemas juega un papel fundamental en el proceso,

también es importante la construcción de los mismos. Una vez obtenida una descripción de

requisitos inicial (Ri), puede sintetizarse un enunciado de problema inicial (Pi) y buscarse una

solución al mismo (Si). Existen varios motivos por los que una solución Si puede no servir

para satisfacer ND. Las especificaciones de requisitos (R) pueden ser incompletas,

inconsistentes, imprecisas y/o ambiguas en formas que no se pueden establecer a priori (el

significado preciso de estos términos se explica más adelante). La única forma de averiguarlo

es sintetizar enunciados de problemas que operativicen total o parcialmente los requisitos,

resolverlos y analizar las soluciones que proporcionan. El proceso de analizar las soluciones

genera enunciados de valoración.

Las revisiones de P y R continúan hasta que se alcanza una descripción de requisitos

final (Rf), y un enunciado de problema final (Pf) cuya solución (Sf) satisface las necesidades y

deseos originales.

Justificaciones (J), presentaciones (Q) y descripciones de diseños. Cada una de las

construcciones del diseño identificadas hasta ahora (enunciados de requisitos, enunciados de

problemas, soluciones, y enunciados de valoración) se generan a lo largo del proceso de

forma justificada, es decir, existe un cómo y un por qué: lo que se denominan enunciados de

justificación. Estos enunciados son la base para una forma de conocimiento adicional, los

enunciados de presentación, que son el medio de interacción entre el diseñador y el cliente

(Smithers y otros, 1994):

"No tiene sentido, ni constituiría diseño, simplemente cambiar los enunciados de

problemas y/o las descripciones de requisitos actuales de forma aleatoria e ilógica.

Tampoco contribuye a un buen proceso de diseño dedicarse a relajar las restricciones

de una en una (en una pequeña cantidad previamente establecida) hasta encontrar

una solución en un límite del tiempo de búsqueda previamente establecido, como

ocurre en los sistemas CYCLOPS de Navinchandra.

Los cambios realizados durante el proceso de diseño deben ser comprensibles y

justificables, tanto para el diseñador como para el cliente, si es necesario."

Page 113: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

103

Todas estas construcciones de conocimiento y su organización forman otra clase de

conocimiento que se denomina descripción del diseño. Se trata, esencialmente, de todo el

conocimiento sobre el estado del proceso de diseño en cada momento.

A partir de este conjunto de conceptos se aprecia claramente que según KLDE0

el

proceso de diseño utiliza conocimiento previo, pero también resulta en la construcción, uso y

revisión de distintas clases de conocimiento. La forma en que se construye, usa y revisa cada

una de estas clases de conocimiento depende de detalles del dominio, contexto y clase de

diseño que se esté llevando a cabo, y por tanto quedan fuera de una teoría general del proceso

de diseño. Tampoco es el objetivo de la teoría identificar las tareas concretas que llevan a

cabo estos procesos. Simplemente se identifican las distintas clases de conocimiento y su

función en el proceso.

6.3.1 Aspectos de la descripción de requisitos en un problema de diseño

Un aspecto fundamental en cualquier proceso de diseño es la elaboración de un

conjunto de requisitos adecuado. La obtención de conjuntos de requisitos es un proceso

intensivo en conocimiento y también uno de los orígenes de la dificultad de muchos

problemas de diseño. Según KLDE0

las descripciones de requisitos pueden ser incompletas,

inconsistentes, imprecisas y/o ambiguas de formas que no es posible especificar a priori. La

forma y grado en que se presente este fenómeno depende, en cierta medida, de la naturaleza

del resolutor de problemas. Cuanto más experimentado sea el diseñador (es decir, más

conocimiento aporte al problema), mayor será la posibilidad de obtener desde el principio una

descripción completa, consistente, precisa y no ambigua. El significado de estos términos es

el siguiente:

• Incompleta. La descripción de requisitos no identifica algún criterio necesario que

debe cumplirse para poder satisfacer las necesidades y/o deseos del cliente.

Resolver un problema incompleto implica aprender más sobre la naturaleza del

mismo, investigando las consecuencias de distintos intentos de completarlo,

explorando para ver qué es posible.

• Inconsistente. La descripción de requisitos especifica dos o más criterios

mutuamente incompatibles (en teoría o en la práctica). Resolver un problema

inconsistente implica abandonar el problema tal y como está enunciado,

Page 114: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

104

cambiándolo de alguna manera e intentando resolver el nuevo problema. Esto no

significa necesariamente que el problema se transforme a una nueva

representación, mas bien se idea un problema diferente.

• Imprecisa. La descripción de requisitos no distingue dos o más alternativas o

criterios diferentes. Un problema es impreciso porque no se conoce o no se ha

enunciado lo suficiente en los requisitos actuales para decidir entre dos o más

soluciones o clases de soluciones significativamente distintas. Resolver un

problema impreciso implica introducir nuevas restricciones y/o criterios que

ayuden a discriminar entre soluciones en términos de requisitos importantes del

dominio.

• Ambigua. La descripción de requisitos no identifica una ordenación o no establece

prioridades sobre la importancia de los distintos criterios.

(Smithers y otros, 1994) proponen el siguiente ejemplo para ilustrar estos conceptos:

el editor de un periódico británico necesita un crucigrama para la edición del lunes y avisa a

su diseñador de crucigramas habitual. Después de escuchar la petición del editor el diseñador

elabora una descripción de requisitos inicial, que podría enunciarse algo así como:

"Diseñar un crucigrama para una matriz cuadrada, en el que al menos el 95% de las

celdas correspondan a letras, en el que todas las palabras estén incluidas en el

'Concise Oxford English Dictionary', todas las palabras tengan cuatro o más letras, y

el patrón de la matriz sea simétrico respecto a los ejes horizontal y vertical."

Esta descripción intenta recoger un conjunto de requisitos que, sobre la base de la

experiencia del diseñador, satisfagan las necesidades del editor del periódico. A partir de ella

puede sintetizarse un enunciado que defina un espacio de problema y haga operativos todos

los criterios. Supongamos que un intento de resolverlo muestra que no tiene solución. En tal

caso no queda más remedio que reformularlo o cambiar los requisitos iniciales. Una

posibilidad es relajar alguna restricción fuerte del problema, por ejemplo, que en lugar del

95% se deje solo el 85% de la matriz para las letras. En este caso se ha descubierto una

inconsistencia en los criterios, no es posible satisfacerlos todos simultáneamente. Este no es el

único inconveniente que puede presentar la descripción de requisitos (p. 307): "También

podría descubrirse, después de explorar más posibilidades, que es necesario añadir, modificar

o eliminar criterios para que el resultado suponga un reto para los lectores. Por ejemplo,

Page 115: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

105

criterios sobre el rango y variación de las palabras empleadas, los tipos de pistas que se

proporcionan, el grado de interconexión de las palabras en la matriz, o el número de palabras

que deba contener. En tal caso se habría descubierto que el problema era incompleto en ese

sentido. Un ejemplo de imprecisión puede ser decidir qué versión del diccionario emplear."

Pueden encontrarse ejemplos adicionales en (Smithers, 1992).

6.4. EL DISEÑO Y SUS CLASES SEGÚN KLDE0

La figura 6.3 muestra la estructura básica de KLDE0 mediante un diagrama de un

proceso basado en conocimiento (Smithers, 1998). En las figuras 6.2, 6.4 y 6.5 se definen los

símbolos, semántica y términos empleados en el diagrama. La estructura del diagrama refleja

los diferentes tipos de conocimiento y sus funciones en el proceso, aunque nada se dice de su

contenido, ya que para ello sería necesario referirse a clases de diseño concretas y a contextos

y dominios particulares.

Según KLDE0 estos son los tipos de conocimiento necesarios y suficientes para que un

proceso basado en conocimiento se considere diseño y no otra cosa. No existe por tanto

ningún tipo de conocimiento que se dedique de forma explícita al control del proceso. KLDE0

predice que “no existe un tipo de conocimiento de control identificable explícitamente, y que

tampoco es necesario”. El control se explica como “una capacidad distribuida que surge de la

interacción de los distintos tipos de conocimiento y de sus respectivas funciones en el proceso

de diseño en su conjunto”. De este modo KLDE0 capta la “naturaleza reflexiva, oportunista y

esencialmente situada del diseño”.

ND

KX D/T/I

pY: JY

Construcción de entrada del cliente al proceso de diseño

Un tipo de Conocimiento de Diseño, KX, que puede poseercualquier combinación de los siguientes componentes deconocimiento: Dominio (D), Tarea (T) e Inferencia (I).

Un tipo de conocimiento del Proceso, Y, construido por elproceso de diseñar, con su conocimiento de Justificaciónasociado JY.

Figura 6.2. Definición de los símbolos gráficos empleados para los distintos tipos de conocimiento en

KLD0E. (Adaptado de (Smithers, 1998)).

Page 116: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

106

ND

KR D/T/-

pR: JR

KRR D/-/I

KP D/T/-

pP: JP

pS: JSKS D/T/I

pQ: JQKQ D/T/-

pDR: JDRKDR D/T/-

pA: JAKA D/T/I

Posible revisión Cliente

Procesode diseño

KPR D/-/I

Figura 6.3. Estructura básica de KLD0E como Proceso basado en Conocimiento. (Adaptado de(Smithers, 1998)).

Page 117: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

107

• Las conexiones verticales y denotan una relación de USO.KX -/-/-p

Y: JY

Por ejemplo significa que el conocimiento para diseñar tipo KX usaconocimiento del proceso tipo Y.

KX -/-/-

pY: JY

• Las conexiones horizontales o denotan relaciones PUEDE GENERARy PUEDE SER GENERADO PORrespectivamente.

KX -/-/-p

Y: JY

Por ejemplo, significa que el conocimiento de diseño tipo KX puedegenerar conocimiento del proceso tipo Y, y que el conocimientode proceso de tipo Y puede ser generado por conocimiento dediseño de tipo KX.

KX -/-/-p

Y: JY

• Las conexiones diagonales denotan una relación de DEPENDENCIA.

pY: JY

Por ejemplo, significa que el conocimiento del proceso tipo Z depende,para su generación y justificación, de (elementos de) elconocimiento del proceso de tipo Y.

pZ: JZ

pY: JY

Figura 6.4. Semántica de las conexiones entre tipos de conocimiento (Smithers, 1998).

ND : Enunciado de las Necesidades y Deseos generados por el cliente. R:JR : Enunciados de requisitos y justificaciones asociadas. P:JP : Enunciados de problema y justificaciones asociadas. S:JS : Enunciados de solución y justificaciones asociadas. A:JA : Enunciados de análisis, valoración y evaluación, y justificaciones asociadas. DR:JDR : Documentación del diseño y enunciados de los fundamentos con justificaciones asociadas. Q:JQ : Enunciados de presentación del diseño y justificaciones asociadas. KR : Conocimiento para la formación de requisitos, con componentes de conocimiento del Dominio y de la Tarea. KRR : Conocimiento para la revisión de requisitos, con componentes de conocimiento del Dominio y de Inferencia. KP : Conocimiento para la especificación y síntesis de problemas, con componentes de conocimientodel Dominio y de la Tarea. KPR : Conocimiento para la revisión de problemas, con componentes de conocimiento del Dominio y de Inferencia. KS : Conocimiento para la resolución de problemas, con componentes de conocimiento del Dominio, Tarea, e Inferencia. KA : Conocimiento para el análisis, valoración y evaluación de las soluciones, con componentes de conocimiento del Dominio, Tarea e Inferencia. KDR : Conocimiento para la recuperación de fundamentos y documentación del diseño, con componentes de conocimiento del Dominio y de la Tarea. KQ : Conocimiento para la presentación del diseño, con componentes de conocimiento del Dominio y de la Tarea.

Figura 6.5. Diferentes tipos de conocimiento en KLDE

0. (Adaptado de (Smithers, 1998)).

Page 118: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

108

6.4.1 Un patrón básico para explicar el proceso de diseño

KLDE0 puede emplearse para identificar diferentes clases de diseño. Estas se

distinguen por la forma del proceso y son independientes de cualquier dominio. Existe una

forma básica del proceso, que se muestra en la figura 6.6. Este esquema muestra como las

distintas funciones de los distintos tipos de conocimiento intercalan para producir un patrón

básico del proceso de diseño.

ND {Rj:JRj} {P1:JP1} {S1,1:JS1,1} {A1,1:JA1,1}

{S1,p:JS1,p} {A1,p:JA1,p}

{Pn:JPn} {Sn,1:JSn,1} {An,1:JAn,1}

{Sn,q:JSn,q} {An,q:JAn,q}

KQ KDR

{Q1,..,r:JQ1,..,r} {DR1,..,t:JDR1,..,t}

KR KP KS KA

KPR

KRR

Figura 6.6. La forma básica del diseño según KLD

E0. Para cada descripción de requisitos Ri puede

sintetizarse un conjunto de enunciados de problema (1..n). Para cada enunciado de problema puedeencontrarse un conjunto de soluciones (1..p, ..., 1..q). Para cada solución puede generarse un

enunciado de evaluación y valoración. Algunos enunciados de problemas, soluciones y valoracionespueden seleccionarse para formar enunciados de presentación (1..r), y construir documentos de

descripción de diseño (1..t). (Adaptado de (Smithers, 1998)).

Este patrón puede aparecer repetidas veces, bien a consecuencia de una revisión de la

descripción de requisitos, o bien a consecuencia de construir una nueva descripción de

requisitos a partir de una revisión de las necesidades y deseos originales.

En definitiva KLDE0 identifica como suficientes y necesarios un conjunto de tipos de

conocimiento, y a partir de ellos predice y explica la forma del proceso. Esto permite usar la

teoría para decidir si un proceso particular es o no una instancia de diseño.

Page 119: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

109

Pero eso no es todo, KLDE0 también permite explicar la forma de diversas clases de

conocimiento reconocidas con frecuencia en la literatura: diseño rutinario, diseño innovador y

diseño original. Cada uno de ellos se explica en las siguiente secciones.

6.4.2 Explicación del diseño rutinario

Mediante diseño rutinario se entiende normalmente una forma de diseño relativamente

directa, en la que se encuentran nuevas soluciones para una clase de problemas de diseño bien

establecida. En el capítulo anterior se han mostrado algunos ejemplos, como el diseño

paramétrico de estructuras descrito en (Gero y otros, 1988).

La forma de este proceso según KLDE0 aparece en la figura 6.7. Se trata de un proceso

en el que se dispone de un gran conocimiento de la clase de problemas que se pretende

resolver. Esto permite construir directamente una descripción de requisitos completa,

consistente, precisa y no ambigua. A partir de ella puede construirse también un único

enunciado de problema tal que alguna de sus soluciones cumple los criterios especificados en

la descripción de requisitos y satisface las necesidades y deseos originales.

ND {Rj:JRj} {P1:JP1} {S1,1:JS1,1} {A1,1:JA1,1}

{S1,p:JS1,p} {A1,p:JA1,p}

KQ KDR

{Q1,..,r:JQ1,..,r} {DR1,..,t:JDR1,..,t}

KR KP KS KA

KRR

Figura 6.7. La forma del diseño rutinario según KLD

E0. Se dispone de conocimiento suficiente para

formar una especificación de requisitos completa, consistente, precisa, no ambigua y posible.También hay conocimiento suficiente para formar un único enunciado de problema, de modo que al

menos una solución al mismo cumple con los requisitos lo suficiente para satisfacer las necesidades ydeseos originales (adaptado de (Smithers, 1998).

Normalmente los sistemas de diseño rutinario como el mencionado (Gero y otros,

1988) pasan por alto todo este conocimiento necesario para llegar a formar el enunciado del

problema, ya que no es necesario para resolverlo.

Page 120: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

110

6.4.3 Explicación del diseño innovador

Mediante diseño innovador se entiende normalmente una forma de diseño algo más

complicada, que precisa modificar de algún modo el espacio del problema (véase por ejemplo

el sistema CYCLOPS descrito en el capítulo anterior).

La forma de este proceso según KLDE0 se corresponde con el patrón básico ya descrito

en la figura 6.6. Se dispone del conocimiento necesario para construir una descripción de

requisitos completa, consistente, precisa y no ambigua. A partir de ella se construyen diversos

enunciados de problemas que permiten valorar los cambios necesarios en el espacio del

problema (añadir nuevas variables o relajar restricciones, por ejemplo).

Normalmente los sistemas de diseño innovador, como el ya mencionado CYCLOPS

suelen ignorar las formas de conocimiento necesarias para formar la descripción de requisitos

y construir y revisar los diferentes enunciados de problema.

6.4.4 Explicación del diseño original

Mediante diseño original se entiende normalmente una forma de diseño que implica

"alguna nueva clase de desarrollo en la naturaleza del proceso de explorar una forma de

satisfacer una necesidad o deseo". La originalidad en KLDE0 se identifica con el refinado y

mejora incremental de una descripción de requisitos que no es completa, o consistente, o

precisa, o que es ambigua de algún modo.

En esta clase de diseño el proceso de formular problemas, encontrar y valorar

soluciones es necesario para identificar la incompletitud, inconsistencia, imprecisión y/o

ambigüedad que subyace a la descripción de requisitos. Este mismo proceso permite

identificar formas nuevas y originales de resolver estos problemas. La figura 6.8 ilustra la

forma de este proceso (Smithers, 1998):

"El diseño original, así definido, no ha recibido aún atención seria en la

investigación de la IA sobre diseño".

Page 121: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

111

ND

{R1,2:JR1,2} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

KRR

{Rj:JRj} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

{R1,1:JR1,1} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

KRR

{R2,2:JR2,2} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

KRR

{Rj:JR2} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

{R2,1:JR2,1} {P:JP} {S:JS} {A:JA}

{Q:JQ} {DR:JDR}

KRR

Figura 6.8. La forma del diseño original según KLD

E0. Es necesario explorar varios enunciados de

requisitos antes de encontrar uno que sea completo, consistente, preciso, no ambiguo y posible(adaptado de (Smithers, 1998)).

Page 122: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

112

6.4.5 Explicación del diseño creativo

La última clase de diseño aún por explicar es aquella que provoca una modificación de

las necesidades y deseos del cliente. En KLDE0 se propone denominarla diseño creativo. De

este modo la creatividad en diseño resultaría en diseños que satisfacen necesidades y deseos

que el cliente no poseía inicialmente, al menos de forma explícita, pero que ha aceptado y

asumido con posterioridad.

Por ejemplo, el diseño del Palacio de la Ópera de Sidney (Australia) (ver figura 6.9)

puede ser un buen ejemplo de diseño creativo. Por el contrario, el diseño del Museo

Guggenheim de Bilbao (ver figura 6.10) no sería según (Smithers, 1998) el resultado de un

proceso de diseño creativo (al menos en los términos en que KLDE0 define este término). Esto

se debe al simple hecho de que desde un principio las motivaciones de su construcción

incluían el deseo de "que «fuese un edificio como el Palacio de la Ópera de Sidney», en el

sentido de haber alcanzado el estatus de ser uno de los edificios más famosos e

impresionantes en la historia de la arquitectura".

Figura 6.9. Vista nocturna del Palacio de la Ópera en Sidney (un barco iluminado cruza por delante) y

detalle de su estructura.

Figura 6.10. Museo Guggenheim en Bilbao.

Page 123: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

113

Como puede apreciarse el diseño creativo puede contener elementos de diseño

rutinario, innovador y original o cualquier combinación de ellos. Una posibilidad intrigante es

la de un proceso de diseño creativo compuesto únicamente de elementos de diseño rutinario:

"Esto significa que para conseguir (al menos algunas clases de) diseño creativo basado en

ordenador o apoyo al diseño creativo, no hay que pasar primero necesariamente por una

jerarquía de diseño innovador primero y original después" (Smithers, 1998).

6.5. EL PAPEL DE KLDE0 EN LA INGENIERÍA DEL CONOCIMIENTO

Una teoría sobre diseño puede emplearse para construir los modelos necesarios para la

síntesis de sistemas artificiales, i.e. para su ingeniería. En su ausencia es necesario recurrir a

modelos empíricos cuyo rango de validez es difícil de establecer. Por el contrario, construir

un modelo de algún aspecto del mundo sobre la base de una teoría implica identificar

explícitamente bajo que condiciones el modelo es válido y apropiado (Smithers, 1998):

"Para el caso de la construcción de sistemas basados en conocimiento, un tipo de

práctica de la ingeniería del software, disponemos ya de algunos métodos de

ingeniería del conocimiento bien desarrollados que pretenden apoyar la construcción

de modelos, el modelado de la experiencia al nivel del conocimiento o la resolución

de problemas basada en conocimiento. Actualmente, sin embargo, estos modelos son

empíricos. Proporcionar una teoría adecuada supondría una mejora importante en el

uso de los métodos modernos de la ingeniería del conocimiento, y en la práctica en

general de la ingeniería de sistemas basados en conocimiento. Este es el papel que

pretende jugar (una versión más completa de) KLDE0 en el caso de la construcción de

sistemas basados en conocimiento para su uso en diseño."

La figura 6.11 presenta todos los componentes implicados en este proceso e identifica

las relaciones entre los mismos. Para construir un sistema de ayuda basado en conocimiento

para alguna clase particular de diseño, es necesario un modelo de la misma. Esto puede

conseguirse recogiendo observaciones y empleando las estructuras y conceptos teóricos

proporcionados por KLDE0. Una vez validado el modelo basándose en los criterios

establecidos por la teoría, puede emplearse como base para elaborar una especificación del

sistema, i.e. una descripción al Nivel Simbólico. Una vez implementado el sistema, la teoría

debería proporcionar también criterios para evaluar y valorar su funcionamiento.

Page 124: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

114

En este esquema se aprecia con claridad que teoría, modelo, método y descripción son

conceptos distintos con roles claramente diferenciados en la Ingeniería del Conocimiento.

KLDE: Una TeoríaGeneral del Diseño al

Nivel del Conocimiento

Modelo al Nivel delConocimiento de la clase

particular de Diseño

Un Método de Diseñopara la clase particular

de Diseño

Especificación para unSistema de Diseño

basado en Conocimiento

Implementación delsistema especificado

Una Descripción de laclase particular de

Diseño

Alguna clase particularde Diseño

Datos yObservaciones Comprensión y

conceptosteóricosComprensión

empírica

Especificación del Modeloal Nivel del Conocimiento

Especificación del SistemaSoftware

Figura 6.11. El papel de KLD

E0 como teoría general del diseño en la ingeniería de sistemas basados

en conocimiento para su uso en alguna clase particular de diseño (adaptado de (Smithers, 1998)).

6.6. COMENTARIOS

KLDE0 forma parte de una visión de la investigación de IA en diseño coherente con la

forma en que la moderna ingeniería del conocimiento concibe el desarrollo de sistemas con

conocimiento.

La finalidad que se persigue con su desarrollo no es una mejor comprensión de los

procesos cognitivos humanos ni surge de una preocupación por la formación universitaria de

los futuros diseñadores. Sin pretender sustituir ni suplantar las teorías ya expuestas que

persiguen estos fines, se consigue proporcionar una caracterización del proceso de diseño en

términos perfectamente adecuados para el desarrollo de sistemas informáticos de ayuda al

diseño. De este modo KLDE0 se presenta como una herramienta válida para los fines prácticos

de la Ingeniería del Conocimiento, y como un vehículo alternativo para la comprensión del

proceso de diseño.

Page 125: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

115

La definición precisa de un conjunto de conceptos teóricos sobre diseño y su

articulación a través de un proceso al nivel del conocimiento permiten dar una definición

inequívoca del proceso de diseño y sus clases. Gracias a ello se pueden establecer con

claridad las diferencias entre diseño y resolución de problemas, y la forma en que ambos se

relacionan. Se pueden poner en relación otros trabajos y herramientas para el diseño y valorar

en que aspectos pueden realmente suponer un apoyo para los diseñadores.

En el siguiente capítulo se describe y analiza la tarea de exploración de criterios en

diseño, y se proponen técnicas computacionales que pueden ser potencialmente útiles para

facilitarla.

Aquí termina, por tanto, la exposición de teorías sobre diseño. En este capítulo y los

precedentes se ha puesto de manifiesto la existencia de dos importantes debates en el seno de

la IA en diseño. El primero es un debate filosófico sobre la naturaleza del diseño y la forma

en que diseñan los humanos. El segundo es un debate metodológico sobre la forma de

alcanzar sistemas informáticos de ayuda al diseño. En el trabajo descrito en este capítulo se

abordan aspectos importantes de ambas cuestiones.

Page 126: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 6

116

Page 127: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

117

CAPÍTULO 7

EXPLORACIÓN DE CRITERIOS

“La validez de una técnica comprende la técnica

y el asunto que trata.” Joseph Weizenbaum, 1976

En este capítulo se ponen en relación las contribuciones de la tesis con la investigación

sobre diseño en Inteligencia Artificial descrita en capítulos precedentes.

El marco de esta contribución es el desarrollo de herramientas de ayuda al diseño,

apartándose de la difícil y dudosa pretensión de construir sistemas capaces de realizar “diseño

automático”. Con la ayuda del ordenador se pretende apoyar una tarea concreta: determinar el

impacto que puede tener en la resolución del problema la aplicación de conjuntos de criterios

alternativos (Mandow y Pérez de la Cruz, 1998). En adelante se denomina a dicha tarea como

exploración de criterios.

Los capítulos precedentes han presentado una selección representativa (aunque

ciertamente no exhaustiva) de trabajos que han contribuido a una mayor formalización y

conceptualización del diseño, desde las propuestas iniciales de la IA hasta la teoría al nivel del

conocimiento descrita en el capítulo 6.

Esta teoría pretende ser útil, precisamente, en la construcción de modelos al nivel del

conocimiento para tareas particulares de diseño. Muchas de las modernas metodologías y

entornos de la IC toman estos modelos como punto de partida para el desarrollo de SBC, y los

acompañan, a modo de especificación, de un análisis de la estructura de tarea (task structure)

en la línea propuesta por (Chandrasekaran, 1992). El entorno KSM (Cuena y Molina, 1994),

ya comentado en la sección 2.7, apoya activamente la especificación de sistemas al nivel del

conocimiento basándose en estas ideas.

Existen diversas propuestas sobre la estructura de tarea para algunas clases de diseño

(Chandrasekaran, 1990) (Bernarás, 1994). En (Smithers, 1998) se advierte que, en general, la

Page 128: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 7

118

estructura de una tarea de diseño dependerá de detalles del domino, del contexto, y del tipo de

diseño que se realice.

El objeto de estudio de esta tesis se centra en una única subtarea presente en muchas

tareas de diseño: la exploración de criterios. Más concretamente, se resalta la resolución de

problemas multicriterio como una subtarea de la exploración de criterios. La tercera parte de

la tesis presenta un conjunto de algoritmos que pueden emplearse como métodos genéricos

para la resolución de problemas multicriterio. En la cuarta parte se describen dos casos

concretos en los que uno de estos métodos se instancia para la resolución de subtareas en los

dominios de diseño de viviendas y carreteras respectivamente.

La exploración de criterios es una subtarea importante en la construcción y resolución

de problemas en diseño, es decir, en la construcción y búsqueda en espacios de estados. Otros

aspectos fundamentales relacionados son la selección de los elementos constructivos y la

forma de emplearlos, así como la evaluación de los resultados obtenidos tras la resolución de

los problemas planteados.

Aunque ya se ha desarrollado con cierta extensión la importancia de la exploración de

criterios en diseño, no está de más realizar aquí de nuevo una breve síntesis:

• El carácter multicriterio de los problemas de diseño está recogido explícitamente en

todas las teorías presentadas. Aún así, es destacable la escasez de algoritmos y

técnicas multicriterio para la resolución de problemas en IA. La imposibilidad de

tener en cuenta a priori todos los criterios posibles en la resolución de un problema se

ha identificado como uno de los factores fundamentales para considerar un problema

como “mal estructurado”. Las causas de esta imposibilidad pueden encontrarse en la

cantidad de dichos criterios (Simon, 1973) o en el hecho de que la intención del

diseñador evoluciona en función de la respuesta de la situación (Schön, 1983). Buena

parte del proceso de diseño puede invertirse, por tanto, en averiguar qué

consecuencias tiene la consideración de diversos criterios, y de qué modo pueden

entrar en conflicto unos con otros. Mas aún, para Schön la aparición de un conflicto

en los fines no es un problema técnico, sino un desencadenante más de la indagación

que lleva a cabo el diseñador.

Page 129: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

119

• Desde la perspectiva de los enfoques pragmáticos la sola exploración del subespacio

de criterios permite caracterizar un proceso de resolución de problemas como diseño

(Gero, 1994a) (Navinchandra, 1991).

• Sin embargo, es KLDE0, la teoría del diseño al nivel del conocimiento (Smithers,

1998), la que permite identificar con mayor precisión el lugar que ocupa la tarea de

exploración de criterios en un proceso de diseño (ver figura 7.1). La finalidad es

identificar de que modo la formulación del problema puede ser inconsistente,

incompleta, imprecisa y/o ambigua.

ND {Rj:JRj} {P1:JP1} {S1,1:JS1,1} {A1,1:JA1,1}

{S1,p:JS1,p} {A1,p:JA1,p}

{Pn:JPn} {Sn,1:JSn,1} {An,1:JAn,1}

{Sn,q:JSn,q} {An,q:JAn,q}

KQ KDR

{Q1,..,r:JQ1,..,r} {DR1,..,t:JDR1,..,t}

KR KP KS KA

KPR

KRR

Figura 7.1. Lugar de la exploración de criterios en la forma básica del diseño según KLD

E0.

Este es quizá el momento adecuado para señalar que las técnicas y algoritmos que

se describen más adelante no pretenden servir de modelo para los mecanismos simbólicos

empleados por la mente humana en la resolución de problemas.

7.1. TÉCNICAS DE APOYO PARA LA EXPLORACIÓN DE CRITERIOS

EN DISEÑO

Si algo nos enseñan los estudios sobre diseño es que en la búsqueda de soluciones ante

una situación problemática es importante considerar y probar distintas alternativas. La propia

construcción de sistemas de ayuda al diseño no es una excepción en este sentido. La figura 7.2

muestra un esquema con diversas propuestas para la ayuda en la exploración de criterios en

Page 130: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 7

120

sistemas de IA. Una breve descripción de los inconvenientes que presenta cada una de ellas

servirá para justificar el estudio que se aborda en los siguientes capítulos.

Apoyo en la exploración decriterios

Preferenciaspreestablecidas

ATMS Enfoques basados en laTeoría de la Decisión

Multicriterio

Enfoquesmultiobjetivo

Enfoques basadosen la satisfacción

de metas

MICAD Reformulación derestricciones como

objetivos Figura 7.2. Técnicas de ayuda para la exploración de criterios

Posiblemente el enfoque más sencillo es proporcionar un conjunto fijo de preferencias

preestablecidas que permitan resolver los posibles conflictos para un conjunto de criterios

dado. En (Myers y Pohl, 1992) se describe una experiencia de este tipo con el sistema ICADS

(Intelligent Computer Aided Design System), una arquitectura de pizarra ensayada en el

dominio del diseño arquitectónico en planta. El sistema incluye un interfaz gráfico donde el

diseñador humano realiza su trabajo, de modo que el estado actual de su diseño queda siempre

registrado en una “pizarra”. Además, ICADS consta de seis agentes basados en conocimiento

que evalúan la actividad de un diseñador humano y le proporcionan consejos sobre la forma

de completar el diseño en curso. Cada agente realiza el seguimiento de un conjunto

determinado de criterios (determinación de acceso a los espacios, predicción del coste de

construcción, iluminación diurna, control de ruidos, elección del sistema estructural, y

comportamiento térmico). Un agente adicional, experto en coordinación, resuelve los

conflictos que se presentan cuando dos o más agentes proponen consejos incompatibles. Para

ello dispone de un conjunto de reglas predefinidas que, en esencia, representan compromisos

parciales entre los conjuntos de criterios defendidos por cada agente.

El principal problema que presenta este enfoque es la necesidad de proporcionar una

regla de resolución de conflictos para cada conflicto posible entre todos los subconjuntos

Page 131: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

121

posibles de agentes. Además, dichas preferencias deben establecerse independientemente del

contexto en el que pudieran ser aplicadas. Aunque puede existir un cierto consenso

profesional en la resolución de determinados conflictos, lo normal es que se trate de una

decisión subjetiva influida por cada situación concreta. Myers y Pohl proponen dos enfoques

alternativos a la resolución de conflictos preestablecida:

• Codificar un conjunto de estrategias de coordinación “naturales” que puedan ser

seleccionadas por el usuario para resolver los posibles conflictos. Esto conduce la

investigación a los campos de la IA distribuida y los protocolos de coordinación.

• Aprender las preferencias del usuario de forma gradual y dinámica. Este enfoque se

analiza brevemente más adelante, en el contexto de la teoría de la decisión

multicriterio.

Por otra parte, (Logan y otros, 1992b) proponen el uso de un ATMS (Assumption-

based Truth Maintenance System) para detectar los posibles conflictos durante la resolución

de un problema, dejando en manos del diseñador todas las decisiones relativas a la resolución

del conflicto y la posible reformulación del problema. Esta alternativa se ha ensayado en el

sistema EDS (Edinburgh Designer System) (Logan y otros, 1992a), una arquitectura basada

en pizarra-ATMS que registra todas las acciones del diseñador y realiza un seguimiento de las

mismas, infiriendo sus consecuencias necesarias. El sistema realiza pruebas de consistencia

para encontrar inconsistencias entre las restricciones que se establecen como suposiciones y

las decisiones de diseño que va tomando el usuario. A menudo estas inconsistencias pueden

resolverse cambiando la solución propuesta, pero otras veces la propia formulación del

problema es inconsistente y debe ser redefinida. A medida que el usuario explora nuevas

alternativas y subproblemas, asignando valores a parámetros o cambiando las restricciones, el

ATMS construye una estructura de justificación que “registra las dependencias entre los

criterios que el diseñador pretende comprender”.

La detección automática de conjuntos de criterios inconsistentes, y la posibilidad de

explorar en paralelo diversos subconjuntos consistentes de los mismos son dos ejemplos de

cómo esta arquitectura sirve de apoyo en la exploración del diseño. Algunos problemas de

este enfoque son proporcionar una interfaz adecuada del usuario con la estructura de la

justificación, y el hecho de que el ATMS no distingue entre inconsistencias “triviales” (por

Page 132: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 7

122

ejemplo, debidas a pequeñas diferencias en los valores de los parámetros) y otras más

“radicales”.

7.2. ENFOQUES MULTICRITERIO PARA LA EXPLORACIÓN DE

CRITERIOS

En la presente tesis se propone que el uso de técnicas inspiradas en resultados y

análisis previos de la Investigación Operativa (IO) pueden ser de ayuda para abordar el

problema de la exploración de criterios en diseño. Como destaca (Simon, 1987), los orígenes

de la IA y la IO son bastante próximos, y buena parte de los primeros años de historia de la IA

transcurrieron en los sótanos de una escuela de comercio. Concretamente “[en la década

posterior a 1955] en la Westinghouse Electric Corporation, los ingenieros construyeron

sistemas expertos para el diseño automático de motores, generadores y transformadores”. Por

supuesto, esto no quiere decir que la IA sea una parte ni una derivación de la IO. Tampoco se

trata de abrazar incondicionalmente la metodología de diseño esencialmente racionalista

propugnada tradicionalmente por la IO y que no ha estado exenta de críticas (Winograd,

1990). Simplemente se trata de destacar que han existido, existen, y probablemente existirán

en el futuro, puntos de encuentro importantes entre ambas disciplinas.

La representación de las preferencias de un agente decisor (por ejemplo, un diseñador)

ha sido objeto de especial interés dentro de la IO. La teoría de la decisión multicriterio

(TDM) (Yu, 1985) (Romero, 1993) se ocupa de las bases para la decisión racional con

múltiples criterios desde un punto de vista matemático. Algunos conceptos básicos de los que

se ocupa la TDM pueden importarse directamente a la IA. Concretamente los conceptos de

atributo, objetivo, meta y criterio han resultado ser especialmente útiles para la descripción de

preferencias multicriterio (para una descripción más detallada véase la sección 8.4):

• Un atributo es una propiedad mensurable de las soluciones a un problema.

• Un objetivo representa la dirección de mejora preferida para un atributo: maximizarlo

o minimizarlo.

• Una meta surge de la unión de un atributo con un nivel de aspiración numérico, que

representa un nivel de logro aceptable para el atributo. Una meta se representa

matemáticamente de la siguiente forma:

Page 133: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

123

aspiracióndenivelatributo

≥=≤

Es frecuente representar del mismo modo la restricciones de muchos

problemas. Sin embargo el significado es diferente en cada caso. Si una alternativa

incumple alguna restricción normalmente queda descartada como solución válida al

problema. El incumplimiento de una meta, por el contrario, significa únicamente que

el decisor preferiría obtener mejores resultados pero la alternativa puede seguir

siendo una solución perfectamente válida al problema.

• El concepto de criterio comprende los conceptos de objetivo, meta y atributo. Los

problemas multicriterio vienen definidos en términos de múltiples objetivos, metas

y/o criterios.

Existen algunos precedentes de trabajos en esta intersección de la investigación de

diseño en IA y la TDM. Por ejemplo, (Sykes y White, 1991) proporcionan una metodología

denominada MICAD (Multiobjective Intelligent Computer Aided Design) basada en una

generalización de la teoría de la utilidad multiatributo. El diseño se considera como “un

proceso de búsqueda multiobjetivo conceptualmente sencillo y guiado por las preferencias

[del diseñador]”. El método emplea un conjunto de pesos, que miden la importancia relativa

de los objetivos considerados y sirven a la vez para representar las preferencias y guiar la

búsqueda hacia soluciones satisfactorias. El valor de estos pesos se aprende de forma gradual

y dinámica. Las afirmaciones en lenguaje natural del usuario sobre la importancia relativa de

los objetivos, y las elecciones realizadas entre pares de soluciones alternativas, se traducen en

restricciones lineales sobre los pesos. A partir de estas restricciones se obtienen nuevos

conjuntos de pesos que se emplean para buscar nuevas alternativas hasta que se consigue una

solución satisfactoria. Los autores proporcionan también varios métodos para resolver las

posibles inconsistencias que puedan surgir de los enunciados y elecciones del usuario.

Otro ejemplo se encuentra en los trabajos de (Navinchandra, 1991), ya comentados

extensamente (véase el capítulo 5). En ellos se propone la reformulación de todos los criterios

del problema como objetivos. Pueden emplearse entonces métodos de búsqueda multiobjetivo

para relajar las restricciones de forma sistemática. El método resulta así adecuado para

resolver la inconsistencia en problemas sobre-restringidos. El principal inconveniente de este

Page 134: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

Capítulo 7

124

método es que el usuario ejerce muy poco control sobre el proceso de relajación. En el caso

de los problemas de diseño, al ser la relajación sistemática y automática, tampoco es posible

proporcionar una justificación adecuada de las soluciones obtenidas.

7.3. UNA NUEVA PROPUESTA

Hasta la fecha se han probado en el contexto de la IA varias alternativas para el apoyo

en la exploración de criterios, aunque ninguna ha resultado completamente satisfactoria.

También son pocas las técnicas multicriterio que se han ensayado en la IA. Posiblemente el

desarrollo de sistemas eficaces de ayuda al diseño pase por un tratamiento más completo de

estas técnicas.

Una posibilidad abierta a la investigación es el uso de algoritmos multicriterio,

estudiados mayoritariamente hasta ahora en el campo de la Investigación Operativa. La

propuesta que se realiza aquí es el desarrollo de algoritmos multicriterio para la satisfacción

de metas. Empleados adecuadamente, pueden servir para ayudar en la exploración de la

inconsistencia y ambigüedad de los criterios superando algunas de las dificultades que

presentan otras técnicas.

En los próximos capítulos se examina la adecuación de las formulaciones de

problemas basadas en metas para representar conjuntos de criterios y preferencias, y servir,

por tanto, de apoyo en la exploración de problemas de diseño. Los métodos basados en metas

permiten en muchos casos una formulación natural de criterios y preferencias y permiten

analizar de forma elegante los problemas sobre-restringidos (inconsistentes). También pueden

resultar adecuados en el análisis de la ambiguedad. Sin embargo, identificar la adecuación de

las formulaciones basadas en metas es solo un comienzo. Para construir sistemas de diseño

basados en esta idea es necesario construir algoritmos efectivos para la satisfacción de metas.

Esta tarea se aborda en los siguientes capítulos.

Page 135: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

125

III. ALGORITMOS DE BÚSQUEDA HEURÍSTICA

MULTICRITERIO

La tercera parte de la tesis presenta sus principales contribuciones. El capítulo 8

describe algunos conceptos tomados de la Teoría de la Decisión Multicriterio. Concretamente

se formaliza el concepto de preferencia y se definen las reglas de decisión más comunes. El

capítulo 9 introduce una formalización de los problemas de búsqueda multicriterio y un marco

general para su resolución. Varios procedimientos y algoritmos para búsqueda multicriterio se

describen y analizan en detalle. Por último, el capítulo 10 se dedica a analizar METAL-ALN*,

un algoritmo para problemas de búsqueda con satisfacción de metas y atributos aditivos.

Page 136: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

126

Page 137: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

127

CAPÍTULO 8

PREFERENCIAS Y PROBLEMAS MULTICRITERIO

“You can't always get what you want.”

M. Jagger y K. Richards, 1969

En este capítulo se resumen los conceptos fundamentales de la Teoría de la Decisión

Multicriterio que se emplean más adelante. Concretamente se definen y analizan los

conceptos de preferencia y estructura de preferencias. Con su ayuda es fácil dar una definición

formal de los problemas de decisión multicriterio. Por último se introducen las reglas de

decisión más comúnmente empleadas en este tipo de problemas.

8.1. EL CONCEPTO DE PREFERENCIA

Un concepto fundamental en la toma de decisiones es el de preferencia. En esta

sección se define el significado formal del mismo y sus propiedades más interesantes,

siguiendo en parte las definiciones proporcionadas en (Yu, 1985). La notación empleada es,

sin embargo, diferente: los valores escalares se representan mediante letras minúsculas, los

conjuntos con letras mayúsculas, y los vectores mediante mayúsculas en negrita.

Considérese un conjunto de elementos Y. Dados dos elementos Y1, Y2 ∈ Y, el

resultado de compararlos puede ser:

! Y1 es preferible a Y2, relación binaria que denotaremos por el operador p, es decir,

Y1 p Y2.

! Y1 es menos preferible que Y2, relación binaria que denotaremos por el operador

f, i.e. Y1 f Y2. Obviamente no pueden darse simultáneamente las dos relaciones

Y1 p Y2 e Y1 f Y2.

Page 138: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

128

! Y1 e Y2 son igualmente preferibles o bien su preferencia es, de momento,

indefinida17, relación binaria que denotaremos por el operador ~, i.e. Y1 ~ Y2.

Además Y1 ~ Y2 sii no se cumplen Y1 p Y2 ni Y1 f Y2.

17 En (Yu, 1989) se distingue el caso en que dos alternativas son igualmente preferibles (denotado por el operador ~), de aquel en que la preferencia es indefinida y está aún por clarificar (denotado por el operador ?). Preferimos la definición más sencilla de (Yu, 1985) por no ser necesaria la distinción adicional para nuestros propósitos.

Una preferencia inducida por una relación binaria R es un subconjunto de Y × Y

denotado por {R}. Siempre que algún (Y1, Y2) ∈ {R}, lo denotaremos por Y1 R Y2. Podemos

definir así las preferencias {p}, {f}, {~} empleando relaciones binarias. A partir de ellas

definiremos también las siguientes:

! {~p} = {p} ∪ {~}

! {f~} = {f} ∪ {~}

Los conjuntos {p} y {f} serán siempre simétricos, ya que los conceptos mejor y peor

son antagónicos, es decir,

(Y1, Y2) ∈ {p} ⇔ (Y2, Y1) ∈ {f}

Por tanto, dado el conjunto {p} pueden calcularse {f} y {~}. Análogamente, dado el

conjunto {f} pueden calcularse {p } y {~}. Sin embargo, {~} no es suficiente para poder

calcular {p} y {f}.

Definimos una estructura de preferencias como el conjunto de preferencias {p}, {f},

{~}, {~p}, {f~}. Puesto que a partir de la relación p pueden construirse todos los conjuntos

anteriores, denotaremos con (p, Y) la estructura de preferencias inducida por la relación p

sobre el conjunto de alternativas Y.

Page 139: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

129

8.2. CARACTERIZACIÓN DE LAS PREFERENCIAS

Esta sección comienza definiendo algunas propiedades comunes de las relaciones

binarias. A continuación se emplean para caracterizar lo que comúnmente se entiende por

relación de preferencia.

Definición Una relación binaria R sobre Y es:

a) Reflexiva, si ∀ Y ∈ Y se cumple que (Y, Y) ∈ R. En caso contrario es irreflexiva.

b) Simétrica, si ∀ Y1, Y2 ∈ Y, se cumple que (Y1, Y2) ∈ R ⇒ (Y2, Y1) ∈ R. En caso

contrario es asimétrica.

c) Transitiva, si ∀ Y1, Y2, Y3∈ Y, se cumple que (Y1, Y2) ∈ R ∧ (Y2, Y3) ∈ R ⇒

(Y1, Y3)∈ R.

d) Completa, si ∀ Y1, Y2 ∈ Y, Y1 ≠ Y2, se cumple que (Y1, Y2) ∈ R ∨ (Y2, Y1) ∈ R.

e) Una relación de equivalencia, si es reflexiva, simétrica y transitiva.

Para ser consistentes con el uso cotidiano del concepto de preferencia supondremos

que, siempre que hagamos referencia a una estructura de preferencias (p, Y):

! {p} y {f} son irreflexivas y asimétricas,

! {~} es reflexiva y simétrica.

Puesto que {p}, {f} y {~} forman una partición de Y, tenemos que {~p}y {f~} son

completas.

En general no puede afirmarse que las relaciones {p}, {f}, {~}, {~p}, {f~} sean

transitivas. La propiedad transitiva, sin embargo, simplifica muchos problemas, por lo que es

interesante saber si un determinado problema la cumple o no.

Page 140: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

130

Definición

a) Una preferencia {p} ó {f} es un orden parcial si es transitiva.

b) Una preferencia {p} ó {f} es un orden débil si es transitiva y su relación de orden

inducida {~p} ó {f~} es también transitiva.

c) Si un orden débil es completo, entonces se llama orden estricto.

La ordenación débil es en realidad una propiedad muy fuerte tal y como enuncia el

siguiente teorema, demostrado en (Yu, 1985 p. 13).

Teorema:

Sea {p} un orden parcial. También será un orden débil si y solo si:

i.) La preferencia inducida {~} es una equivalencia (reflexiva, simétrica y transitiva).

ii.) Además se cumple una de las condiciones siguientes:

! Y1 p Y2 ∧ Y2 ~ Y3 ⇒ Y1 p Y3,

! Y1 ~ Y2 ∧ Y2 p Y3 ⇒ Y1 p Y3.

♣♣♣♣

8.3. PROBLEMAS MULTICRITERIO

Un problema de decisión multicriterio viene definido por los siguientes elementos:

1. Un conjunto X de alternativas, que representa el espacio de las decisiones o

estructuras posibles.

2. Un conjunto de funciones de atributos A = {a1,...,aq}, o propiedades mensurables

de cada alternativa X ∈ X.

Page 141: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

131

3. Un conjunto Y, que contiene los resultados de cada alternativa medidos en el

espacio de los atributos, Y = {A(X) = (a1(X),...,aq(X)) / X ∈ X}. Cada elemento de

Y puede ser:

• Un punto, i.e Y ⊆ ℜ q, donde ℜ denota el conjunto de los números reales y q es

el número de atributos considerados. En tal caso se dice que el problema es

determinista.

• Una variable aleatoria, en el caso de que exista incertidumbre en el cálculo de

los atributos.

4. La estructura de preferencias del centro decisor, definida sobre el conjunto de

resultados Y. La estructura de preferencias puede venir definida por una regla de

decisión concreta. Sin embargo, también es posible que el centro decisor no sea

capaz de definir explícitamente o de forma completa su estructura de preferencias.

Todos los problemas que se estudian en adelante corresponden al caso determinista.

El concepto de solución óptima a un problema de decisión multicriterio puede

caracterizarse en términos de la preferencia empleada. Dado un conjunto de resultados Y ⊆

ℜ q y una preferencia {p} consideraremos solución óptima, no dominada o minimal a un

problema a toda aquella solución X* ∈ X tal que:

Y* = A(X*) ∧ ¬∃ Y' ∈ Y / Y' p Y*

Dicho con otras palabras, una solución es óptima, no dominada o minimal si no existe

ninguna otra que sea preferible a ella.

8.4. REGLAS DE DECISIÓN

Como ya se ha comentado en la sección anterior, la estructura de preferencias de un

centro decisor viene definida con frecuencia por una regla de decisión concreta. Como señala

(Yu, 1985, p. 2) “cada individuo es único y no existe una teoría o descripción sencilla que

pueda modelar el comportamiento decisor de ninguna persona de forma perfecta durante un

largo periodo de tiempo". Sin embargo, existen al menos tres esquemas lógicos para la toma

de decisiones multicriterio actualmente asentados y que han sido objeto de estudio detallado

Page 142: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

132

en los últimos años. A ellos añadiremos uno más, la preferencia lexicográfica, que si bien no

es tan frecuente, presenta propiedades computacionales ventajosas en los problemas de

búsqueda en grafos. A continuación se describe brevemente cada uno de ellos.

El primer esquema se basa en la suposición de que todos los atributos son de alguno de

los tipos "cuanto más mejor" o bien "cuanto menos mejor", es decir, el centro decisor es

insaciable. Se define un objetivo como la dirección de mejora de un atributo, i.e.

maximización o minimización. Estos problemas se denominan problemas multiobjetivo, o a

veces problemas de optimización vectorial, en contraposición con aquellos que tienen un solo

objetivo, que se denominan de 'optimización escalar'. La regla de decisión viene caracterizada

por un conjunto de objetivos y consiste en seleccionar una alternativa que sea óptimo de

Pareto, es decir, dados dos vectores Y = (y1, y2,...yq), Y’= (y1’, y2’,...yq’), Y, Y’ ∈ Y, y

suponiendo que se desean minimizar todos sus componentes:

Y p Y’ sii ∀ i yi ≤ yi‘ ∧ Y ≠ Y’

La preferencia representada por el orden de Pareto establece un orden parcial sobre los

elementos de Y, pero no débil.

La segunda alternativa trata de construir una función real (escalar), denominada

función de valor, que combina adecuadamente los valores de los atributos de cada alternativa.

Si dicha función existe y se construye adecuadamente, a las alternativas minimales les

corresponderá el valor máximo de la misma. Dicho en otras palabras, se supone que el centro

decisor asigna un valor a cada alternativa, y que elegirá de entre ellas la que considere más

valiosa. Denominaremos a estos problemas de valor multiatributo18. La preferencia

representada por una función de valor establece un orden débil sobre Y.

En principio no es necesario que en los problemas de valor multiatributo los atributos

sean de los tipos "cuanto más/menos mejor". Sin embargo, es lo más frecuente.

El tercer esquema se basa en el establecimiento de metas o niveles de aspiración

satisfactorios para cada atributo. Denominaremos a estos problemas de satisfacción de

18 En algunas ocasiones se denomina a la función de valor mediante el término función de utilidad. Seguiremos aquí el convenio de denominar función de valor al caso determinista y función de utilidad al caso en que aparecen probabilidades (Chankong y Haimes, 1983, cap. 3), (Yu, 1985, cap. 5).

Page 143: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

133

metas. Más concretamente diremos que una meta es la combinación de un atributo con un

valor numérico específico o nivel de aspiración. Cada nivel de aspiración representa un nivel

aceptable de logro para un atributo. Las metas se representan matemáticamente mediante

inecuaciones de la forma:

aspiracióndenivelatributo

≥=≤

En un sentido estricto, un conjunto de metas no proporciona mucha información sobre

las preferencias del centro decisor. Las metas representan únicamente la división del conjunto

de resultados Y en dos subconjuntos: el de aquellos resultados que satisfacen todas las metas

(soluciones minimales), y el de aquellos que no.

Por este motivo las formulaciones basadas en metas incorporan normalmente

suposiciones adicionales sobre las preferencias:

1) Cuando no es posible alcanzar ninguna solución que satisfaga todas las metas, las

soluciones minimales se consideran aquellas que estén “más cerca” de

satisfacerlas. La preferencia queda definida entonces por la función de distancia

elegida, que puede ponderar la importancia que se concede a la satisfacción de

cada meta. En este caso el problema se denomina de satisfacción de metas

ponderadas19.

2) En casos como el anterior, a veces se establecen también niveles de prioridad

diferentes para las metas. Las satisfacción de las metas incluidas en un

determinado nivel de prioridad se considera infinitamente más importante que la

satisfacción de las metas incluidas en niveles menos importantes. Si no es posible

satisfacerlas todas, por lo menos se intenta satisfacer el mayor número posible,

aunque respetando estrictamente el orden de prioridad. Estos problemas se

19 Un esquema de decisión relacionado que aparece con frecuencia en los libros sobre TDM es la programación compromiso. Conceptualmente la idea es la misma de las metas ponderadas, elegir la alternativa que se acerque más a los niveles que se consideran satisfactorios. La diferencia es que, adicionalmente, se considera que todos los atributos son del tipo “cuanto más/menos mejor” y los niveles de aspiración se establecen como los valores óptimos de cada uno de los objetivos por separado. Sin embargo, el cálculo previo de estos valores óptimos puede suponer un inconveniente computacional nada despreciable en los problemas de IA.

Page 144: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

134

denominan de satisfacción de metas lexicográficas. Es interesante señalar aquí que

el uso de prioridades excluyentes introduce discontinuidades en las preferencias.

Esto significa que en general no es posible encontrar una función de valor

equivalente a un esquema de preferencias lexicográfico (véanse, por ejemplo,

(Romero, 1991, pp. 43-46) o (Romero, 1993)).

3) Por último, siempre que todos los atributos sean del tipo “cuanto más/menos

mejor”, también es frecuente establecer preferencia por aquellas alternativas que,

además de cumplir cualquiera de las condiciones anteriores, sean óptimos de

Pareto.

Es muchos problemas el espacio de alternativas X viene definido en términos de

restricciones, que se representan también mediante inecuaciones. Sin embargo, metas y

restricciones tienen un significado diferente. Cuando una alternativa no satisface una de estas

restricciones significa que no es digna de ser considerada como candidata a solución del

problema. Por el contrario, la no satisfacción de una meta significa, simplemente, que el nivel

de aspiración que hubiera deseado el centro decisor no puede ser alcanzado. Las metas se

utilizan para representar preferencias o restricciones "débiles" que pueden relajarse en caso

necesario. En realidad las restricciones que aparecen normalmente en muchos problemas se

pueden relajar y podrían considerarse como metas.

Por último, consideraremos la preferencia lexicográfica. Se trata de un refinamiento

del esquema multiobjetivo, en el que a cada objetivo se le asigna un grado de importancia o

nivel de prioridad diferente. La consecución de cada objetivo se considera infinitamente más

importante que la consecución de los objetivos de menor prioridad. De este modo la

preferencia lexicográfica establece un orden estricto en Y.

El concepto de criterio, tal y como se emplea en este contexto, abarca los conceptos de

objetivo, meta y atributo. Un problema multicriterio vendrá formulado por tanto en términos

de múltiples objetivos, metas o atributos.

8.5. COMENTARIOS

En este capítulo se ha presentado una definición de problema de decisión multicriterio.

También se ha formalizado el concepto de preferencia y se han descrito las reglas de decisión

Page 145: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

135

más comunes. Ni que decir tiene que cada uno de estos esquemas tiene sus adeptos y conlleva

toda una línea de pensamiento.

Es un hecho universalmente reconocido que las técnicas multiobjetivo pierden gran

parte de su eficacia para problemas con más de tres objetivos. El número de soluciones

óptimos de Pareto puede ser entonces muy grande, y su presentación gráfica difícil de

interpretar. En cualquier caso su estudio es fundamental, ya que la racionalidad representada

por el orden de Pareto forma parte de la inmensa mayoría de los problemas de decisión

multicriterio.

Por otro lado, el uso de funciones de valor está fuertemente relacionado con las teorías

económicas actuales, donde la continuidad de las preferencias es aceptada como un axioma20.

El uso de metas lexicográficas establece una diferencia no solo en la forma, sino también

conceptual con este esquema, ya que representa preferencias no continuas21. En (Romero,

1991, pp. 45-46) se zanja deportivamente este enfrentamiento:

“Las características de la situación del problema indicarán si un orden de

preferencias lexicográfico es una forma deseable o no de abordar el problema de

decisión considerado."

Es imposible no señalar aquí que el uso de preferencias con metas u objetivos

agrupados en niveles de prioridad parece perfectamente consistente con los procesos de

diseño humanos descritos por Schön (véase el capítulo 4). Los diseñadores humanos superan

la complejidad del diseño explorando diversas alternativas y realizando experimentos donde

tienen en cuenta sólo algunos criterios, aunque también examinan los efectos producidos en

los demás sin permitir que distorsionen el experimento original. El esquema de preferencias

basado en metas y la búsqueda de soluciones satisfactorias también es coherente con la idea

de racionalidad limitada defendida por Herbert Simon (Romero, 1993, p.62). Esto apoya la

20 Al aceptarse axiomáticamente se convierte en una suposición “controvertida y cuya falsedad es imposible de demostrar” en palabras de (Romero, 1991, p. 45).

21 Existen ejemplos de problemas con metas lexicográficas en los que Y es continuo, donde se puede demostrar que existen más clases de resultados indiferentes que números reales (véase por ejemplo, (Romero, 1993, pp. 90-94)). Es imposible entonces, por definición, construir una función de valor para tales problemas. Sin embargo, en los problemas de búsqueda en grafos no existe tal problema. Si el grafo es localmente finito, el número de soluciones siempre es finito numerable, por lo que al menos en teoría siempre sería posible asignar un valor real y diferente a cada una de ellas.

Page 146: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

136

hipótesis de que las preferencias lexicográficas pueden representar un medio de expresión

adecuado durante los procesos de experimentación del diseño.

A lo largo de los últimos años se han desarrollado múltiples técnicas y algoritmos para

la resolución de los diversos tipos de problemas multicriterio, especialmente sobre la base de

los algoritmos desarrollados en el campo de la Investigación Operativa para el caso de un solo

objetivo. También han aparecido diversas técnicas, denominadas interactivas, para el caso en

que el centro decisior no pueda expresar inicialmente sus preferencias mediante una regla de

decisión concreta.

Los capítulos siguientes muestran como las técnicas de optimización en grafos

mediante búsqueda heurística empleadas por la Inteligencia Artificial pueden generalizarse

también para problemas multicriterio. Concretamente la generalización presentada se refiere

al caso determinista, e incluye las cuatro reglas de decisión descritas en este capítulo.

Page 147: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

137

CAPÍTULO 9

BÚSQUEDA HEURÍSTICA MULTICRITERIO

"We're off to see the Wizard,

the wonderful Wizard of Oz!" E.Y. "Yip" Harburg, 1938

9.1. INTRODUCCIÓN

En los últimos años han aparecido diversos algoritmos y técnicas para problemas de

búsqueda en grafos multicriterio (Loui, 1983), (Martins, 1984), (Corley y Moon, 1985),

(Henig, 1986), (Stewart y White, 1991), (Navinchandra, 1991), (White y otros, 1992), (Tung

y Chew, 1992), (Mandow y Millán, 1997).

Algunos de estos algoritmos se han desarrollado como generalizaciones para casos

particulares de conocidas técnicas de búsqueda con un solo objetivo, siempre bajo diferentes

supuestos y usando notaciones y terminologías diversas.

En este capítulo se aborda la tarea de establecer un marco de referencia común a todos

los algoritmos de búsqueda heurística. Para ello se construye una generalización del conocido

algoritmo de búsqueda primero el mejor (denominado BF* en (Pearl, 1984)), que emplea

funciones de coste escalares y la relación de preferencia < ("menor que"). La generalización

realizada permite desarrollar algoritmos para los principales problemas multicriterio, que

emplean funciones de atributos vectoriales y relaciones de preferencia generales. Cuando se

considera un vector de atributos para cada camino el principio de optimalidad, utilizado en

programación dinámica y en los algoritmos tradicionales de búsqueda heurística, deja de tener

validez universal (ya no es cierto en general que un camino minimal este compuesto de

subcaminos minimales). Como señala (Loui, 1983), la generalización de las técnicas de

búsqueda tradicionales pasa fundamentalmente por encontrar soluciones a este problema.

Las contribuciones de este capítulo son las siguientes:

Page 148: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

138

• Una formalización del concepto de problema de búsqueda heurística con

preferencias.

• Dos algoritmos generales para problemas de búsqueda heurística con múltiples

atributos y criterios de preferencia generales, denominados POP* y POPN*.

• Una sistematización de los algoritmos de búsqueda heurística aparecidos en los

últimos años, sus relaciones y limitaciones.

• La incorporación a las técnicas de búsqueda heurística de algunos avances

realizados en algoritmos multicriterio de coste uniforme (Loui, 1983) y

programación dinámica multicriterio (Carraway y otros, 1990).

• Un conjunto de nuevos algoritmos para diversas clases de problemas de búsqueda

multicriterio.

La exposición comienza con la definición del concepto de problema de búsqueda

heurística con preferencias y la introducción de la terminología necesaria. A continuación se

describe POP*, un procedimiento general para encontrar una solución en este tipo de

problemas, junto a sus propiedades más interesantes. El siguiente paso consiste en presentar

particularizaciones de POP* para las reglas de decisión más comunes en los problemas

multicriterio: multiobjetivo, funciones de valor, objetivos lexicográficos y satisfacción de

metas. Por último se describe el procedimiento POPN*, generalizado para encontrar todas las

soluciones minimales de un problema, y se realizan algunos comentarios.

9.2. PROBLEMAS DE BÚSQUEDA HEURÍSTICA CON

PREFERENCIAS

Un paso previo a la presentación del procedimiento general para la búsqueda en grafos

es dar una definición precisa del tipo de problemas que pretendemos resolver y qué se

entiende por solución a los mismos.

La notación que sigue ha sido definida, en la medida de lo posible, de forma

consistente con la del algoritmo BF* (Pearl, 1984): las constantes, variables y funciones

reales y los nodos se representan mediante letras minúsculas; los vectores y funciones que

Page 149: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

139

devuelven vectores mediante mayúsculas en negrita; y los conjuntos y funciones que

devuelven conjuntos en mayúscula.

Definición

Un problema general de búsqueda en grafos viene definido por una tupla (G, s, Γ),

donde:

• G es un grafo localmente finito (i.e. de cada nodo parte un número finito de arcos).

Denotaremos los conjuntos formados por todos sus nodos y todos sus arcos con

NODOS(G) y ARCOS(G) respectivamente.

• s ∈ NODOS(G) es un nodo inicial.

• Γ ⊆ NODOS(G) es un conjunto de nodos objetivo o finales.

Definiremos un camino P en un grafo G como una sucesión de nodos (n1, n2,...nk) tales

que para cada dos nodos consecutivos ni, ni+1, el arco (ni, ni+1) pertenece a ARCOS(G).

Dado un problema (G, s, Γ), denominaremos solución o camino solución a cualquier

camino acíclico que comienza en el nodo inicial s y alcanza un nodo final γ ∈ Γ.

Definimos P-SET(s, Γ) como el conjunto de todos los caminos solución de un

problema de búsqueda (G, s, Γ). Este es el equivalente al conjunto X, de alternativas del

problema, tal como se presentó en el capítulo anterior.

Denominaremos solución parcial o camino solución parcial a cualquier camino en el

conjunto P-SET(s, NODOS(G)), es decir, cualquier camino acíclico que comienza en el nodo

inicial.

Definición

Dado un conjunto de vectores V y una relación de preferencia cualquiera p definida

sobre los mismos, definimos el conjunto minimal de V sobre p como:

MINIMAL(V, p) = {V ∈ V / ¬∃ W ∈ V W p V}. ♣

Page 150: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

140

Definición Un problema general de búsqueda en grafos con preferencias viene definido por una

tupla (G, s, Γ, A, pA), donde:

• (G, s, Γ) define un problema de búsqueda en grafos.

• (A, pA) definen una estructura de preferencias sobre los caminos solución del

problema, donde:

# A es una función A: P-SET(s, Γ) → ℜ q que a cada camino solución P = (s,...γ),

γ ∈ Γ le asigna un vector de atributos A(P)= (a1(P), a2(P),...aq(P))22.

# pA es una relación binaria o criterio de preferencia definida sobre los vectores

de atributos de los caminos, que se lee “es preferible a”. Utilizaremos también

la notación ~pA para denotar la relación “es preferible o indiferente con”, y pA

para la relación "es igual o preferible a".

Definimos A-SET*(s, Γ, A, pA) como el conjunto de vectores de atributos minimales

de todos los caminos solución a un problema (G, s, Γ, A, pA), es decir,

A-SET*(s, Γ, A, pA) = MINIMAL({A(P) / P ∈ P-SET(s, Γ)}, pA)

Definimos P-SET*(s, Γ, A, pA) como el conjunto de todos los caminos solución

minimales a un problema (G, s, Γ, A, pA), es decir,

P-SET*(s, Γ, A, pA) = {P’ ∈ P-SET(s, Γ) / A(P’) ∈ A-SET*(s, Γ, A, pA)}

Definición Un problema general de búsqueda heurística con preferencias viene definido por una

tupla (G, s, Γ, A, pA, F, pF, E, pp), donde:

22 Nótese que normalmente A podrá calcularse también sobre cualquier camino solución parcial, ya que dado un grafo G siempre se puede definir Γ = NODOS(G) (véase el caso escalar análogo en (Pearl, 1984, p. 100)).

Page 151: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

141

• (G, s, Γ, A, pA) define un problema de búsqueda en grafos con preferencias.

• (F, pF) definen una estructura de preferencias heurística sobre los caminos

solución parciales del problema, donde:

# F es una función F: P-SET(s, NODOS(G)) → P(ℜ r) , donde P(ℜ r) denota el

conjunto de las partes de ℜ r,. A cada camino P = (s,...n), n ∈ NODOS(G), la

función F le asigna un conjunto finito de vectores de la forma F = (f1, f2,... fr),

cada uno de los cuales es un vector de estimación heurística de atributos del

camino P.

# pF es una relación binaria o criterio de preferencia heurístico definido sobre los

vectores heurísticos de atributos de los caminos solución parciales, que se lee

“es heurísticamente preferible a”. Utilizaremos también la notación ~pF para

denotar la relación “es heurísticamente preferible o indiferente con”, y pF para

"es igual o bien heurísticamente preferible a".

• (E, pp) definen una estructura de preferencias sobre los caminos solución parciales

del problema, donde:

# E es una función E: P-SET(s, Γ) → P(ℜ s) que a cada camino P = (s,...n), n ∈

NODOS(G) le asigna un conjunto finito de vectores de evaluación de poda de

la forma E = (e1, e2,...es).

# pp es una relación de orden binaria o criterio de poda definido sobre los

vectores de evaluación de poda de los caminos, que se lee “permite descartar (o

podar) a”.

Las soluciones a un problema de búsqueda heurística con preferencias son las mismas

que para un problema simple de búsqueda con preferencias. La introducción de información o

conocimiento heurístico sobre el problema solo tiene por objeto permitir una búsqueda más

eficaz de la solución. Esta información extraordinaria permite juzgar con más conocimiento

de causa qué caminos solución parciales son más prometedores para conducir a una solución

minimal del problema.

Page 152: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

142

Muchas veces, la función F(P) proporciona directamente estimaciones de los vectores

de atributos A(P), es decir, q = r y cada fi es una estimación del atributo ai(P) correspondiente.

En otras ocasiones, los vectores de F(P) pueden contener otro tipo de información e incluso

incluir como parte el propio vector A(P). Normalmente a un mismo camino P = (s, n1, n2,... n)

podrán corresponderle varios vectores de estimación (por ejemplo, porque existan varios

nodos finales o varias estimaciones fi para cada ai(P)). Denotaremos a estas estimaciones por

FP. También emplearemos, por cuestiones tipográficas, la notación F[P] para referirnos a

algún vector perteneciente a F(P).

Cuando los elementos de F(P) son estimaciones directas de A(P) normalmente pF

suele ser la misma que pA, aunque en algunos casos el aprovechamiento de la información

heurística puede realizarse con otros criterios de preferencia distintos al propio pA.

También es lo más frecuente que E(P) sea {A(P)}, sin embargo en el caso multicriterio

pA no suele ser adecuado como criterio de poda, y en general pp ≠ pA. También es posible

emplear información heurística para la poda.

Las definiciones presentadas corresponden a generalizaciones cada vez mayores del

mismo problema, es decir, los problemas de búsqueda en grafos son un caso particular de los

problemas de búsqueda con preferencias, y estos a su vez son un caso particular de los de

búsqueda heurística.

9.3. POP*: UN PROCEDIMIENTO GENERAL PARA LA BÚSQUEDA

EN GRAFOS

Esta sección presenta un nuevo procedimiento general para la resolución de problemas

de búsqueda heurística en grafos con preferencias denominado POP* (Primero el mejor con

Orden de Preferencia general). Este procedimiento es lo bastante general como para incluir

diversos algoritmos de búsqueda para problemas multicriterio, tal como se muestra en la

sección 9.6. Su pseudocódigo aparece en el cuadro 9.1.

POP* es un procedimiento iterativo que va generando incrementalmente caminos

solución parciales. La generación de estos caminos puede realizarse de forma eficiente en

cuanto que: (F , pF) concentra el esfuerzo de búsqueda en la dirección adecuada, señalando en

cada momento qué caminos son los más prometedores para conducir a una solución; la

Page 153: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

143

aplicación del criterio de poda (E, pp) permite eliminar aquellos caminos que no van a ayudar

a encontrar la solución, y que no vale la pena seguir explorando.

Procedimiento POP*• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! solución-p (P), un predicado que devuelve "cierto" si su argumento P ∈ P-SET(s, Γ), y "falso" en otro

caso.! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! (F, pF), los datos que definen el criterio de preferencia heurístico.! Actualizar-CAMINOS-ABIERTOS(n’, n’’), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando los datos que definen el criterio de poda (E, pp)

• Salida:"FRACASO", o un camino solución al problema.

1. Crear una lista de caminos ABIERTOS con el camino P = (s).Crear una estructura CAMINOS para guardar todos los caminos solución parciales que se vayangenerando y se consideren interesantes. Inicialmente CAMINOS contiene sólo el camino P = (s).

2. Si ABIERTOS es una lista vacía, terminar el procedimiento con “FRACASO”.

3. Seleccionar un camino solución parcial P’ de ABIERTOS con vector de estimación FP’∈ F(P’) minimalsegún el criterio de preferencia heurístico, es decir:

∀ P’’ ∈ ABIERTOS ¬∃ FP’’∈ F(P’’) / FP’’ pF FP’.Si varios caminos cumplen la condición, desempatar arbitrariamente.Sea n’ el último nodo de P’. Eliminar de ABIERTOS todos los caminos que terminen en n’.

4. Si solución-p(P’) es "cierto", entonces terminar el procedimiento devolviendo P’.

5. Expandir n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G que no sonantecesores suyos en ningún camino de CAMINOS (para evitar ciclos).

6. Para cada nodo n’’ ∈ SUCActualizar-CAMINOS-ABIERTOS(n', n")

7. Volver al paso 2.

Cuadro 9.1. Pseudocódigo del procedimiento POP*. El procedimiento emplea dos estructuras de datos:

• CAMINOS: una estructura donde se registran todos los caminos solución

parciales encontrados y no descartados por la aplicación del criterio de poda.

• ABIERTOS: una lista con todos los caminos solución parciales registrados en

CAMINOS que pueden seguir explorándose.

POP* puede particularizarse para muy diversos tipos de problemas utilizando tres de

sus parámetros:

• Los dos que permiten calcular las preferencias heurística del problema (F , pF).

Page 154: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

144

• El procedimiento de actualización de las estructuras CAMINOS y ABIERTOS,

que emplea los datos que definen el criterio de poda (E, pp).

La generalidad de POP* estriba en que no establece restricciones sobre la naturaleza

de ninguno de ellos. Curiosamente pA y A(P) no son necesarias en principio para el

procedimiento.

Los otros tres parámetros, (s, Γ, SCS(n)), definen un problema de búsqueda en grafos.

Nótese que la función SCS(n) define implícitamente el grafo G.

En cuanto al procedimiento Actualizar-CAMINOS-ABIERTOS diremos únicamente

que realiza exclusivamente dos tareas:

! Incluye en CAMINOS y ABIERTOS aquellos caminos interesantes de entre

todos los nuevos caminos solución parciales que pueden generarse

considerando la expansión del nodo n'.

! Elimina de CAMINOS y ABIERTOS cero, uno o más caminos solución

parciales de entre los que ya habían sido generados (aquellos que ya no se

consideren interesantes).

9.3.1 Funcionamiento general de POP*

El procedimiento parte inicialmente con el camino P = (s) en la estructura CAMINOS

y en la lista ABIERTOS (paso 1).

En cada iteración el procedimiento toma dos tipos de decisiones. La primera es elegir

qué camino solución parcial seguir explorando, y la segunda qué caminos conocidos

conservar en CAMINOS:

1) Para la primera decisión (paso 3) se aplica el criterio de preferencia heurístico pF

sobre los vectores de estimación de los caminos incluidos en ABIERTOS. Una vez

seleccionado un camino minimal P’ = (s,..n’), se expande su último nodo n’, es

decir, se generan todos sus sucesores en el grafo que no provoquen ciclos en los

caminos ya incluidos en CAMINOS. Esto permite, de hecho, la continuación de

todos los caminos almacenados en CAMINOS que ya conducían a n’, por lo que

pueden ser eliminados de ABIERTOS.

Page 155: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

145

2) La siguiente decisión consiste en actualizar las dos estructuras de datos,

CAMINOS y ABIERTOS (pasos 5 y 6), de modo que sólo se conserven los

caminos interesantes. De ello se encarga la función Actualizar-CAMINOS-

ABIERTOS, encargada también de aplicar el criterio de poda (E, pp). El

procedimiento concreto para llevar a cabo esta operación depende tanto de la

estructura elegida para CAMINOS como de la naturaleza de pp y E(P). De

momento supondremos que el procedimiento Actualizar-CAMINOS-ABIERTOS se

encarga de realizar la actualización adecuada sobre la estructura elegida.

Por último, existen dos condiciones distintas bajo las que el procedimiento puede

terminar:

1) Cuando la lista ABIERTOS queda vacía (paso 2), lo que significa que no fue

posible encontrar un camino solución. En tal caso se devuelve el símbolo

"FRACASO".

2) Cuando se selecciona para expansión un camino de ABIERTOS que es un camino

solución (paso 4). En este caso el algoritmo termina con éxito devolviendo el

camino seleccionado.

9.3.2 El procedimiento 'Actualizar-CAMINOS-ABIERTOS'

Desde un punto de vista general, la función Actualizar-CAMINOS-ABIERTOS realiza

dos tareas en POP*:

• Registrar en CAMINOS todos los caminos solución parciales interesantes

encontrados hasta el momento. Para decidir qué caminos se consideran

interesantes se emplea el criterio de poda.

• Mantener ABIERTOS convenientemente actualizada, de modo que se sepa

cuales son los caminos por donde puede continuar la búsqueda.

Un esquema general para este procedimiento aparece en el cuadro 9.2.

Page 156: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

146

Procedimiento Actualizar-CAMINOS-ABIERTOS /*esquema general*/• Parámetros de entrada:! n’, n’’ ∈ NODOS(G).

• Salida:No devuelve ningún valor, pero modifica las estructuras ABIERTOS y CAMINOS.

1. Crear un conjunto vacío de caminos NUEVOS-CAM.

2. Para todo camino guardado en CAMINOS que vaya de s a n’, P = (s,...n’), considerar la extensión de Pque conduce hasta n’’ (s,...,n’, n’’) y guardarla en un conjunto NUEVOS-CAM.

3. Aplicando el criterio de poda definido por (E, pp), determinar qué caminos de NUEVOS-CAM soninteresantes y añadirlos a CAMINOS y ABIERTOS.

4. Si se añadieron nuevos caminos a CAMINOS, aplicar el criterio de poda definido por (E, pp) para eliminarcaminos antiguos que ya no resulten interesantes de CAMINOS, y si prodece, de ABIERTOS.

Cuadro 9.2. Esquema general para el procedimiento Actualizar-CAMINOS-ABIERTOS. Una definición adecuada de la estructura CAMINOS y de su gestión puede tener

mucha influencia en la rapidez y uso de memoria de los algoritmos de búsqueda. Incluso para

algoritmos sencillos “primero el mejor” se han discutido al menos dos formas posibles de

llevar la cuenta de los caminos interesantes (véase (Pearl, 1984, p. 49)). Un caso

particularmente sencillo es aquel en que el grafo explorado es un árbol. Lo normal en estas

circunstancias es utilizar también una estructura en árbol para CAMINOS.

Una posibilidad es emplear para CAMINOS una lista con todos los caminos solución

parciales generados, sin podar nunca ninguno. Obviamente esta opción no es la más eficiente

en cuanto al uso de memoria, aunque es perfectamente válida. Otra opción que requiere

menos memoria es emplear un grafo acíclico dirigido, que denominaremos GRAFOB23. Esta

opción se analiza con detalle más adelante para una clase concreta de algoritmos multicriterio.

Por supuesto, otras alternativas son posibles.

La siguiente sección muestra algunas propiedades interesantes de POP*. Todas ellas

son independientes de la estructura empleada para CAMINOS, y únicamente se exige una

propiedad muy general para el criterio de poda y para la forma de aplicarlo.

23 "GRAFO de Búsqueda", por analogía con el árbol de búsqueda empleado por muchos algoritmos de búsqueda y optimización escalares. En estos algoritmos se guarda normalmente el mejor camino encontrado hasta cada nodo. Para el caso multicriterio resulta interesante guardar para cada nodo un conjunto de caminos de entre los que llegan hasta el. Por este motivo un árbol resulta en general insuficiente.

Page 157: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

147

9.4. PROPIEDADES DE POP*

En esta sección se definen los conceptos de 1-admisibilidad y N-admisibilidad.

También establece relaciones interesantes entre el criterio de preferencia (A, pA) de un

problema y los criterios de preferencia heurístico (F, pF) y de poda (E, pp) que pueden

emplearse para resolverlo. Aprovechando estas definiciones se presentan algunas propiedades

deseables para POP*.

Definición

Sea un problema general de búsqueda heurística con preferencias (G, s, Γ, A, pA, F,

pF, E, pp). Diremos que un algoritmo de búsqueda es 1-admisible si termina con un camino

solución minimal del problema, siempre que exista alguno. Diremos que un algoritmo de

búsqueda es N-admisible si termina con el conjunto de todos los caminos solución minimales

del problema, siempre que exista alguno y su número sea finito, o bien no termina cuando su

número sea infinito.

Definición

Diremos que una estructura de preferencias heurística definida por (F, pF) es

mínimamente optimista para un problema (G, s, Γ, A, pA, F, pF, E, pp) si para todo vector de

atributos V correspondiente a alguna solución minimal del problema hay al menos un camino

solución P ∈ P-SET(s, Γ) con A(P) = V, que cumple que existe una estimación F ∈ F(P) de

dicho camino tal que todos los subcaminos Pi de P que comienzan en el nodo inicial tienen

alguna estimación F' ∈ F(Pi) heurísticamente preferible, o igual a F.

Expresado matemáticamente:

∀ V ∈ A-SET*(s, Γ, A, pA) ∃ P = (s=n0, n1,...nk=γ ) ∈ P-SET*(s, Γ, A, pA), F ∈ F(P) tal que,

A(P) = V ∧

∀ P0-i = (s=n0, n1,...ni) i = 0,..k-1, ∃ F’ ∈ F(P0-i) / F’ pF F

Page 158: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

148

Definición

Diremos que un criterio de preferencia heurístico definido por (F(P), pF) concuerda

con otro (A(P), pA) para un problema (G, s, Γ, A, pA, F, pF, E, pp), si para todos los caminos

solución la estimación F(P) = {FP} es única y para cualquier par de caminos solución P’, P’’

se cumple que,

FP’ pF FP’’ ⇔ A(P’) pA A(P’’).

Definición

Diremos que una relación de orden para la poda de caminos definida por (E(P), pp) es

1-prudente para un problema (G, s, Γ, A, pA) si, para cada vector de atributos V minimal con

respecto a (A(P), pA), existe un camino solución P con A(P) = V tal que P y todos sus

subcaminos con raíz en s son también minimales en relación a (E(P), pp).

Diremos que una relación de orden para la poda de caminos definida por (E(P), pp) es

N-prudente para un problema (G, s, Γ, A, pA) si todos los caminos solución P minimales con

respecto a (A(P), pA) y todos sus subcaminos con raíz en s son también minimales en relación

a (E(P), pp).

Por último, la siguiente definición establece la relación entre el criterio de poda y la

función que lo aplica.

Definición Sea Actualizar-CAMINOS-ABIERTOS un procedimiento que aplica un criterio de poda

prudente para un problema.

Diremos que un criterio de poda 1-prudente se aplica correctamente si para cada

vector de atributos minimal hay al menos un camino solución minimal o uno de sus

subcaminos con raíz en s siempre presente en ABIERTOS antes de la terminación.

Page 159: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

149

Diremos que un criterio de poda N-prudente se aplica correctamente si todo camino P

solución minimal no encontrado, o alguno de sus subcaminos con raíz en s está siempre

presente en ABIERTOS antes de la terminación.

Proposición 1

El procedimiento POP* termina siempre en grafos finitos. ♣

Demostración:

Al ser G finito, sólo puede haber un número finito de caminos solución parciales.

En cada iteración POP* elimina de ABIERTOS uno o más caminos solución parciales,

y añade cero, uno o más caminos solución parciales diferentes de los que elimina. Nótese que

POP* nunca puede añadir dos veces a la lista de ABIERTOS un mismo camino solución

parcial. Por tanto, en el peor caso se seleccionarán en un número finito de pasos todos los

caminos solución parciales y finalmente ABIERTOS quedará vacía, a menos que se

seleccione antes un camino solución.

La siguiente proposición presenta un conjunto de condiciones suficientes (que no

necesarias) para la obtención de algoritmos 1-admisibles a partir de POP*. Las

modificaciones necesarias para obtener algoritmos N-admisibles análogos se discuten en la

sección 9.11.

Page 160: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

150

Proposición 2

El procedimiento POP* es 1-admisible en grafos finitos si se cumplen las siguientes

condiciones:

1. La estructura de preferencias heurística definida por (F(P), pF) es mínimamente optimista.

2. La estructura de preferencias heurística definida por (F(P), pF) concuerda con (A(P), pA).

3. La relación de preferencia pF es transitiva, es decir, induce al menos un orden parcial

sobre los vectores de estimación heurísticos.

4. El criterio de poda (E(P), pp) es 1-prudente en relación a (A(P), pA) y se aplica

correctamente. ♣

Demostración:

Para demostrar la 1-admisibilidad del algoritmo hay que demostrar que tanto el criterio

de poda (E(P), pp), como la estructura de preferencias heurística (F(P), pF), cumplen su

función adecuadamente.

Sea PAi = (s, n1, n2, ... γ), γ ∈ Γ un camino solución minimal correspondiente a cada

vector de atributos Ai ∈ A-SET*(s, Γ, A, pA).

1.) La condición 4 garantiza que antes de la terminación de POP* siempre existirá en

CAMINOS y ABIERTOS un subcamino de cada PAi con raíz en s. Puede

comprobarse fácilmente sabiendo que al iniciarse el procedimiento se encontrará

en ABIERTOS PAi0-0 = (s). Tras su expansión estará PAi

0-1 = (s, n1), y permanecerá

allí hasta que algún camino que termine en n1 sea seleccionado. Entonces P Ai0-2 =

(s, n1, n2) entrará en ABIERTOS y así sucesivamente. Al ser el criterio de poda 1-

prudente se evita que algún subcamino PAi0-k = (s, n1, n2, ... nk) sea eliminado de

CAMINOS en favor de otro camino solución parcial P’. Al aplicarse el criterio

correctamente la única posibilidad de que esto ocurra es que P’ sea también parte

de un camino minimal con el mismo vector de atributos Ai, en cuyo caso podemos

continuar el razonamiento con P’ en el lugar de PAi.

Page 161: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

151

Sabemos que POP* terminará, ya que el grafo es finito (ver proposición 1). En

consecuencia, siempre que exista solución POP* no puede terminar porque

ABIERTOS esté vacía, y acabará devolviendo una solución.

2.) Veamos entonces como las condiciones 1, 2 y 3 garantizan que POP* nunca puede

terminar encontrando un camino solución que no sea minimal.

Al existir concordancia de (F, pF) con (A, pA) (condición 2) se asegura que

buscando un camino solución con estimación minimal sobre pF estamos, de hecho,

buscando un camino con vector real de atributos minimal sobre pA. Expresado

matemáticamente,

∀ P’’∈ P-SET(s, Γ,) ∧ P’’∉ P-SET*(s, Γ, A, pA), ∃ PAi ∈ P-SET*(s, Γ, A, pA) /

F(PAi) = {F[PAi]} ∧ F(P’’) = {F[P’’]} ∧ F[PAi] pF F[P’’]

Por otra parte, al ser (F, pF) mínimamente optimista (condición 1) tenemos que

para cada camino PAi todos sus subcaminos con raíz en s, PAi0-k, cumplen,

∃ F[PAi0-k] ∈ F(PAi

0-k) / F[PAi0-k] pF F[PAi]

Supongamos que existe un camino solución no minimal P’’ en ABIERTOS.

Tenemos entonces que:

∃ PAj / F[PAj] pF F[P’’]

Sabemos que siempre habrá un subcamino PAi0-k de PAi en ABIERTOS (condición

4). Puesto que pF cumple la propiedad transitiva (condición 3) podemos deducir

inmediatamente que:

∃ PAj ∀ k ∃ F[PAjo-k] ∈ F(PAj

0-k) / F[PAjo-k] pF F[PAj] pF F[P’’]

Al elegir POP* siempre un camino con estimación F minimal en ABIERTOS

respecto a pF tenemos que P’’ nunca será seleccionado para expansión.

Podemos concluir de la parte (2) de la demostración que POP* nunca terminará con un

camino solución no minimal. Ahora bien, por la parte (1) de la demostración sabemos que si

Page 162: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

152

hay solución ABIERTOS nunca queda vacía. Por tanto la única posibilidad que queda es que

POP* termine con un camino solución minimal.

Consideremos ahora qué sucede si el grafo explorado es infinito. Puede ocurrir

entonces que existan caminos no cíclicos de longitud infinita. Algunos algoritmos de

optimización escalar con funciones de coste aditivas, como A*, garantizan la 1-admisibilidad

suponiendo que la estimación escalar f(P) no está acotada en caminos infinitos. Sin embargo,

la condición análoga de que las estimaciones vectoriales no estén acotadas en ningún

componente en caminos infinitos no es suficiente para garantizar la 1-admisibilidad de POP*.

La figura 9.1 muestra un ejemplo ilustrativo:

s

π/8

infinitos arcos con coste π/2

n1

γ

3π/8

a

b

3π/4

π/2

π/2

A = (a) pA A’= (a’) sii |sen(a)| < |sen(a’)| F(P) = {A(P)} pF ≡ pA

pp = ∅ , ∀ P E(P) = ∅ Γ = {γ}

Figura 9.1. Ejemplo de búsqueda en un árbol con dos caminos, uno de ellos infinito.

Supongamos que los valores del único atributo considerado a(P) son iguales a la suma

de los costes asociados a los arcos de P. Obviamente (pF, F(P)) es mínimamente optimista y

concuerda con (pA, A(P)). No se poda nunca ningún camino, por lo que la poda es

obviamente 1-prudente. Por último, la relación de orden pF es transitiva. En conclusión se

cumplen las condiciones 1-4 enunciadas en la proposición 2.

Inicialmente CAMINOS y ABIERTOS contienen el camino solución parcial P = (s).

Tras la expansión del nodo inicial se obtienen dos caminos: (s, a) y (s, n1). El primero es

Page 163: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

153

preferible al segundo, y será seleccionado entonces para expansión. Sin embargo todas sus

continuaciones serán siempre preferibles a (s, n1) y el procedimiento nunca terminará.

Es posible, sin embargo, demostrar la 1-admisibilidad en grafos infinitos para algunos

casos interesantes.

Proposición 3 El procedimiento POP* es 1-admisible en grafos infinitos si, además de las condiciones 1-4

de la proposición 2, se cumple lo siguiente:

5. Para cualquier P ∈ P-SET*(s, Γ, A, pA) con vector de estimación FP sólo existe un

número finito de caminos solución parciales P’ con algún FP’ ∈ F(P') / FP’ ~pF FP ∨ FP’ =

FP. ♣

Demostración:

Nótese que la condición 5 implica que P-SET*(s, Γ, A, pA) sea finito. Dadas dos

soluciones minimales distintas cualesquiera, o bien tienen el mismo vector de estimación F o

bien dos vectores de estimación distintos F, F’ tales que F ~ F’. En cualquier caso la

condición 5 obliga a que, dada una solución minimal cualquiera con estimación F, el número

de caminos (solución o no) en el grafo con estimación F’ = F o F’ ~ F sea finito. Por tanto, y

por definición, el conjunto de soluciones minimales será un subconjunto del mismo y en

consecuencia también finito.

Sea F[PAk] el vector de estimación de un camino solución minimal PAk (condición 2).

Como por definición el conjunto de estimaciones F(P’) para cada camino P’ es finito, en el

peor caso el procedimiento terminará seleccionando PAk tras haber seleccionado en un número

finito de pasos todos los caminos solución parciales con estimaciones preferibles o

indiferentes con él. ♣

9.5. CONDICIONES PARA CRITERIOS DE PODA PRUDENTES

En la descripción de POP* proporcionada en la sección 9.3 sólo se dan nociones

generales sobre la relación del criterio de poda con el problema. Esta sección analiza el

criterio de poda empleado en el algoritmo de optimización escalar BF*. A partir del mismo se

Page 164: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

154

establecen condiciones más operativas que permitan identificar criterios de poda adecuados

para cada problema.

9.5.1 Órdenes de poda en algoritmos escalares

(Pearl, 1984, p.102) establece una condición muy operativa para determinar si una

determinada función puede emplearse para la poda de caminos en el algoritmo BF*. Es la que

se muestra a continuación.

Definición Sea PiPj la concatenación de dos caminos en un grafo, i.e., Pj puede usarse para

ampliar Pi. Se dice que una función de evaluación f(P) conserva el orden24 si, para cualquier

conjunto de caminos Pi, i = 1,2,3 de un grafo tales que P1P3 y P2P3 son también caminos del

grafo, se cumple la siguiente condición:

si f(P1) ≤ f(P2) ⇒ f(P1P3) ≤ f(P2P3)

P1 P2

P3

n

La conservación del orden de preferencia es una versión del principio de optimalidad

empleado en programación dinámica. Esta definición será de poca utilidad directa para los

algoritmos que se describen más adelante. Sin embargo, resultará interesante distinguir entre

las siguientes definiciones.

Definición Sea PiPj la concatenación de dos caminos en un grafo, i.e., Pj puede usarse para

ampliar Pi. Sean Pi, i = 1,2,3 tres caminos cualesquiera de un grafo tales que P1P3 y P2P3 son

también caminos del mismo.

24 El término empleado en (Pearl, 1984) es “order-preserving”.

Page 165: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

155

a) Diremos que una función a(P) conserva el orden < si se cumple que:

a(P1) < a(P2) ⇒ a(P1P3) < a(P2P3)

b) Diremos que una función a(P) conserva el orden ≤ si se cumple que:

a(P1) < a(P2) ⇒ a(P1P3) ≤ a(P2P3)

c) Diremos que una función a(P) conserva la igualdad si se cumple que:

a(P1) = a(P2) ⇒ a(P1P3) = a(P2P3)

En el algoritmo BF* la función de estimación heurística f(P) se emplea tanto para la

selección heurística de los caminos como para la poda. Cuando BF* encuentra dos caminos

hasta un mismo nodo, siempre poda aquel que tenga mayor valor de f(P). Si ambos caminos

tienen el mismo valor se puede desempatar y eliminar arbitrariamente uno cualquiera de ellos.

La condición de Pearl obliga a que f(P) conserve tanto el orden ≤ como la igualdad. El primer

caso permite emplear (f, <) como orden de poda 1-prudente para los caminos solución

parciales que lleguen a un mismo nodo: el camino eliminado nunca conduciría a una solución

mejor. El segundo caso también es interesante. ¿Qué ocurre cuando se encuentran dos

caminos P1, P2 hasta el mismo nodo con f(P1) = f(P2)? Ambos son minimales respecto al orden

de poda anterior. Sin embargo puede eliminarse uno cualquiera de ellos (pero no los dos), y la

poda seguirá siendo 1-prudente. Lo normal en esta situación es quedarse con el camino que

fue encontrado primero, aunque cualquier relación de orden arbitraria producirá en este caso

una poda 1-prudente.

A continuación se presenta una generalización de estas condiciones para el caso

multicriterio.

9.5.2 Órdenes de poda en algoritmos multicriterio

9.5.2.1 Conservación del orden

La primera clase de criterios de poda que se presenta es una generalización de los

criterios de poda empleados por algoritmos de optimización escalar como BF*, Z* o A*.

Page 166: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

156

Definición Sea un grafo G y sea Pi, i= 1,2,3 cualquier conjunto de caminos de G tales que P1P3 y

P2P3 son también caminos de G. Sea E(P) una función que devuelve un único vector de

información para cada camino, al que denominaremos E(P).

P1 P2

P3

n

Sea un problema de búsqueda heurística con preferencias (G, s, Γ, A, pA, F, pF, E, pp):

(a) Diremos que una relación de orden para la poda de caminos definida por (E(P), pp)

conserva la preferencia pA si se cumple que:

E(P1) pp E(P2) ⇒ A(P1P3) pA A(P2P3)

(b) Diremos que una relación de orden para la poda de caminos definida por (E(P), pp)

conserva la preferencia pA si se cumple que:

E(P1) pp E(P2) ⇒ A(P1P3) pA A(P2P3)

(c) Diremos que una relación de orden para la poda de caminos definida por (E(P), pp)

conserva la igualdad si se cumple que:

E(P1) = E(P2) ⇒ A(P1P3) = A(P2P3)

En cualquier caso sólo será posible establecer la relación E(P) pp E(P') o E(P') pp E(P)

si tanto P como P’ terminan en el mismo nodo, es decir, P = (...,n), P' = (...,n). ♣

Elegir un criterio de poda que conserve las preferencias de un problema exige analizar

cuidadosamente la estructura de preferencias definida por (A(P), pA). Intuitivamente las

condiciones de conservación de orden nos dicen que si podamos un camino a favor de otro no

tendremos que arrepentirnos, ya que el que se queda siempre será preferible o igual que el que

se desecha.

Page 167: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

157

En los problemas de optimización escalares muchas veces puede utilizarse también pp

≡≡≡≡ pA. Por desgracia esto no va a ser lo adecuado para el caso multicriterio, ya que en general

los criterios de poda resultantes no conservan el orden de preferencia del problema. Por este

motivo la distinción entre pp y pA es imprescindible.

Proposición 4

Si en un problema (G, s, Γ, A, pA, F, pF, E, pp), el criterio de poda (E, pp) conserva el orden

pA, entonces es N-prudente en relación a (A, pA). ♣

Demostración:

Se trata de demostrar que todos los caminos solución minimales respecto a (A, pA) y

sus subcaminos con raíz en s son minimales respecto a (E, pp). Sea P* = (n0, n1,...,nm), n0 = s,

nm ∈ Γ, un camino solución minimal cualquiera. Por definición, el criterio de poda sólo

permite eliminar un subcamino P*0-k = (n0, n1,...,nk) de P* por otro camino P’ que también

vaya de s a nk.

Sea un nodo nk cualquiera de P*, de modo que P* = P0-kP. Sea P' un camino cualquiera

que vaya de s a nk, tal como se muestra en la figura 9.2.

Supongamos que E(P’) pp E(P*0-k), entonces por definición de conservación del

orden:

E(P’) pp E(P*0-k) ⇒ A(P’P) pA A(P*)

Lo cual contradice la hipótesis de que P* sea un camino solución minimal.

P*0-ks

nm

P’

nk

PP*=P*0-kP

Figura 9.2.Grafo de ejemplo

Page 168: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

158

Proposición 5

Si en un problema (G, s, Γ, A, pA, F, pF, E, pp), el criterio de poda (E, pp) conserva el orden

pA, entonces es 1-prudente en relación a (A, pA). ♣

La demostración es trivial a partir de la presentada para la proposición 4.

Proposición 6

Si en un problema (G, s, Γ, A, pA, F, pF, E, pp), el criterio de poda (E, pp) conserva la

igualdad entonces la poda será 1-prudente con cualquier criterio de desempate para caminos

P, P’ que conducen al mismo nodo y E(P) = E(P’). ♣

La demostración es trivial.

9.5.2.2 Condición CMM

En (Carraway y otros, 1990) se analiza el mismo problema desde un punto de vista

diferente. Se trata de proporcionar una versión de la programación dinámica generalizada para

la optimización de funciones de valor multicriterio. Para ello los autores proponen la

utilización de criterios de preferencia locales (lo que estamos denominando aquí criterios de

poda) diferentes al criterio de preferencia del problema. Empleando la terminología definida

hasta ahora puede formularse la condición propuesta de la siguiente forma:

E(P) pp E(P’) ⇒ ∃ Pk ∈ P-SET(n, Γ) / ∀ Pi ∈ P-SET(n, Γ) A(PPk) pA A(P’Pi)

P P’

Pk

n

γm γnγl ......

Denominaremos a esta condición como CMM. Intuitivamente, significa que si existe

una continuación hasta la solución del camino P que va a ser preferible a cualquier

continuación hasta la solución del camino P’, entonces P’ puede ser eliminado. En los nodos

finales γ ∈ Γ será lógicamente pp ≡ pA.

En (Carraway y otros, 1990) se analiza cómo obtener criterios de poda concretos para

problemas multicriterio con funciones de valor analizando las propiedades de pA en cada

Page 169: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

159

nodo del grafo. El problema de este criterio de poda es que se necesita conocer A(P) ∀ P ∈ P-

SET(n, Γ) y ∀ n. Esta información es normalmente desconocida, aunque en algunos casos

puede aproximarse utilizando estimaciones heurísticas. En la sección 9.10 se realiza el

análisis correspondiente para los problemas de satisfacción de metas.

Proposición 7

Si en un problema (G, s, Γ, A, pA, F, pF, E, pp), el criterio de poda (E, pp) cumple la

condición CMM, entonces es N-prudente en relación a (A, pA). ♣

Demostración:

Sea nuevamente P* = (n0, n1,...,nm), n0 = s, nm ∈ Γ, un camino solución minimal

cualquiera. La condición CMM sólo permite eliminar un subcamino P*0-k = (n0, n1,...,nk) de

P* por otro camino P’ que también vaya de s a nk.

Sea también de nuevo nk un nodo cualquiera de P*, de modo que P* = P*0-kP, y P’ un

camino cualquiera que vaya de s a nk (figura 9.2). Supongamos que E(P’) pp E(P*0-k),

entonces por definición de la condición CMM:

E(P’) pp E(P*0-k) ⇒ ∃ Pk ∈ P-SET(n, Γ) / A(P’Pk) pA A(P*)

Lo cual contradice la hipótesis de que P* sea un camino solución minimal.

9.6. UNA CLASE DE PROCEDIMIENTOS DE BÚSQUEDA

MULTICRITERIO

En esta sección se describe una clase importante de funciones para problemas de

búsqueda en grafos, las funciones de atributos acumulables. Estas funciones permiten calcular

rápidamente los vectores de atributos de los caminos solución parciales y admiten una forma

cómoda de información heurística.

Para resolver la clase de problemas de búsqueda que emplea atributos acumulables se

propone una particularización de POP* denominada POP-Z*. Al ser POP-Z* una instancia de

POP* se pueden demostrar de forma concisa y simple las propiedades de terminación y 1-

Page 170: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

160

admisibilidad. El camino queda abierto entonces para describir toda una familia de algoritmos

de búsqueda multicriterio, que se muestran en las secciones siguientes.

9.6.1 Funciones de atributos acumulables

Las funciones acumulables son especialmente interesantes en problemas de búsqueda

en grafos, ya que pueden manipularse con relativa simplicidad.

Definición Diremos que un atributo ai(P) es acumulable si puede calcularse para todo camino

solución P = (n1, n2, ... nk), nk ∈ Γ como:

a (P) = E(n ) o E(n ) o ... o E(n ) o E(n ) = o E(n )i 1 i 2 i i k-1 i kj=1

i j

k

donde,

• E(nj) es un conjunto de propiedades locales a cada nodo nj (p. ej. el coste asociado a

los arcos que parten de él),

• oi es el operador de combinación asociativo tanto por la derecha como por la

izquierda asociado al atributo ai.

Al ser el operador oi asociativo de izquierda a derecha, es posible calcular para cada

camino P = (n1, n2, ... nm) un valor:

)E(no=(P)g ji1=j

i

m

Page 171: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

161

Estos atributos se denominan acumulables porque, para todas las continuaciones del

camino P de la forma P' = (n1, n2, ... nm, n), es posible calcular gi(P') simplemente acumulando

el valor previamente calculado para P con la información local del nuevo nodo25:

E(n)o(P)g=)(P'g iii

9.6.2 Funciones heurísticas para atributos acumulables

Cuando se trabaja con atributos acumulables en problemas de optimización escalar es

frecuente que el criterio preferencia heurística emplee los valores de dichos atributos en

combinación con algún tipo de información heurística para comparar caminos solución

parciales. En principio no existe ninguna limitación en cuanto al tipo de esta información

heurística ni en cuanto a la forma de combinarla con los valores acumulados de los atributos.

Sin embargo, una forma más natural en muchos casos es la que se describe a continuación.

Supongamos que P = (n1, n2, ... nm), nm ∉ Γ, es un trozo de un camino solución que

sólo se ha explorado parcialmente. En tal caso se puede calcular a partir de P una estimación

fiP del atributo ai del camino completo si se dispone de una función de evaluación heurística

hi(n) que aproxima el valor del atributo ai para el trozo de camino solución que parte de nm:

)h(n o )E(n o ... o )E(n o )E(n=f mimii2i1Pi

La forma de obtener este tipo de funciones h(n) y sus propiedades han sido objeto de

especial estudio dentro de la Inteligencia Artificial, ya que suponen un conocimiento o

información externa a la simple descripción del problema (véase (Pearl, 1984, cap. 4)).

Puede calcularse entonces fácilmente una estimación heurística del valor del atributo ai

para el camino P de la forma:

)(nho(P)g=f miiiP

i

25 Un caso más general es el de los atributos o funciones recursivas (Pearl, 1984, pp. 56-59), a las que sólo se exige que el resultado de la operación pueda calcularse de derecha a izquierda. Esta es la forma en que deben trabajar los algoritmos de búsqueda en hipergrafos. Para el caso de búsqueda en hipergrafos no es posible acumular los valores g(P) a medida que se amplían los caminos, sino que hay que recalcularlos por completo

Page 172: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

162

Afortunadamente, muchos de los operadores de combinación de atributos utilizados

habitualmente cumplen la propiedad de ser acumulables y permiten calcular fácilmente este

tipo de estimaciones (por ejemplo, las funciones suma (+), producto (×), máximo (max), y

mínimo (min)).

En el caso multiatributo, si todos los fiP considerados cumplen la propiedad anterior

puede darse la siguiente definición.

Definición Una función heurística multicriterio H(n) es una función que devuelve un conjunto

finito de vectores de estimación Hn que contienen estimaciones de los atributos de uno o

algunos de los caminos que van desde n a algún nodo final:

H: n → {H, H’, ....}

Teniendo en cuenta esta definición es fácil generalizar el razonamiento anterior para el

caso multicriterio.

Definición Dado un problema de búsqueda heurística en grafos con atributos acumulables,

diremos que una función de estimación heurística es de estimación directa si es de la forma:

F(P) = {FP / FP= G(P) o Hn ∧ Hn ∈ H(n)}

donde:

• P es un camino solución parcial que termina en el nodo n, es decir, P = (s,...n).

• G(P) es un vector con los valores acumulados de los atributos (g1(P), g2(P), ...

gq(P)) para el camino P, y es en realidad un sinónimo de A(P) aplicado sobre

caminos solución parciales.

cada vez. Salvo por este detalle, todo lo que se menciona a continuación aplicable a funciones acumulables también lo es para funciones recursivas.

Page 173: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

163

• H(n) es una función heurística multicriterio. Cada Hn ∈ H(n) es un vector con

estimaciones de los valores de los atributos (h1, h2, ... hq) de un camino que

concatenado a P supondría una solución al problema.

• o = (o1, o2, ... oq), es el operador de combinación vectorial de los atributos.

Nótese que para que el número de vectores FP para un mismo camino P = (s, n1, n2,...n)

sea finito, el número de vectores de estimación Hn para un mismo nodo debe ser también

finito.

La estimación directa es ciertamente un caso particular, aunque especialmente

interesante, de estimación heurística. Cada componente de cada vector F ∈ F(P) es una

estimación del componente correspondiente del vector de atributos A que correspondería a un

camino solución que fuese continuación de P. En estos casos lo más normal será emplear

como relación de preferencia heurística pF ≡ pA.

Para los problemas de optimización escalares con atributos acumulables se han

estudiado criterios de preferencia heurísticos más generales. Estos criterios toman la

información real y heurística relativa al camino P por separado y la combinan a su gusto. Un

ejemplo26 es la función f(P) = wg(P) + (1 – w) h(n) ∀ P = (s,...n) con w ∈ [0, 1/2].

Se pueden considerar también estrategias análogas para problemas multicriterio. En

estos casos no es obligado combinar necesariamente la información heurística proporcionada

por H(n) con el valor acumulado de los atributos G(P) utilizando el propio operador vectorial

o. De este modo, cuando la información se combina de forma diferente, puede considerarse

que cada vector de estimación es una concatenación de los vectores G y H correspondientes:

F(P) = {FP / FP = (G(P), H) ∧ H ∈ H(n)}

La relación de preferencia pF será la encargada de establecer entonces la comparación

entre los vectores resultantes, y en general será pF ≠ pA.

26 véase (Pohl, 1970), citado en (Pearl, 1984, p. 87).

Page 174: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

164

9.6.3 Procedimiento POP-Z*

El procedimiento POP-Z* es el resultado de instanciar POP* parcialmente de dos

formas diferentes y relativamente independientes:

! El criterio de preferencia (A, pA) se limita a funciones de atributos acumulables,

aunque sin limitación sobre pA. El criterio de preferencia heurístico (F, pF) se

limita a funciones F de estimación directa (véase sección 9.6.2) y pF ≡ pA.

! El criterio de poda (E, pp) deberá conservar el orden de preferencia (A, pA) (véase

la sección 9.5.2.1), y además será E(P) = {E(P) ≡ G(P) ≡ A(P)} una estimación

única.

Se emplean también dos estructuras concretas para ABIERTOS y CAMINOS, con

objeto de definir una función Actualizar-CAMINOS-ABIERTOS particular.

Para CAMINOS se emplea un grafo acíclico dirigido, que se denominará GRAFOB

(grafo de búsqueda). El hecho de que los atributos de un problema sean acumulables

simplifica notablemente la gestión del grafo de búsqueda.

Definiremos la estructura GRAFOB del siguiente modo:

1.) Cada nodo n’ de GRAFOB tiene asociados dos conjuntos:

! G-SET(n’) con los vectores acumulados de atributos de todos los caminos de la

forma P = (s,...n’) incluidos en GRAFOB.

G-SET(n’) = MINIMAL( {G(P) / P=(s,..n')}, pp)

! F-SET(n'), con todos los vectores de estimación correspondientes a caminos de

la forma P = (s,...n’) incluidos en GRAFOB:

F-SET(n') = {F = G o Hn' / G ∈ G-SET(n') ∧ H n' ∈ H(n')}

2.) Cada arco n ← n', denotado por (n', n), está etiquetado con un conjunto de

atributos G-SET(n, n’). Estas etiquetas se definen como el conjunto de vectores de

atributos de caminos interesantes que llegan a n' a través de n, es decir, de la forma

P = (s,...n, n’). Un camino P que llega hasta n' es interesante, si no puede ser

Page 175: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

165

podado por ningún otro camino, es decir, si G(P) es minimal según el criterio de

poda.

Llegados a este punto resulta muy conveniente realizar la siguiente definición, que

muchas veces pasa desapercibida en las descripciones de algoritmos de búsqueda escalares.

Definición: Definiremos un camino P en GRAFOB como una sucesión de nodos (n1, n2, ... nk) tales

que para cada dos nodos consecutivos ni, ni+1, existe un arco (ni+1, ni) ∈ ARCOS(GRAFOB).

Es decir, los caminos interesantes del grafo G se van guardando en GRAFOB con los

arcos en sentido contrario (ver figura 9.3).

s

n1 n2

n3

n4

Pa

Pb

s

n1 n2

n3

n4

(a) (b)

Pa

Pb

Figura 9. 3. Dos caminos Pa = (s, n1) y Pb = (s, n2, n3, n4), tal como aparecerían en un grafo deproblema G (a) y en un grafo de búsqueda GRAFOB (b).

En cuanto a la lista de caminos ABIERTOS, se puede representar de diversas formas.

La empleada en adelante es: ( (nodo, vector-estimación)* ). Su justificación es la siguiente: a

cada nodo pueden llegarle varios caminos solución parciales y, a su vez, cada camino

solución parcial P puede tener varias estimaciones de atributos FP ∈ F(P) minimales según el

criterio de poda. En la lista ABIERTOS se guarda un par (n, FP) por cada camino P = (s,...n) y

vector de estimación FP ∈ F-SET(n). Cada par (n, F) de ABIERTOS se interpreta como "hay

al menos un camino solución parcial desde s hasta n que aún no ha sido explorado, y que tiene

un vector F de estimación heurística". Por supuesto, otras representaciones son posibles. Una

de ellas sería, por ejemplo, emplear directamente ((nodo, F-SET(nodo))*), es decir, una lista

formada por cero, uno o más pares (nodo, F-SET(nodo)).

Page 176: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

166

El pseudocódigo de los procedimientos POP-Z* y Actualizar-CAMINOS-ABIERTOS,

particularizados para utilizar estas estructuras de datos se muestra en los cuadros 9.3 y 9.4.

Adaptar POP* para utilizar las estructuras de datos descritas es fácil. Seleccionar un

camino solución parcial de ABIERTOS con estimación minimal es equivalente a seleccionar

un par (n', F') con F' minimal. Borrar todos los caminos de ABIERTOS que conducen al nodo

n' es equivalente a borrar todos los pares de la forma (n', _). Por último, cuando se selecciona

un par (n, F), n ∈ Γ, el camino solución puede recuperarse de CAMINOS siguiendo los arcos

de GRAFOB y las etiquetas G-SET(n) y G-SET(n, n'). El pseudocódigo resultante del

procedimientos POP* (denominado ya POP-Z*) se muestra en el cuadro 9.3.

Procedimiento POP-Z*• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! nodo-final-p(n), un predicado que devuelve 'cierto' si n ∈ Γ, y 'falso' en otro caso..! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! (F, pF), los datos que definen el criterio de preferencia heurístico.! Actualizar-CAMINOS-ABIERTOS(n', n"), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando los datos que definen el criterio de poda (E, pp)

• Salida:"FRACASO", o un camino solución al problema.

1. Crear una lista de caminos ABIERTOS con el par (s, F), donde F puede ser un vector de estimaciónarbitrario.Crear una estructura CAMINOS para guardar todos los caminos solución parciales que se vayangenerando y se consideren interesantes. Inicialmente CAMINOS contiene solo el camino (s).

2. Si ABIERTOS es la lista vacía, terminar con “FRACASO”.3. Seleccionar un par (n’, F’) de ABIERTOS con vector de estimación minimal, i.e.¬∃ (n, F) ∈ ABIERTOS /

F pF F’. Si varios cumplen la condición, desempatar arbitrariamente. Borrar de ABIERTOS todos lospares (n', F) ∀ F.

4. Si nodo-final-p(n’), entonces terminar el procedimiento devolviendo un un camino solución de CAMINOScuyo vector de estimación de atributos sea F’.

5. Expandir el nodo n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G queno son antecesores suyos en ningún camino de CAMINOS (para evitar ciclos).

6. Para cada nodo n’’ ∈ SUCActualizar-CAMINOS-ABIERTOS(n', n")

7. Volver a 2.

Cuadro 9.3. Pseudocódigo de los procedimientos POP* (o POP-Z*) empleando una lista ABIERTOS de la forma ((nodo, vector-estimación)*).

La función Actualizar-CAMINOS-ABIERTOS se muestra en el cuadro 9.4. El uso de

E(P) ≡ G(P) unido al hecho de que G(P) sea acumulable permite actualizar fácilmente los

valores de los conjuntos G-SET(n) y F-SET(n) en cada iteración. Además, se considera que el

Page 177: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

167

criterio de poda se aplica sólo a caminos que llegan a un mismo nodo, es decir, la relación P

pp P', o P' pp P sólo puede darse si P = (s,..n) y P' = (s,..n) (véase la sección 9.5.2.1).

Actualizar-CAMINOS-ABIERTOS-1 /*Versión con atributos acumulables y un grafo de búsqueda GRAFOB como estructura paraCAMINOS.*/• Parámetros de entrada:! n’, n’’ ∈ NODOS(G).

• Salida:No devuelve ningún valor, pero modifica las estructuras ABIERTOS y GRAFOB.

a) Calcular el conjunto AC = MINIMAL({G'' = G' o A(n’,n’’) / G' ∈ G-SET(n’)}, pp) .

b) Si n’’ ∉ NODOS(GRAFOB)i) Crear el nodo n’’ y etiquetarlo con G-SET(n’’) ← AC.ii) F-SET(n’’) ← {F = G o H / G ∈ G-SET(n’’), H ∈ H(n’’)}iii) Crear un arco de n’’a n’. G-SET(n’, n’’) ← AC.iv) Añadir a ABIERTOS pares (n’’, F) ∀ F ∈ F-SET(n’’)

c) Si n’’ ∈ NODOS(GRAFOB)i) Eliminar de AC todos los vectores G’ tales que

∃ G ∈ G-SET(n’’) / G pp G’ii) Si AC ≠ ∅

(1) Establecer un arco de n’’ a n’, y etiquetarlo con G-SET(n’, n’’) ← AC.(2) Para cada nodo n* / n* ≠ n’ ∧ (n’’, n*) ∈ ARCOS(GRAFOB),

- Eliminar de G-SET(n*,n’’) todos los vectore G' tales que∃ G ∈ G-SET(n’, n’’) / G pp G’

- Si G-SET(n*, n’’) = ∅ , entonces eliminar el arco de n’’ a n*. (3) { })'',()''(

)(),''(/

nnSETGnSETGGRAFOBARCOSnnn

−←−∈U

(4) F-SET(n’’) ← {F = G o H / G ∈ G-SET(n’’), H ∈ H(n’’)}(5) Actualizar ABIERTOS:

- eliminar los pares (n’’, F)∈ ABIERTOS / F ∉ F-SET(n’’)- añadir un par (n’’, F) por cada nuevo F ∈ F-SET(n’’)

Cuadro 9.4. Pseudocódigo de un procedimiento para actualizar GRAFOB y ABIERTOS con funciones A(P) acumulables y E(P) = G(P).

Sea n’’ un sucesor de n’ en G. La actualización de GRAFOB y ABIERTOS tras

considerar n’’ se realiza entonces de la siguiente forma:

• Paso (a). La naturaleza acumulable de G(P) permite acumular los vectores de

atributos de los caminos interesantes que llegan hasta n'', G-SET(n''), con el vector

de atributos del arco A(n',n'') y aplicarles pp.

• Paso (b). Si n'' no se encontraba todavía en el grafo, se añade, y se incluyen en

ABIERTOS todos los pares (n'', F) / F ∈ F-SET(n"). La figura 9.4 muestra un

ejemplo de este tipo de actualización sobre GRAFOB.

Page 178: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

168

s

n1 n2

n'

n''

s

n1 n2

n'

n''

Pa Pb

G-SET(n') = {G1, G2}

G-SET(n", n') = MINIMAL({Ga, Gb}, pp)

G-SET(n") = MINIMAL({Ga, Gb}, pp)

(a) (b)

Sean: Ga = G1 o A(n',n'') Gb = G2 o A(n',n'')

Figura 9.4. (a) Situación en la que se desea añadir un nodo nuevo, n", como sucesor de n' enGRAFOB. Dos caminos diferentes llegarían hasta n": Pa y Pb. (b) Resultado de añadir n" a GRAFOB.

• Paso (c). Si n’’ se encuentra ya en el grafo, significa que se han encontrado nuevos

caminos hasta él. Se debe decidir entonces si alguno o todos se incluyen en el

grafo y, en tal caso, si esos nuevos caminos permiten podar otros ya conocidos. El

paso (c.i) determina si se ha encontrado algún camino nuevo a n’’ que no se pueda

podar. En tal caso el paso (c.ii) realiza la actualización necesaria de GRAFOB.

Más concretamente:

$ Se establece un nuevo arco (n’’, n’) en GRAFOB (paso c.ii.1).

$ Si los nuevos caminos permiten podar todos los que llegaban a n’’ a través de

otro arco, entonces este último se elimina (paso c.ii.2).

$ Finalmente se actualizan los conjuntos G-SET(n'') y F-SET(n'') (pasos c.ii.3-4)

y ABIERTOS (paso c.ii.5), incluyendo los pares (n’’, F) correspondientes a

nuevos caminos y eliminando los de los caminos podados.

Las figuras 9.5 y 9.6 muestran un ejemplo con el resultado para diferentes casos de

actualización de GRAFOB.

s

n'

n'' Pa

G-SET(n") = {G1, G2}

{G1,G2}

n1

Sean:G-SET(n'', n1) = {G1, G2}G1 ~p G2G(Pa) = G3

Page 179: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

169

Figura 9.5. Una situación en la que se desea añadir un nuevo arco entre dos nodos ya conocidos, n" yn'. Como resultado un nuevo camino solución parcial Pb llegaría hasta n".

n''

(a)

Resultado si:G3 pp G2G3 ~p G1

G-SET(n") = {G1, G3}

{G1} {G3} n''

(b) (c)

Resultado si:G3 pp G2

G3 pp G1

G-SET(n") = {G3}

{G3}n''

Resultado si:G1 pp G3

o bienG2 pp G3

G-SET(n") = {G1, G2}

{G1,G2}

s

n'n1

s

n'n1

s

n'n1

Figura 9.6. (a) (b) (c) Resultado de modificar GRAFOB en la situación descrita en la figura 9.5 bajodiferentes suposiciones.

9.6.4 Propiedades de POP-Z*

Supondremos que POP-Z* emplea el procedimiento Actualizar-CAMINOS-

ABIERTOS-1 descrito en el cuadro 9.4. Puesto que POP-Z* es un caso particular de POP*

nada impide que conserve sus propiedades. Sólo hay que demostrar que los parámetros

cumplen las propiedades establecidas. Para ello empezaremos dando una definición operativa

de función heurística admisible.

Definición

Una función heurística multicriterio H(n) es admisible para un problema (G, s, Γ, A,

pA, F, pF, E, pp), donde A es acumulable mediante operador o y F(P) de estimación directa,

si:

• ∀ P*∈ P-SET*(s, Γ, A, pA), ∀ P0-i* = (s, ... ni) subcamino de P*,

F(P*) = {FP*} ∧ ∃ H ∈ H(ni) / G(P*0-i) o H pF FP*

• En los nodos finales γ ∈ Γ, H(γ) = {N}, donde N es el elemento neutro del

operador o, es decir,

Page 180: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

170

∀ V∈ℜ q , V o N = V.

Nótese que la definición anterior depende de o, F, y pF.

Proposición 8

Si en problemas (G, s, Γ, A, pA, F, pF, E, pp), donde los atributos son acumulables con

operador o y F(P) es de estimación directa, se utilizan funciones heurísticas multicriterio

admisibles, entonces:

1. (F, pF) es mínimamente optimista,

2. (F, pF) concuerda con (A, pA). ♣

Demostración:

En realidad, la definición de función heurística admisible no es más que una

reformulación más operativa de ambas condiciones para el caso particular estudiado.

1) (F, pF) concuerda con (A, pA).

Por definición ∀γ ∈ Γ h*i(γ) = e, donde e es el elemento neutro de la operación oi,

por tanto tenemos que,

∀γ ∈ Γ H(γ) = {N} ⇒

∀ P ∈ P-SET(s, Γ), F(P) = { FP / FP = G(P) o N = A(P) o N = A(P)}

2) La estructura de preferencias heurística es mínimamente optimista.

Efectivamente, para todo camino solución minimal P = (s=n0, n1, ... nk) , nk ∈ Γ

tenemos que, por definición,

∀ Pi = (n0,... ni), i∈ [0,k] subcamino de P,

∃ H ∈ H(ni) / A(Pi) o H pF A(P) = FP

Page 181: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

171

Proposición 9

Sea un problema (G, s, Γ, A, pA, F, pF, E, pp), donde los atributos son acumulables con

operador o, F(P) es de estimación directa y E(P) = G(P).

Si (G, pp) conserva la igualdad y bien conserva el orden del problema o bien cumple

la condición CMM, entonces Actualizar-CAMINOS-ABIERTOS-1 aplica el criterio de poda

de forma correcta. ♣

Demostración27:

Realizaremos esta demostración por inducción sobre el número de iteraciones t de

POP-Z*. Sea un camino solución minimal cualquiera P* = (n0, n1,...,nm), n0 = s, nm ∈ Γ.

! Inicialmente el camino P*0-0 = (n0) está representado en GRAFOB y ABIERTOS

al ser G-SET(n0) = {G(P*0-0)}.

! Supongamos que en la iteración t está representado P*0-k = (n0, n1,...,nk) en

GRAFOB y ABIERTOS, de modo que G(P*0-k) ∈ G-SET(nk) y existe en

ABIERTOS algún par (nk, F[P*0-k]), F[P*0-k] ∈ F(P*0-k).

! En la iteración t+1 pueden darse varias posibilidades:

a) Si nk = nm y el procedimiento seleccióna (nk, F[P*0-k]) u otro par de la forma

(nk, F) correspondiente a otro camino solución minimal, entonces termina con

éxito devolviendo P* u otro camino solución minimal que conduzca a nm, con

lo que la proposición sería cierta.

b) Si nk ≠ nm y el procedimiento selecciona un par (nk, F[P*0-k]) cualquiera,

correspondiente a P*0-k o a otro camino solución parcial que lleva hasta nk

entonces P*0-k dejará de estar representado en ABIERTOS, pero se considerará

la inclusión de su continuación P*0-k+1 = (n0, n1,...,nk, nk+1) en GRAFOB y

ABIERTOS. Como el criterio de poda conserva el orden del problema, la única

27 La demostración presentada aquí guarda cierta analogía con el ‘Resultado 2 (a,b)’ que proporciona (Nilsson, 1980) para el árbol de búsqueda de A*.

Page 182: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

172

posibilidad de que P*0-k+1 no fuese incluido en GRAFOB sería que nk+1 ya

perteneciese a GRAFOB y,

∃ G’∈ G-SET(nk+1) / G’ pp G(P*0-k+1) ∨ G’ = G(P*0-k+1)

El primer caso (G’ pp G(P*0-k+1)) es imposible tanto si (G, pp) conserva

el orden del problema como si cumple la condición CMM. En el segundo caso

(G’ = G(P*0-k+1)) se habrían encontrado dos caminos solución parciales que

llevan a nk+1 y tienen el mismo vector de atributos. Por conservar G(P) la

igualdad, ambos conducirán a una solución minimal con idéntico vector de

atributos. Eliminando uno solo de ellos (en este caso P*0-k+1) la aplicación del

criterio de poda sigue siendo 1-prudente, por lo que la proposición también se

cumpliría.

c) Por último, si el procedimiento selecciona un par (n, F), n ≠ nk correspondiente

a un camino P = (s,..n), entonces:

1) Si nk ∉ SCS(n), entonces ninguno de los nuevos caminos considerados

podrá podar a P*0-k y por tanto seguirá presente en GRAFOB y

ABIERTOS.

2) Si nk ∈ SCS(n), entonces se encuentran nuevos caminos hasta nk, con lo

que se abre de nuevo la posibilidad de que P*0-k sea podado. Sea P’ uno de

esos nuevos caminos. Como el criterio de poda conserva el orden tenemos

que G(P’) pp G(P*0-k) contradice la hipótesis de que P* sea una solución

minimal. Lo mismo ocurre si cumple la condición CMM. Si G(P’) =

G(P*0-k), el procedimiento nunca eliminará P*0-k de GRAFOB (en todo

caso P’), con lo que la proposición se cumpliría en todos los casos. ♣

Para demostrar que cualquier algoritmo resultante de instanciar POP-Z* es 1-

admisible, solo hay que demostrar que pF ≡ pA es transitiva, y que (G¸pp) conserva el orden

(A¸pA). Por supuesto, para cada problema concreto que se pretenda resolver la función H(n)

deberá ser igualmente admisible. Las siguiente secciones realizan esta análisis para las reglas

de decisión multicriterio más comunes.

Page 183: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

173

Ninguna de las particularizaciones de POP-Z* influye en la demostración de 1-

admisibilidad en grafos infinitos realizada para POP* (proposición 3), por lo que será

aplicable bajo las mismas condiciones.

9.6.5 Instancias de POP-Z*

La figura 9.7 introduce una clasificación parcial de algoritmos de búsqueda en función

de los tipos de criterios de preferencia heurísticos, criterios de poda y funciones de estimación

de atributos empleados. Concretamente se analizan cuatro clases de particularizaciones de

POP-Z* correspondientes a los criterios de preferencia más empleados en problemas

multicriterio:

! Z* y ZL* para funciones de valor. También se analiza el algoritmo U*, que

presenta algunas características peculiares en relación al criterio de poda.

! MO-Z*, para problemas multiobjetivo.

! PRIMO-Z* y PRIMO-ZL*; para problemas lexicográficos.

! METAL-ZL* para problemas de satisfacción de metas lexicográficas.

Como puede apreciarse en la figura 9.7 la mayoría de trabajos publicados en los

últimos años se han centrado en la optimización de funciones de valor multiatributo.

Todos los algoritmos difieren el criterio de preferencias pA y/o en el criterio de poda

pp. En las siguientes secciones se discute qué condiciones deben cumplir la estructura de

preferencias y el criterio de poda para que los algoritmos sean 1-admisibles en cada caso.

Page 184: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

174

X - Algoritmos descritos en la literatura.X - Algoritmos nuevos que generalizan procedimientos no heurísticos descritos en la literatura.X - Algoritmos nuevos obtenidos a partir de POP*.________________________________________

(1) U* emplea E(P) = F(P).

POP*

POP-Z*

Z*

A* (un solo atributo)

ZL*METAL-ZL* MO-Z*

METAL-AL* MO-A*

A: acumulable.E(P) = {A(P)}.F: estimación directa.

Además,

pA≡pF conocido

Además,A aditiva

U* (1)PRIMO-Z*

PRIMO-A*

Además,

pp conocidoPRIMO-ZL*

Figura 9.7. Relación de diversos algoritmos con el procedimiento POP*.

9.7. BÚSQUEDA MULTIOBJETIVO

El primer problema que se analiza es el de la búsqueda multiobjetivo. Para resolver

estos problemas puede emplearse una generalización más o menos directa de los

procedimientos empleados para la optimización de un solo objetivo.

El criterio de preferencia consiste normalmente en la minimización de múltiples

atributos (orden de Pareto):

A = (a1, a2,...aq) pA A’= (a1’, a2’,...aq’) sii

∀ i ai ≤ ai‘ ∧ A ≠ A’

(Loui, 1983) proporciona, entre otras, una generalización del algoritmo de Dijkstra

para el caso multiobjetivo. (Stewart & White, 1991) describen en detalle una generalización

del algoritmo A* para el mismo caso denominada MOA* (Multi-Objective A*).

Se presenta a continuación una particularización de POP-Z* para problemas

multiobjetivo en que los atributos son acumulables, pero no necesariamente aditivos.

Denominamos a este algoritmo MO-Z* (Multi-Objective Z*).

Page 185: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

175

9.7.1 Algoritmo MO-Z*

MO-Z* es una particularización de POP-Z* en la que tanto el orden de preferencia del

problema pA, como el orden de poda pp son el orden de Pareto:

G = (g1, g2,...gq) pp G’= (g1’, g2’,...gq’) sii

∀ i gi ≤ gi‘ ∧ G ≠ G’

Además, si G = G’ se emplea un orden de poda arbitrario.

Proposición 10 Si se cumplen las siguientes condiciones:

MOZ-1. La función heurística empleada H(n) es admisible.

MOZ-2. Cada componente de G(P) conserva la igualdad y bien el orden < o bien el orden ≤..

Entonces MO-Z* es 1-admisible en grafos finitos. ♣

Demostración:

Al ser H(n) admisible se cumplen las condiciones 1 y 2 de POP* (proposición 2).

El orden de Pareto es trivialmente transitivo, por lo que se cumple también la

condición 3 de POP*.

Veamos que la condición MOZ-2 implica que (G, pp) conserva el orden pA por tanto

la poda es 1-prudente. Sea un grafo G y sea Pi, i= 1,2,3 cualquier conjunto de caminos de G

tales que P1P3 y P2P3 son también caminos de G. Supongamos que G(P1) pp G(P2) y G(P1) ≠

G(P2). Tendremos entonces que:

∀ i gi(P1) ≤ gi(P2) ∧ ∃ j gj(P1) < gj(P2)

Al conservar cada gi(P) el orden ≤ o el < y, además, la igualdad tendremos que:

∀ k gk(P1) = gk(P2) ⇒ gk(P1P3) = gk(P2P3)

∀ m gm(P1) < gm(P2) ⇒ gm(P1P3) ≤ gm(P2P3)

Page 186: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

176

Por tanto:

∀ i gi(P1P3) ≤ gi(P2P3)

Con lo que la poda será 1-prudente. Si G(P1) = G(P2), entonces cualquier desempate

arbitrario será 1-prudente al conservarse la igualdad. Nótese que esta parte de la demostración

es independiente de la naturaleza acumulable de los atributos.

Proposición 11

Si además de las condiciones MOZ-1 y MOZ-2 enunciadas en la proposición 10 se cumple lo

siguiente:

MOZ-3. Los vectores de estimación de atributos F ∈ F(P) no están acotados en ninguna de

sus componentes en caminos infinitos.

Entonces el algoritmo MO-Z* es 1-admisible en grafos infinitos. ♣

Demostración:

Sea F' = (f'1, f'2, ...f'q) el vector de estimación correspondiente a un camino solución

minimal P'. Por MOZ-3 solo podrá existir un número finito de caminos solución parciales con

estimaciones F = (f1, f2, ...fq) tales que:

∀ i fi ≤ fi‘

Por tanto P' acabará seleccionándose para expansión en un número finito de pasos. ♣

9.7.2 Ejemplo: Excursiones Para Todos

Para ilustrar el funcionamiento de diversos algoritmos descritos en este capítulo

consideraremos un sencillo ejemplo. Se trata de planificar una excursión entre dos zonas de

acampada en un parque natural. El parque dispone de una serie de pistas forestales conectadas

según la topología mostrada en la figura 9.8. En ella se ha incluido para cada arco la distancia

real correspondiente (en metros). Cada pista puede ser de dificultad simple, media, o

avanzada, estando representadas por trazos finos, gruesos y dobles respectivamente.

Page 187: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

177

2

1

3

4

5

6

1000m. 99%

1000m. 97%

1000m. 99%

1500m. 99%

700m. 90%

800m. 99%

800m. 80%

500m. 75%

300m. 80%

Figura 9.8. Topología de las pistas forestales.

El problema planteado consiste en encontrar rutas adecuadas para desplazarse entre las

zonas del parque. Para ello pueden tenerse en cuenta inicialmente dos atributos: a1(P) ≡

"distancia recorrida por el camino P"; a2(P) ≡ "dificultad máxima del camino P".

Algunos excursionistas han afirmado haberse encontrado ocasionalmente con osos en

algunas de las pistas, por lo que los guardas forestales han realizado una encuesta entre los

visitantes al parque. El grafo recoge el porcentaje de visitantes que han circulado por cada

pista sin tener estos encuentros. Esto nos proporciona un tercer atributo, a3(P) ≡ "probabilidad

de no encontrar osos en el camino P", que bajo el supuesto de independencia puede calcularse

de forma multiplicativa a partir de los datos anteriores.

Cuatro excursionistas y amantes de la naturaleza, Marichu, Carmen, Fali y Manolo,

están planeando una excursión desde la zona 1 a la zona 6. Sin embargo cada uno de ellos

posee unas preferencias diferentes:

! Marichu tiene una mentalidad abierta y basa sus preferencias en una simple

estructura multiobjetivo.

! Fali ha elaborado una compleja estructura decisoria tras largos años de

excursiones, lo que le permite integrar en una sola ecuación todos los factores

considerados.

! Carmen piensa que en todo momento siempre hay algunas cuestiones que son más

importantes que otras, y utiliza una estructura de preferencias lexicográfica.

Page 188: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

178

! Manolo, por el contrario, tiene una actitud más ingenieril, y se plantea cada día las

metas que pretende cumplir.

9.7.3 Excursiones Multiobjetivo

Marichu, la primera excursionista (véase la sección 9.7.2), se plantea sencillamente

como objetivos minimizar la distancia recorrida y la dificultad máxima y maximizar la

probabilidad de no encontrar osos. Los datos del modelo resultante se muestran en la tabla 9.1

Atributo Objetivo Operador de Acumulación

a1 = distancia recorrida Minimizar + a2 = dificultad máxima Minimizar Max a3 = prob. no encontrar osos Maximizar ×

Tabla 9.1. Modelo de preferencias multiobjetivo.

Supondremos que los valores del atributo correspondiente a la dificultad máxima serán

los siguientes: 1 (simple); 2 (media); 3 (avanzada).

Como función de estimación de atributos se considera la acumulación de los mismos

hasta el momento, i.e. no se hace uso de información heurística alguna. Para cada camino P =

(s, n1, n2,...nk-1, nk) será:

F(P) = {FP = A(s, n1) o A(n1, n2) o... o A(nk-1, nk)}

donde A(ni, nj) es el vector correspondiente a los valores de los atributos en el arco (ni,

nj) del grafo, que vienen dados en el orden (distancia, dificultad, probabilidad-no-encontrar-

osos), y o = (+, max, ×) es el operador de combinación vectorial acumulable. Nótese que los

dos primeros atributos son del tipo “cuanto menos mejor”, mientras que el tercero es del tipo

“cuanto más mejor”.

Puesto que el problema corresponde a un grafo finito, para asegurar que la solución

encontrada por MO-Z* es minimal (óptimo de Pareto) es necesario mostrar que:

1. La función heurística empleada es admisible.

Dada la ausencia de información heurística puede emplearse como heurístico

admisible la función:

Page 189: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

179

∀ n H(n) = {(0, -∝ , 1)}

Es decir, la única estimación proporcionada corresponde al elemento neutro del

operador o = (+, max, ×).

Veamos por qué H(n) es admisible para este problema. Según la definición de

función heurística admisible H(n) debe cumplir dos condiciones:

a) H(n) debe ser el elemento neutro de o en los nodos finales. Para este ejemplo lo

es por definición en todos los nodos del grafo.

b) Para todos los subcaminos P0-i* = (s, ... ni) subcamino de cada camino solución

minimal P*,

F(P*) = {FP*} ∧ ∃ H ∈ H(ni) / G(P*0-i) o H pF FP*

Lo que para este caso concreto queda como:

G(P*0-i) o H = G(P*

0-i) pF A(P*)

Como pA ≡ pF y G = A, tenemos que:

A(P*0-i) pA A(P*)

Veamos que se cumple para todos los caminos solución parciales P, y no solo

para los caminos solución minimales:

A(P0-i) pA A(P) ⇒ ∀ j aj(P0-i) ≤ aj(P)

Sean P un camino cualquiera de G y P = P0-i P' una partición cualquiera del

mismo, de modo que A(P) = A(P0-i) o A(P') y A(P') = (a1', a2', a3'). Veamos

que la propiedad se cumple para cada atributo:

♦ Todas las distancias a1(P) son positivas,

a1(P0-i) + a1' = a1(P) ∧ a1' ≥ 0 ⇒ a1(P0-i) ≤ a1(P)

♦ Todas las dificultades a2(P) pertenecen al conjunto {1,2,3},

Page 190: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

180

max(a2(P0-i), a2') = a2(P) ∧ a2' ∈ {1,2,3} ⇒ a2(P0-i) ≤ a2(P)

♦ Todas las probabilidades pertenecen al intervalo [0,1],

a3(P0-i) × a3' = a3(P) ∧ a3' ∈ [0,1] ⇒ a3(P0-i) ≤ a3(P)

2. Los atributos g1(P) y g2(P) conservan el orden ≤ y la igualdad. El atributo g3(P)

conserva el orden ≥ y la igualdad.

Sean dos vectores de atributos cualesquiera G = (g1, g2, g3), G' = (g'1, g'2, g'3), tales

que: g1 ≤ g'1, g2 ≤ g'2, g3 ≥ g'3.

En cuanto a la conservación del orden tenemos que:

g1 < g'1 ⇒ g1 + k ≤ g'1 + k ∀ g1,g'1,k ∈ ℜ

g2 < g'2 ⇒ max(g2, k) ≤ max(g2, k) ∀ g2,g'2,k ∈ {0, 1, 2, 3}

g3 > g'3 ⇒ g3 × k ≥ g'3 × k ∀ g3,g'3,k ∈ [0, 1]

Respecto a la conservación de la igualdad, la demostración es trivial:

g1 = g'1 ⇒ g1 + k = g'1 + k ∀ g1,g'1,k ∈ ℜ

g2 = g'2 ⇒ max(g2, k) = max(g2, k) ∀ g2,g'2,k ∈ {0, 1, 2, 3}

g3 = g'3 ⇒ g3 × k = g'3 × k ∀ g3,g'3,k ∈ [0, 1]

Por lo que es fácil concluir que el orden de poda basado en G(P) conserva el orden del

problema (pA), y por tanto será 1-prudente.

El resultado de aplicar el procedimiento MO-Z* se muestra en la tabla 9.2 donde

aparecen para cada iteración del algoritmo los nodos hasta los que llegan caminos de

ABIERTOS y los vectores de estimación correspondientes. Se supone que en caso de que

haya dos caminos minimales en ABIERTOS respecto a pF se desempata siempre eligiendo

uno arbitrariamente, aunque prefiriendo siempre los caminos solución. Los caminos

seleccionados en cada iteración se señalan mediante el símbolo %; otras alternativas

Page 191: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

181

igualmente preferibles se señalan mediante el símbolo <. El estado del grafo de búsqueda para

cada iteración se muestra en la figura 9.9.

Iteración Nodos con caminos ABIERTOS

Estimaciones: F = G(P)

It. 1 1 (raíz) (0, 0, 1) % 2 (1000, 2, 0.99) It. 2 3 (1000, 1, 0.99) % 2 (1000, 2, 0.99) <

(1800, 1, 0.792) 4 (1500, 2, 0.7425)

It. 3

5 (1700, 1, 0.891) % 2 (1000, 2, 0.99) <

(1800, 1, 0.792) % 4 (1500, 2, 0.7425)

(2000, 1, 0.7128)

It. 4

6 (2500, 2, 0.88209) 4 (1500, 2, 0.7425) <

(2000, 1, 0.7128) < (2000, 3, 0.9603) <

It. 5

6 (2500, 2, 0.88209) %

Tabla 9.2. Resultado de la aplicación de MO-Z* desglosado por iteraciones.

Buscando hacia atrás en el grafo de búsqueda puede reconstruirse el camino con

vector de atributos (2500, 2, 0.88209). Se trata de la ruta (1, 3, 5, 6).

Page 192: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

182

(0, 0, 1)1

Iteración 1

(1000, 1, 0.99)

(1000, 2, 0.99)

3

2

1

Iteración 2

(1700, 1, 0.891)

(1500, 2, 0.7425)(1800, 1, 0.792)

4

53

2

1

(1000, 2, 0.99)

Iteración 3

(1500, 2, 0.7425)(1800, 1, 0.792)

4

53

2

1

(1000, 2, 0.99)

(2500, 2, 0.88209)

(2000, 1, 0.7128)

6

Iteración 4

(2500, 2, 0.88209)

6

4

53

2

1

(1500, 2, 0.7425)(2000, 1, 0.7128)

(2000, 3, 0.9603)

Iteración 5

Figura 9.9. Estado del grafo de búsqueda para las sucesivas iteraciones de MO-Z*. Los nodos yaexpandidos al menos una vez se muestran sombreados. El vector de atributos correspondiente al

camino seleccionado en cada iteración aparece subrayado.

9.7.4 Comentarios

El algoritmo MOA* (Stewart & White, 1991) es una especialización de MO-Z* en el

sentido de que todos los atributos considerados son aditivos. En realidad MOA* puede

obtenerse como una instancia de MO-Z* salvo por las siguientes diferencias:

Page 193: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

183

• La gestión del grafo de búsqueda empleado por MO-Z* es más eficiente.

Concretamente no se reabren todos los caminos asociados a un nodo cada vez que

se encuentra un nuevo camino eficiente hasta él. Esto supone una importante

mejora en eficiencia en algunos casos.

• La versión presentada aquí de MO-Z* es 1-admisible, mientras que MOA* está

generalizado para ser N-admisible.

En (Stewart & White, 1991) se presenta una descripción detallada de MOA* junto a

una demostración de su N-admisibilidad.

La finalidad del algoritmo MO-Z* descrito en esta sección es simplemente la

obtención de un único camino solución óptimo de Pareto. En realidad MO-Z* tiene,

posiblemente, poca utilidad práctica, ya que cuando se utilizan criterios de preferencia

multiobjetivo normalmente se espera obtener bien el conjunto de todas las soluciones óptimos

de Pareto, o bien una aproximación del mismo.

En las secciones 9.11. y 9.12 se describe una sencilla generalización de POP* que

permite obtener una versión N-admisible de MO-Z*.

El algoritmo MO-Z* sirve, no obstante, como punto de partida para la obtención de

diversos algoritmos que se describen a continuación. En muchos problemas que emplean

preferencias basadas en funciones de valor o satisfacción de metas todos los atributos son del

tipo "cuanto más mejor" o "cuanto menos mejor". Las soluciones a estos problemas se

encuentran siempre entre los óptimos de Pareto.

9.8. BÚSQUEDA CON FUNCIONES DE COSTE/VALOR

MULTIATRIBUTO

En esta sección se consideran los problemas de búsqueda heurística con criterios de

preferencia basados en funciones de coste/valor. En estos problemas se desea encontrar un

camino solución óptimo en un grafo G donde la bondad de cada camino P se mide empleando

una función escalar c(P) (o más concretamente c(A(P)) que es función de diversos atributos

del camino. Normalmente se habla de coste cuando se desea minimizar una función, y de

utilidad o valor cuando se desea maximizarla. Ambos problemas son dos caras de la misma

Page 194: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

184

moneda. El análisis realizado en esta sección trata sobre la minimización de funciones de

coste multiatributo.

Consideremos una particularización de POP-Z* en la que el criterio de preferencia

heurístico consiste en minimizar una función multiatributo c(A):

A = (a1, a2,...aq) pA A’= (a1’, a2’,...aq’) sii c(A) < c(A’)

Este caso es sin duda el problema de búsqueda en grafos multicriterio que se ha

estudiado de forma más extensa, ya que tiene una correspondencia directa con la

minimización de funciones objetivo escalares. En este tipo de problemas se dan las siguientes

circunstancias:

1) La función de estimación escalar c(P) establece una relación de orden débil entre

los vectores de atributos, por tanto puede considerarse que para cada camino

solución parcial P existe una única estimación dada por:

)}({)()(

FF

cminPkPF∈

=

2) Los caminos solución minimales coinciden con los óptimos de la función c(P):

P-SET*(s, Γ) = { P ∈ P-SET(s, Γ) / ¬∃ P’ ∈ P-SET(s, Γ) con c(P’) < c(P)}.

Para la optimización de funciones que conservan el orden de preferencia Pearl propone

los algoritmos BF* y Z* (Pearl, 1984). El primero no impone ninguna restricción sobre la

naturaleza de c(P), mientras que el segundo es un caso particular en el que c(P) debe ser

acumulable.

Los algoritmos que se discuten a continuación basan su admisibilidad en la elección de

un criterio de poda y una función heurística multicriterio adecuados.

9.8.1 Algoritmo Z*

El algoritmo Z* fue propuesto en (Pearl, 1984) en el contexto de los algoritmos de

optimización escalares. En Z* el criterio de poda pp es el propio criterio de preferencia:

G pp G' sii c(G) < c(G')

Page 195: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

185

En caso de vectores iguales se emplea un orden arbitrario.

Cuando solo se considera un atributo, A = (a), el algoritmo sirve para minimizar las

funciones de coste acumulables más habituales (+, ×, min, max). La siguiente proposición

establece las condiciones para la 1-admisibilidad en el caso multiatributo.

Proposición 12 Si se cumplen las siguientes condiciones:

Z-1. La función heurística empleada H(n) es admisible.

Z-2. La función c(P) conserva el orden (≤ y la igualdad).

Entonces Z* es 1-admisible en grafos finitos. ♣

Demostración:

Sólo hay que comprobar que las condiciones Z-1 y Z-2 implican las condiciones 1-4

de POP* (proposición 2). En la sección 9.6.4 se ha visto que la admisibilidad de H(n) implica

que (pF , F) es mínimamente optimista y concordante con (pA, A). Al conservar c(P) el orden

de preferencia, el criterio de poda es 1-prudente. Además el orden de preferencia es un orden

débil, por lo que es transitivo. ♣

Proposición 13

Si además de las condiciones Z-1, Z-2 se cumple lo siguiente:

Z-3. La función de estimación heurística k(P) no está acotada en caminos infinitos.

Entonces el algoritmo Z* es 1-admisible en grafos infinitos. ♣

Demostración:

Sea k* el valor de k(P) para un camino solución óptimo. Si la función k(P) no está

acotada en caminos infinitos y al ser por definición el grafo G localmente finito, sólo puede

existir un número finito de caminos solución parciales P’ con k(P’) ≤ k*. Por tanto Z-3

implica la condición 5 de POP*, y el algoritmo terminará seleccionando un camino solución P

con k(P) = k* en un número finito de pasos. ♣

Page 196: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

186

Aparentemente sólo existen dos funciones multiatributo que conserven el orden de

preferencia, y ambas son acumulables (Carraway y otros, 1990):

1. Las funciones de atributos ai(P) aditivas y c(A) = κ1a1 + κ2a2 + .... κqaq, donde las κi

son constantes reales.

2. Las funciones de atributos ai(P) multiplicativas, atributos siempre positivos y c(A)

= κa1α1 a2

α2 ... aqαq, donde κ es una constante real y ∀ i ai ≥ 0.

A las que se pueden asociar criterios de preferencia heurísticos con las siguientes

funciones k(P) respectivamente:

}...{)( 2211)(),..( 1qqPFff

fffminPkq

κκκ ++=∈

}...{)( 22

11)(),..( 1

qqPFff

fffminPkq

ααακ ××=∈

No tiene mucho sentido entonces buscar una generalización de BF* para problemas

multicriterio, dado que en BF* el criterio de poda es igual al de preferencia heurístico. De

hecho, POP* es una generalización de BF* al caso multicriterio, pero con la salvedad de que

el criterio de poda se mantiene intencionadamente más genérico.

9.8.2 Algoritmo ZL*

Hemos visto que Z* es adecuado para dos funciones de coste multiatributo

interesantes. Para el caso de funciones c(P) que no conserven el orden puede emplearse otro

algoritmo que denominaremos ZL*. Este algoritmo está basado en el propuesto en (Loui,

1983) para búsqueda multicriterio no informada con atributos aditivos. ZL* está generalizado

para atributos acumulables y búsqueda heurística.

En ZL* el criterio de poda pp se basa en el orden de Pareto sobre los valores de G(P):

G = (g1, g2,...gq) pp G’= (g1’, g2’,...gq’) sii

∀ i gi ≤ gi‘∧ G ≠ G’

En caso de vectores iguales se emplea un orden arbitrario.

Page 197: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

187

Definición:

Diremos que una preferencia pA es monótona con los vectores de atributos A = (a1(P),

a2(P),...aq(P)) si:

• Todos los atributos ai(P) son del tipo “cuanto menos mejor” o “cuanto más mejor”.

• Si ai(P) es del tipo “cuanto más mejor”, entonces para dos vectores cualesquiera A

= (a1, a2,...aq), A = (a1’, a2’,...aq’) se cumple siempre que,

∃ i ai > ai’ ∧ ∀ j≠i aj = aj’ ⇒ A pA A’.

• Si ai(P) es del tipo “cuanto menos mejor”, entonces para dos vectores cualesquiera

A = (a1, a2,...aq), A = (a1’, a2’,...aq’) se cumple siempre que,

∃ i ai < ai’ ∧ ∀ j≠i aj = aj’ ⇒ A pA A’.

Proposición 14

Si se cumplen las siguientes condiciones:

ZL-1. H(n) es admisible.

ZL-2. c(P) es monótona con todas las funciones ai(P).

ZL-3. Todas las funciones gi(P) conservan el orden (≤ y la igualdad).

Entonces ZL* es 1-admisible en grafos finitos. ♣

Demostración:

La condición ZL-1 implica las condiciones 1 y 2 de POP* (proposición 2). El orden de

preferencia también es transitivo por definición.

Ahora bien, como se supone que c(P) es monótona con las funciones ai(P), entonces

por definición los óptimos de c(P) / P ∈ P-SET(s, Γ) estarán entre los óptimos de Pareto de

los A(P) / P ∈ P-SET(s, Γ). Como las funciones gi(P) conservan el orden, entonces la poda de

óptimos de Pareto será 1-admisible, y la de los óptimos de c(P) también. Al conservar todas

Page 198: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

188

las funciones gi(P) la igualdad, cualquier orden de poda para el caso de la igualdad será

también 1-admisible. ♣

Proposición 15

Si además de las condiciones ZL-1, ZL-2 y ZL-3 se cumple que:

ZL-4. La función de estimación heurística k(P) no está acotada en caminos infinitos.

Entonces ZL* es 1-admisible en grafos infinitos. ♣

Demostración:

La condición ZL-4 es idéntica a la Z-3 (proposición 3). Por tanto la demostración es

idéntica a la presentada para el algoritmo Z*. ♣

Para conseguir criterios de poda más eficaces puede intentar aplicarse la condición

CMM (véase la sección 9.5.2.2) tal como se explica en (Carraway y otros, 1990).

9.8.3 Algoritmo U*

(White y otros, 1992) proponen un algoritmo de búsqueda heurística denominado U*

para la optimización de funciones de valor que no conserven el orden. El objetivo es

aparentemente aprovechar la condición CMM descrita en la sección 9.5.2.2 (Carraway y

otros, 1990) con ayuda de información heurística sobre el problema. Se supone que los

atributos son acumulables mediante operador o y que F(P) es de estimación directa.

Tal y como aparece descrito en el artículo original, U* supone que todos los atributos

son del tipo "cuanto más mejor", y que se pretende maximizar el valor de una función u(P).

Por coherencia con los restantes algoritmos analizados en la tesis, y sin pérdida de

generalidad, la versión aquí comentada de U* se ha modificado para atributos del tipo "cuanto

menos mejor" y función c(P) a minimizar.

(White y otros, 1992) presentan un criterio de poda que los autores denominan

"culling" (eliminación selectiva), y que, empleando la notación ya presentada, puede

describirse de la siguiente forma. Sean dos caminos P'' = (s,.., n''), P' = (s,..n'):

Page 199: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

189

P'' pp P' sii

∀ FP’∈ F(P'), ∀ FP'' ∈ F(P''), c(FP'') < c(FP’)

En definitiva, un camino P'' permite podar a otro P' si todas las estimaciones

heurísticas de P'' son preferibles a las de P'.

Una diferencia importante con otros criterios de poda presentados en este capítulo es

la utilización de información heurística, de hecho E(P) = F(P). Además, para que un camino

pode a otro no es necesario que conduzcan al mismo nodo. Es fácil comprobar que cuando

varios caminos conducen a un mismo nodo, el criterio de poda solo conserva aquellos que son

óptimos de Pareto. Sin embargo los propios autores afirman lo siguiente: “... señalamos que

gran parte del cálculo de eliminación selectiva [culling] es improductivo, como puede

observarse a partir de la pequeña proporción de iteraciones en las que los vectores de atributos

son eliminados por este procedimiento” (p. 362).

Obviamente U* no es una instancia de POP-Z*, aunque si de POP*. La siguiente

proposición analiza las condiciones presentadas en (White y otros, 1992) para su

admisibilidad.

Proposición 16

Si se cumplen las siguientes condiciones:

U1. H(n) es tal que:

a) ∀ n ∈ NODOS(G) ∃ P∈ P-SET*(n, Γ) ∧ ∃ H ∈ H(n) / H ≥ A(P)

b) ∃ P*=(s=n0, n1, ... nK=γ ) ∈ P-SET*(s, Γ) / ∀ Pi = (ni, ni+1,...nK) subcamino de P*

∃ H = A(Pi)∈ H(ni)

U2. c(P) es isótona (monótona no decreciente) con los valores de los atributos, i.e., sean dos

vectores de atributos A = (a1, a2,...aq), A = (a1’, a2’,...aq’) se cumple siempre que,

∀ ai, ai ≤ ai’ ⇒ A pA A’

U3. El operador de acumulación o es tal que para cualesquiera vectores R1, R2, X ∈ ℜ q, se

cumple siempre que: R1 ≤ R2 ⇒ R1 o X ≤ R2 o X

Entonces U* es 1-admisible en grafos finitos (White y otros, 1992, p.360). ♣

Page 200: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

190

Las condiciones U2 y U3 son similares a las ya presentadas para otros algoritmos. La

condición U2 significa que los óptimos de c(P) se encontrarán entre los óptimos de Pareto. La

condición U3 tiene una finalidad análoga a la definición de conservación del orden descrita en

la sección 9.5.2.1.

Las condiciones establecidas en U1 sobre la función heurística H(n) son

extraordinariamente fuertes:

a) Todos los nodos tienen al menos una estimación pesimista o igual al valor real de

los atributos de algún camino solución minimal local.

b) Al menos para un camino solución minimal del problema todas las estimaciones

son exactas, es decir, coinciden con el valor real de los atributos.

Obviamente estas condiciones no coinciden con la definición de función heurística

admisible presentada en la sección 9.6.4 y utilizada en el resto de este capítulo.

Demostración:

Las condiciones presentadas son muy específicas y por tanto no implican las

condiciones suficientes presentadas para la 1-admisibilidad de POP*. Sin embargo, también

son suficientes para demostrar la 1-admisibilidad de U*.

Las condiciones U1 y U3 garantizan de por sí que el algoritmo terminará

seleccionando alguno de los caminos solución minimales P* que cumplan U1.b.

Las condiciones U1.a, U2 y U3 garantizan que el criterio de poda no eliminará de

ABIERTOS nunca los subcaminos solución parciales de los caminos P* que cumplan U1.b.

Gracias a U1 sabemos que un camino solución minimal P* tiene estimación exacta. Para que

fuese podado por otro camino solución parcial P’ que conduzca a una solución no minimal

sería necesario que P’ tuviese estimaciones mejores, lo cual es imposible, ya que por U1 todas

las estimaciones son pesimistas o iguales a los valores reales y P’ conduce a una solución

peor. Tanto si P’ conduce a solución minimal como si no, al ser la estimación pesimista y

cumplirse U2, U3, nunca podrá podar a ningún subcamino de P*.

Page 201: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

191

Proposición 17

Si además de las condiciones anteriores (U1-3) se cumple que:

U4. La función de estimación heurística k(P) no está acotada en caminos infinitos.

Entonces U* es 1-admisible en grafos infinitos. ♣

Demostración:

La demostración es idéntica a la presentada para Z* (proposición 13), aunque no se

proporciona en (White y otros, 1992). ♣

9.8.4 Excursiones con valor multiatributo

Para ilustrar el funcionamiento del algoritmo ZL* se consideran los criterios

empleados por Fali, el segundo excursionista, en el problema de planificación de excursiones

presentado en la sección 9.7.2.

Fali ha desarrollado una ecuación que representa el coste multiatributo de cada

excursión cuando intervienen los factores distancia, nivel de dificultad (1-simple; 2-media; 3-

avanzada) y probabilidad de no encontrar osos. Sea A(P) = (a1, a2, a3) el vector de atributos de

un camino P, donde:

a1 = distancia recorrida.

a2 = dificultad máxima.

a3 = probabilidad de no encontrar osos.

La ecuación elaborada por Fali es:

321

1000)( aaac −×=A

Emplearemos la función heurística ∀ n H(n) = {(0,-∝ ,1)}, al igual que en el ejemplo

presentado en la sección 9.7.3. Puesto que el problema corresponde a un grafo finito, para

asegurar que la solución encontrada por ZL* es minimal es necesario mostrar que:

1. La función heurística empleada es admisible.

Page 202: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

192

2. La función c(P) es monótona con los gi(P).

3. Las funciones gi(P) conservan el orden ≤ y la igualdad.

Las condiciones 1 y 3 se cumplen como ya se demostró en la sección 9.7.3. También

es fácil mostrar que se cumple la condición 2:

u(g1, g2, g3) ≤ u(g1+ k, g2, g3) ∀ g1,g2, g3 ∈ ℜ , k > 0.

u(g1, g2, g3) ≤ u(g1, max(g2, k), g3) ∀ g1,g2, g3,k ∈ {1, 2, 3}

u(g1, g2, g3) ≤ u(g1, g2, g3×k) ∀ g1,g2, g3,k ∈ [0, 1]

El resultado de aplicar el procedimiento ZL* se muestra en la tabla 9.3, donde aparecen

para cada iteración del algoritmo los nodos con caminos en ABIERTOS y los vectores de

estimación de atributos de los caminos que llegan a ellos. Se supone que en caso de que haya

dos caminos minimales en ABIERTOS se desempata siempre eligiendo uno arbitrariamente,

prefiriendo siempre los caminos solución. Los caminos seleccionados en cada iteración se

señalan mediante el símbolo %. El estado del grafo de búsqueda en cada iteración se muestra

en la figura 9.10.

Tras la expansión del nodo 2 en la iteración 3, el camino (1,3,2,4) resulta podado al

estar dominado su vector de atributos (2800, 3, 0.76824). Tras la expansión del nodo 4 en la

iteración 4, el camino (1,3,4,6) resulta podado al estar dominado su vector de atributos (3000,

2, 0.735075).

Page 203: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

193

Iteración Nodos con caminos ABIERTOS

Estimaciones: F-SET(n) c(F)

It. 1 1 (raíz) (0, 0, 1) -1 % 2 (1000, 2, 0.99) 1.01 It. 2 3 (1000, 1, 0.99) 0.01 % 2 (1000, 2, 0.99) 1.01

(1800, 1, 0.792) 1.008 4 (1500, 2, 0.7425) 2.2575

It. 3

5 (1700, 1, 0.891) 0.809 % 2 (1000, 2, 0.99) 1.01

(1800, 1, 0.792) 1.008 % 4 (1500, 2, 0.7425) 2.2575

(2000, 1, 0.7128) 1.2872

It. 4

6 (2500, 2, 0.88209) 4.11791 4 (1500, 2, 0.7425) 2.2575

(2000, 1, 0.7128) 1.2872 % (2000, 3, 0.9603) 5.0397

It. 5

6 (2500, 2, 0.88209) 4.11791 It. 6 6 (2500, 2, 0.88209) 4.11791

(3500, 1, 0.705672) 2.794328 % (3500, 3, 0.950697) 9.549303

Tabla 9.3. Resultado de aplicar el procedimiento ZL* desglosado por iteraciones.

Buscando hacia atrás en el grafo de búsqueda puede reconstruirse el camino con

vector de atributos (3500, 1, 0.705672). Se trata de la ruta (1, 3, 5, 4, 6).

Page 204: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

194

(0, 0, 1) : -11

Iteración 1

(1000, 1, 0.99) : 0.01

(1000, 2, 0.99) : 1.01

3

2

1

Iteración 2

(1700, 1, 0.891): 0.809

(1500, 2, 0.7425): 2.2575(1800, 1, 0.792): 1.008

4

53

2

1

(1000, 2, 0.99) : 1.01

Iteración 3

(1500, 2, 0.7425):2.2575(1800, 1, 0.792):1.008

4

53

2

1

(1000, 2, 0.99):1.01

(2500, 2, 0.88209):4.11791

(2000, 1, 0.7128):1.2872

6

Iteración 4

(2500, 2, 0.88209): 4.11791

6

4

53

2

1

(2000, 3, 0.9603):5.0397(2000, 1, 0.7128):1.2872

(1500, 2, 0.7425):2.2575

Iteración 5

(2500, 2, 0.88209): 4.11791 6

4

53

2

1(3500, 3, 0.9506):9.5493(3500, 1, 0.705):2.7943

Iteración 6

Figura 9.10. Estado del grafo de búsqueda para las sucesivas iteraciones de ZL* aplicado al ejemplo.Los nodos que ya se expandieron al menos una vez se muestran sombreados. El vector de atributos

correspondiente al camino seleccionado en cada iteración aparece subrayado.

9.8.5 Comentarios

Las características de los algoritmos analizados para la minimización de funciones de

coste multiatributo aparecen resumidas en la tabla 9.4.

Page 205: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

195

Alg. Criterio de poda Condiciones suficientes para 1-admisibilidad en grafos finitos.

Z* P pp P’ sii P y P’ llevan al mismo nodo, c(G(P)) < c(G(P’))

H(n) admisible. c(P) conserva el orden (≤ y la igualdad).

ZL* P pp P’ sii P y P’ llevan al mismo nodo, G(P) = (g1, g2,...gq), G(P’)= (g1’, g2’,...gq’) , ∀ i gi ≤ gi‘ ∧ G(P) ≠ G(P’)

H(n) admisible. c(P) es monótona con los atributos. Los atributos conservan el orden (≤ y la igualdad).

U* P'' pp P' sii ∀ FP’∈ F(P'), ∀ FP'' ∈ F(P''), c(FP'') < c(FP’)

H(n) es tal que: (i) todos los nodos tienen algún H pesimista; (ii) H es exacto para los nodos de algún camino solución minimal. c(P) es isótona con los atributos. R1 ≤ R2 ⇒ R1 o X ≤ R2 o X ∀ R1, R2, X ∈ ℜ q

Tabla 9.4. Criterios de poda y condiciones para la 1-admisibilidad de los algoritmos Z*, ZL* y U*.

A partir de los resultados descritos puede concluirse que la generalización de Z* para

el caso multicriterio es de utilidad en los dos tipos de funciones multiatributos más utilizadas

(la aditiva y la multiplicativa), aunque sólo en el caso de que todos los atributos sean también

aditivos o multiplicativos respectivamente.

En otros casos la función de coste c(P) no conservará el orden. No parece tener sentido

entonces una generalización directa de BF*, y es necesario buscar criterios de poda

alternativos. Es bastante frecuente que todos los atributos considerados sean bien del tipo

"cuanto más mejor" o bien "cuanto menos mejor". En tal caso las funciones de coste/valor

suelen ser monótonas y puede usarse ZL*, que emplea el orden de Pareto como criterio de

poda.

La condición CMM descrita en la sección 9.5.2.2 (Carraway y otros, 1990) abre la

posibilidad de criterios de poda más eficaces que el orden de Pareto, aunque para que sean

efectivos es necesario disponer de información heurística adecuada. El algoritmo U* es un

ejemplo muy restringido, ya que la información heurística que precisa difícilmente estará

disponible en muchos problemas reales. El mayor inconveniente de este algoritmo es que sus

autores no proporcionan criterios operativos para obtener el tipo de información heurística

necesaria.

Page 206: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

196

9.9. BÚSQUEDA CON OBJETIVOS ORDENADOS POR PRIORIDAD

El método lexicográfico (véase p. ej. (Chankong & Haimes, 1983, pp. 200-205)) está

basado en la idea de la eliminación secuencial de alternativas. En primer lugar se pide al

centro decisor que ordene los objetivos considerados en términos de su importancia. En un

primer paso se obtienen todas las alternativas que proporcionan un valor óptimo para el

primer objetivo y se descartan las restantes. A partir del nuevo conjunto de alternativas se

calculan aquellas que proporcionan un valor óptimo para el segundo objetivo y se descartan

las demás. El proceso continúa hasta que el conjunto considerado de alternativas posee un

solo elemento, o todos los objetivos han sido considerados.

Consideremos un problema de búsqueda en grafos (G, s, Γ) con q atributos, a1(P),

a2(P), ... aq(P), y un criterio de preferencia lexicográfico consistente en los siguientes

objetivos, ordenados por prioridad:

Prioridad 1: Minimizar a1(P)

Prioridad 2: Minimizar a2(P)

...

Prioridad q: Minimizar aq(P) donde P ∈ P-SET(s, Γ)

El criterio de preferencia lexicográfico que responde a dicha formulación puede

expresarse de la siguiente forma:

A = (a1, a2,...aq) pA A’= (a1’, a2’,...aq’) sii

∃ j aj < aj’ ∧ ∀ i < j ai = ai’

Trivialmente, toda solución minimal de estos problemas será un óptimo de Pareto.

Para resolver problemas de búsqueda en grafos con este tipo de preferencias no es necesario

llevar a cabo q operaciones de búsqueda secuencialmente. Una particularización adecuada de

POP-Z* permite garantizar bajo condiciones razonables que la primera solución encontrada es

minimal.

Page 207: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

197

9.9.1 Algoritmo PRIMO-Z*

El criterio de poda empleado por PRIMO-Z* es el propio criterio de preferencia:

G = (g1, g2,...gq) pp G’= (g1’, g2’,...gq’) sii

∃ j gj < gj’ ∧ ∀ i < j gi = gi’

Cuando G = G' se establece un orden arbitrario.

Proposición 18

Si se cumplen las siguientes condiciones:

PRIMOZ-1. La función heurística empleada H(n) es admisible.

PRIMOZ-2. Cada una de las funciones gi(P) conserva el orden < y la igualdad.

Entonces PRIMO-Z* es 1-admisible en grafos finitos. ♣

Demostración:

Al ser H(n) admisible se cumplen las condiciones 1 y 2 de POP* (proposición 2).

El orden lexicográfico es transitivo. Para comprobarlo basta ver que:

F pF F’ ⇒ ∃ j / fj < fj’ ∧ ∀ i < j fi = fi’

F’ pF F’’ ⇒ ∃ k / fk’ < fk’’ ∧ ∀ m < k fm

’ = fm’’

si j < k ⇒ fj < fj’ = fj’’ ∧ ∀ i < j fi = fi’ = fi’’

si j = k ⇒ fj < fj’ < fj’’ ∧ ∀ i < j fi = fi’ = fi’’

si j > k ⇒ fk = fk’ < fk’’ ∧ ∀ i < k fi = fi’ = fi’’

Con lo que en todos los casos F pF F’’, como se quería demostrar.

La única posibilidad de que F ~ F’ es que F = F’. Es fácil comprobar entonces que la

relación de orden no solo es transitiva, sino que es un orden estricto sobre el conjunto de

vectores de atributos.

Page 208: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

198

Si cada componente conserva el orden de preferencia < ("menor que", estricto)

obviamente el criterio de poda es 1-prudente. ♣

Nótese que si alguna función gi(P) no conserva el orden <, no puede garantizarse que

la poda sea 1-prudente. Concretamente, conservar el orden ≤ no es suficiente.

Proposición 19

Si además de las condiciones PRIMOZ-1 y PRIMOZ-2 se cumple lo siguiente:

PRIMOZ-3. Ninguna componente fi de los vectores de estimación de atributos está acotado

en caminos infinitos.

Entonces PRIMO-Z* es 1-admisible en grafos infinitos. ♣

Demostración:

Sea F* = (f1*, f2

*,...fq*) el vector de estimación de un camino solución minimal del

problema. Si ninguna componente fi de los vectores de estimación está acotada en caminos

infinitos, al ser por definición el grafo G localmente finito, sólo puede existir un número finito

de caminos solución parciales P’ con F = (f1, f2,...fq) ∈ F(P’) / fi ≤ fi* ∀ i.

Por tanto la condición PRIMOZ-3 implica la condición 5 de POP* (proposición 3), y

el algoritmo terminará seleccionando un camino solución P con F’ ∈ F(P) / F’ = F*. ♣

9.9.2 Algoritmo PRIMO-ZL*

Consideremos una nueva variante de POP-Z* para este problema en la que el criterio

de poda empleado es el orden de Pareto sobre los valores de G(P):

G = (g1, g2,...gq) pp G’= (g1’, g2’,...gq’) sii

∀ i gi ≤ gi’ ∧ G ≠ G'

Cuando G = G' se establece un orden arbitrario.

Page 209: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

199

Proposición 20

Si se cumplen las siguientes condiciones:

PRIMOZL-1. La función heurística empleada H(n) es admisible.

PRIMOZL-2. Cada una de las funciones gi(P) conserva la igualdad y bien el orden < o bien

el orden ≤.

Entonces PRIMO-ZL* es 1-admisible en grafos finitos. ♣

Demostración:

Al ser H(n) admisible se cumplen las condiciones 1 y 2 de POP* (proposición 2).

El orden lexicográfico es transitivo y establece un orden estricto sobre el conjunto de

vectores de atributos.

Sabemos que las soluciones a un problema lexicográfico están siempre entre los

óptimos de Pareto de los A(P) ∀ P ∈ P-SET(s, Γ). Como las funciones gi(P) conservan el

orden el orden < ó el ≤, entonces la poda de óptimos de Pareto será 1-admisible, y en

consecuencia la de los óptimos del orden lexicográfico también. Al conservar todas las

funciones gi(P) la igualdad, cualquier orden de poda para el caso de la igualdad será también

1-admisible. ♣

Proposición 21

Si además de las condiciones PRIMOZL-1 y PRIMOZL-2 se cumple lo siguiente:

PRIMOZL-3. Ninguna componente fi de los vectores de estimación de atributos está acotado

en caminos infinitos.

Entonces PRIMO-ZL* es 1-admisible en grafos infinitos. ♣

Demostración:

Idéntica a la presentada para la proposición 19. ♣

Page 210: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

200

9.9.3 Excursiones lexicográficas

Consideremos un criterio de preferencia lexicográfico para el problema descrito en la

sección 9.7.2. Carmen, la tercera excursionista, se plantea como objetivos minimizar la

distancia recorrida y maximizar la probabilidad de no encontrar osos. Sin embargo, considera

que no todos los objetivos tienen la misma importancia y que hay que abordarlos

ordenadamente. Los datos del modelo lexicográfico resultante se muestran en la tabla 9.5.

Prioridad Atributo Objetivo Operador de acumulación

1ª a1 = distancia recorrida minimizar + 2ª a2 = prob. no encontrar osos maximizar ×

Tabla 9.5. Dos objetivos ordenados por prioridad.

Es decir, lo más importante es minimizar la distancia recorrida. Adicionalmente, y sin

perjuicio del objetivo anterior, se desea minimizar la probabilidad de no encontrar osos.

Supondremos que el vector de atributos de un camino P es A(P) = (a1, a2).

Puesto que el problema corresponde a un grafo finito, para asegurar que la solución

encontrada por PRIMO-Z* es minimal respecto al criterio de preferencia lexicográfico, es

necesario mostrar que:

1. La función heurística empleada ∀ n H(n) = {(0, 1)} es admisible.

2. Cada una de las funciones gi(P) i = 1,2 conserva el orden < y la igualdad.

La condición 1 se cumple, tal y como se demostró en la sección 9.7.3. Para comprobar

la condición 2, sean los caminos:

P P'

P''

donde G(P) = (g1, g2), G(P’) = (g1’, g2’), G(P’’) = (g1’’, g2’’).

Page 211: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

201

Es fácil comprobar entonces que:

! g1 < g1’ ⇒ g1 + g1’’ < g1’ + g1’’ ∀ g1, g1’, g1’’ ∈ ℜ +

! g2 < g2’ ⇒ g2 × g2’’ < g2’ × g2’’ ∀ g2, g2’, g2’’ ∈ [0, 1]

Por tanto puede emplearse el algoritmo PRIMO-Z* para resolver este problema. El

resultado se muestra en la tabla 9.6. La figura 9.11 muestra el estado del grafo de búsqueda

(en realidad, un árbol de búsqueda) para cada iteración. Los caminos seleccionados en cada

iteración se señalan mediante el símbolo %; otras alternativas igualmente preferibles se

señalan mediante el símbolo <. El camino resultante es el (1,3,5,6) con atributos (2500,

0.88209).

It. Nodos con caminos ABIERTOS

Estimaciones: F-SET(n) = G-SET(n)

Podas

It. 1 1 (raíz) (0, 1) % 2 (1000, 0.99) % It. 2 3 (1000, 0.99) <

3 (1000, 0.99) % It. 3 4 (2000, 0.9603)

Se poda el camino (1,2,3) con atributos (1800, 0.792)

4 (1500, 0.7425) % It. 4

5 (1700, 0.891)

Se poda el camino (1,3,2) con atributos (1800, 0.792). Se poda el camino (1,2,4) con atributos (2000, 0.9603).

5 (1700, 0.891 % It. 5 6 (3000, 0.735075)

It. 6 6 (2500, 0.88209) % Se poda el camino (1,3,4,6) con atributos (3000, 0.735075)

Tabla 9.6. Datos correspondientes a la aplicación del algoritmo PRIMO-Z*.

Page 212: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

202

(0, 1)1

Iteración 1

(1000, 0.99)

(1000, 0.99)

3

2

1

Iteración 2

(2000, 0.9603)

(1000, 0.99)

4

3

2

1

Iteración 3

(1700, 0.891)

4

53

2

1

(1500, 0.7425)

Iteración 4

(1700, 0.891)

6

4

53

2

1 (3000, 0.735)

Iteración 5

6

4

53

2

1

(2500, 0.735)

Iteración 6

Figura 9. 11. Estado del grafo de búsqueda para las sucesivas iteraciones de PRIMO-Z* aplicado alejemplo. Los nodos que ya se expandieron al menos una vez se muestran sombreados. El vector de

atributos correspondiente al camino seleccionado en cada iteración aparece subrayado.

Consideremos ahora el caso en que Carmen decide tener en cuenta también la

dificultad del camino como tercer objetivo, tal y como se muestra en la tabla 9.7.

Prioridad Atributo Objetivo Operador de Acumulación

1ª a1 = distancia recorrida minimizar + 2ª a2 = prob. no encontrar osos maximizar × 3ª a3 = dificultad máxima minimizar max

Tabla 9.7. Dos objetivos ordenados por prioridad.

Page 213: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

203

Es fácil comprobar entonces que, dados tres vectores cualesquiera, G(P) = (g1, g2, g3),

G(P’) = (g1’, g2’, g3’), G(P’’) = (g1’’, g2’’, g3’’), no se cumple en general que:

! g3 < g3’ ⇒ max(g3, g3’’ ) < max(g3’, g3’’) ∀ g3, g3’, g3’’ ∈ {0, 1, 2, 3}

Por tanto no se satisfacen las condiciones de PRIMO-Z* enunciadas en la proposición

18. Si se cumplen, por el contrario, las condiciones de PRIMO-ZL*, que sólo exige conservar

el orden ≤. En consecuencia, la elección adecuada para este nuevo problema sería el algoritmo

PRIMO-ZL*.

9.9.4 Comentarios

En el caso de las preferencias lexicográficas es fácil comprobar que la relación de

orden no solo es transitiva, sino que establece un orden estricto sobre el conjunto de vectores

de estimación de atributos. Una consecuencia muy interesante es que si los atributos

conservan el orden < y la igualdad (PRIMO-Z*), sólo es necesario conservar en CAMINOS

un camino hasta cada nodo conocido, y por tanto puede utilizarse como estructura un árbol de

búsqueda tal como ocurre en el algoritmo A*. Esto supone no solo una implementación más

sencilla del algoritmo, sino una mayor eficiencia del mismo en comparación con los criterios

de poda empleados en otros algoritmos multicriterio.

Una versión de PRIMO-Z* con atributos aditivos (denominada PRIMO-A*) aparece

descrita en (Mandow y otros, 1998), junto a su aplicación a un problema de planificación de

caminos para robots móviles autónomos. Este caso es especialmente interesante, ya que la

función suma conserva la igualdad y el orden <.

9.10. BÚSQUEDA CON SATISFACCIÓN DE METAS

Las preferencias basadas en la satisfacción de metas no han recibido demasiada

atención hasta la fecha dentro de los problemas de búsqueda en grafos. Podemos definir

informalmente los problemas de metas ponderadas como consistentes en encontrar un camino

solución no dominado P que satisfaga lo mejor posible un conjunto de metas. La importancia

relativa de las metas se mide empleando un conjunto de pesos {wi}, i.e.:

Page 214: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

204

Encontrar un camino P que satisfaga ai(P) ≤ ti con importancia relativa wi

donde i = 1..q

P ∈ P-SET(s, Γ) ∀ i ti ≥ 0, wi > 0

Los dos criterios de preferencia que se describen a continuación son, posiblemente, los

más utilizados para problemas de satisfacción de metas:

• Metas ponderadas:

A = (a1, a2,...aq) pA A’= (a1’, a2’,...aq’) sii

p(A) < p(A’)

o bien

p(A) = p(A’) ∧ ∀ i ai ≤ ai‘ ∧ A ≠ A’

Suponiendo que todas las metas son de la forma ai ≤ ti, todos los atributos son

del tipo "cuanto menos mejor", y p(A) es una medida de la desviación ponderada de

las metas.

• Metas lexicográficas:

A = (a1, a2,...aq) pA A’= (a1’, a2’,...aq’) sii

∃ j / pj(A) < pj(A’) ∧ ∀ i < j pi(A) = pi(A’)

o bien

∀ k pk(A) = pk(A’) ∧ ∀ i ai ≤ ai‘ ∧ A ≠ A’

Suponiendo que todas las metas se agrupan en niveles de prioridad

excluyentes, que las metas del nivel de prioridad i son de la forma aij ≤ tij, que todos

los atributos son del tipo "cuanto menos mejor", y que pi(A) es una medida de la

desviación ponderada de las metas del nivel de prioridad i.

Cuando varias soluciones proporcionan la misma satisfacción de las metas se prefieren

aquellas que sean óptimos de Pareto, ya que todos los atributos se suponen del tipo "cuanto

Page 215: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

205

menos mejor". Cuando no es posible satisfacer todas las metas simultáneamente la solución

viene dada por aquellos caminos óptimos de Pareto para los que la desviación ponderada de

las metas es mínima.

Podemos medir la desviación de cada meta para cada componente ai de un vector de

atributos A como:

max(0, ai - ti)

En algunos casos es habitual normalizar las desviaciones dividiéndolas por ti. El

resultado mide entonces la desviación porcentual de cada meta respecto a su nivel de

aspiración. Obviamente, en tales casos se exige que ∀ i ti > 0.

Existen diversas formas de medir la desviación ponderada de las metas. Las más

usuales son las siguientes, o sus formas normalizadas:

• Suma ponderada de desviaciones:

∑=

−×=q

iiii tamaxwp

1),0()(A

• Desviación ponderada máxima (estrategia minmax):

[ ]),0()( iiiitamaxwmaxp −×=A

Un problema de satisfacción de metas lexicográficas está compuesto por conjuntos de

metas ponderadas ordenados por prioridad. Para el nivel de prioridad i, la desviación de las

metas {aij ≤ tij} vendrá definida análogamente de la siguiente forma:

• Suma ponderada de desviaciones:

∑ −×=j

ijijiji tamaxwp ),0()(A

• desviación ponderada máxima:

)),0(()( ijijijji tamaxwmaxp −×=A

Page 216: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

206

Para obtener un algoritmo de satisfacción de metas a partir de POP-Z* hay que

analizar para que casos (F, pF) es mínimamente optimista y concuerda con (A, pA), y

encontrar un criterio de poda prudente. Los órdenes de preferencia correspondientes a las

medidas de desviación p(A) descritas son trivialmente transitivos.

La siguiente sección analiza en detalle varios criterios de poda posibles. A

continuación se presenta METAL-ZL* (METAs Lexicográficas - ZL*), un algoritmo para

problemas de metas lexicográficas con atributos acumulables.

9.10.1 Criterios de poda para algoritmos de satisfacción de metas

En esta sección se analizan algunos criterios de poda posibles para los problemas de

satisfacción de metas.

9.10.1.1 Uso del criterio de preferencia como criterio de poda

Tal vez la idea más sencilla e inmediata consiste en utilizar el propio criterio de

preferencia como criterio de poda:

G pp G’ ⇔ G pA G’

Esto da resultado en otros algoritmos bajo determinadas condiciones, como por

ejemplo, Z*, MO-Z* o PRIMO-Z*. Sin embargo no parece haber ningún caso interesante en

que emplear como orden de poda pp ≡ pA resulte en un algoritmo admisible. Concretamente,

puede considerarse el siguiente ejemplo para ver que no se cumple con funciones de coste

aditivas y metas ponderadas (lógicamente tampoco se cumplirá con metas lexicográficas).

Ejemplo. Supongamos que :

& El problema consta de dos atributos A(P) = (a1(P), a2(P)).

& Ambos atributos son aditivos, i.e. o = (+, +).

Sea la definición de problema:

a1(P) ≤ 10 ; w1 = 1

a2(P) ≤ 10 ; w2 = 1

Page 217: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

207

∑=

−×=2

1),0()(

iiii tamaxwp A

P2G(P2) = (1, 11)P1

G(P1) = (10, 1) P3A(P3) = (10, 1)

)( )( 3))((

10))(()( )(

1))((0))((

313232

3121

2

1 PPPPPPp

PPpPP

PpPp

AA GGGG

GGGG

pp ⇒

==

==

El resultado obtenido es el mismo si se aplica el criterio de la máxima desviación. ♣

Debemos concluir por tanto que, en general, los órdenes inducidos por los criterios de

preferencia considerados para la satisfacción de metas no admiten pp ≡ pA cuando las

funciones de coste son aditivas.

Puede ayudar también en esta observación el hecho de que ninguna de las funciones

escalares p(A) comentadas tiene la forma de las presentadas en la sección 9.8 para el

algoritmo Z*.

9.10.1.2 Orden de Pareto como criterio de poda

Todas las relaciones de preferencia descritas anteriormente para la satisfacción de

metas pA son isótonas con los valores de los atributos ai, i.e.:

∀ ai, ai ≤ ai' ⇒ A pA A'

En consecuencia las soluciones a los problema de metas están incluidas entre los

óptimos de Pareto, y se puede utilizar dicho orden como criterio de poda para obtener un

algoritmo 1-admisible, tal como ocurre, por ejemplo, en ZL* o PRIMO-ZL*:

G = (g1, g2,...gq) pp G’= (g1’, g2’,...gq’) sii

∀ i gi ≤ gi‘ ∧ G ≠ G'

En caso de que G = G' el orden puede ser arbitrario.

Page 218: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

208

De hecho este ha sido el criterio empleado en las sucesivas versiones del algoritmo

METAL-A* (Mandow y Millán, 1997) (Mandow, 1997) (Fernández y otros, 1999). Tal vez

hubiera sido más adecuado para la terminología aquí empleada denominarlo METAL-AL*.

Dicho algoritmo se describe con detalle en el capítulo 10.

9.10.1.3 Criterios de poda locales para los problemas de metas

Otra posibilidad es aplicar la condición CMM a las funciones que miden la desviación

ponderada de las metas, e intentar averiguar así nuevos criterios de poda 1-prudentes.

A continuación se realiza un breve análisis suponiendo que el criterio de poda se

aplicará sobre los vectores G(P) y que la desviación de las metas acumulada por un camino se

mide como:

∑=

−×=q

iiii tgmaxwp

1),0()(G donde ∀ i wi, ti ≥ 0

Se pueden obtener resultados análogos para las otras definiciones de p(G). El criterio

resultante podrá usarse para todos los problemas de metas que usen la misma definición del

criterio de preferencia.

Sean G y G' los vectores de atributos de dos caminos que llegan a un mismo nodo n.

Condición suficiente para que:

G =(g1,.. gq) pp G' =(g1’,...gq’)

es que:

∀ A ∈ {A(P) / P ∈ P-SET(n, Γ)} p(G o A) < p(G' o A)

Si el operador de acumulación es o = (o1, o2,...oq) tendremos entonces como condición

suficiente para la poda que:

Page 219: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

209

∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)}

∑∑==

−×≤−×∀q

iiiiii

q

iiiiii tagmaxwtagmaxwi

11)',0(),0( oo

∑∑==

−×<−×∃q

jjjjjj

q

jjjjjj tagmaxwtagmaxwj

11)',0(),0( oo

Las condiciones bajo las cuales lo anterior puede ser cierto serán diferentes en función

del operador de acumulación oi empleado para cada atributo. Una condición suficiente para

que se cumpla la desigualdad anterior es que se cumpla componente a componente. Una

posibilidad (por supuesto hay otras) puede ser la siguiente:

& para atributos aditivos (i.e., oi = +) se cumplirá si, para cada atributo, se cumple

alguna de las condiciones:

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gi + ai - ti ≤ 0

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gi + ai - ti > 0 ∧ gi ≤ g’i

y para al menos uno de ellos:

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gj + aj - tj > 0 ∧ gj < g’j

& para atributos multiplicativos (i.e., oi = ×) se cumplirá si, para cada atributo, se

cumple alguna de las condiciones:

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gi × ai - ti ≤ 0

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gi × ai - ti > 0 ∧ gi ≤ g’i ∧

ai > 0

y para al menos uno de ellos:

• ∀ A = (a1, a2,...aq)∈ {A(P) / P ∈ P-SET(n, Γ)} gj × aj - tj > 0 ∧ gj < g’j ∧

aj > 0

Page 220: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

210

Normalmente los valores ai de los atributos no son conocidos a menos que se calcule

expresamente ∀ n P-SET(n, Γ), pero se puede intentar dar al menos una estimación heurística

sobre ellos.

Consideremos, por ejemplo, el caso aditivo. Sean ai+ y ai

- los valores máximos y

mínimos del atributo ai para todos los caminos P ∈ P-SET(n, Γ), y hi+(n), hi

-(n) estimaciones

optimistas de los mismos:

hi+(n) ≥ ai

+= max{ai(P) / P ∈ P-SET(n, Γ)}

hi-(n) ≤ ai

- = min{ai(P) / P ∈ P-SET(n, Γ)}

Se podrán podar caminos con seguridad si para cada atributo se cumple una de las

siguientes condiciones:

• gi + hi+(n) - ti ≤ 0 (la meta se satisface hasta en el peor caso)

• gi + hi-(n) - ti > 0 ∧ gi ≤ g’i (la meta no se va a satisfacer ni en el mejor caso)

y para al menos uno de ellos:

• gj + hj-(n) - tj > 0 ∧ gj < g’j (aunque la meta no se satisfará, gj está más cerca

que gj' )

Esto significa que la información heurística que tradicionalmente se ha utilizado en los

algoritmos de búsqueda para saber qué camino es el más prometedor para conducir a una

solución también puede utilizarse ventajosamente para podar aquellos caminos que nunca

conducirán a una solución minimal al problema28.

En ausencia de información heurística, y si cada gi(P) conserva el orden ≤ y la

igualdad, puede tomarse como estimación optimista de hi-(n) el valor hi

-(n) = e ∀ n, donde e es

el elemento unitario del operador de acumulación correspondiente (0 para la suma, 1 para el

producto, etc.). En tal caso puede comprobarse fácilmente que se cumple siempre para todos

los atributos alguna de las dos condiciones para la poda si ∀ i gi ≤ gi’∧ ∃ j gj < gj', es decir, el

28 Nótese que para atributos del tipo "cuanto menos mejor" y P=(s,..n) será normalmente fi = gi(P) + hi-(n).

Page 221: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

211

orden de Pareto es siempre un criterio de poda válido para los problemas de metas con

atributos acumulables.

9.10.2 Algoritmo METAL-ZL*

Denominamos como METAL-ZL* a una instancia de POP-Z* en la que el criterio de

preferencia es alguno de los descritos anteriormente y el criterio de poda descrito en la

sección 9.10.1.2.

Proposición 22

Si se cumplen las siguientes condiciones:

METALZL-1. La función heurística empleada H(n) es admisible.

METALZL-2. Cada componente de G(P) conserva la igualdad y el orden ≤.

Entonces METAL-Z* es 1-admisible en grafos finitos. ♣

Demostración:

La condición METALZL-1 implica por definición las condiciones 1 y 2 de POP*

(proposición 2).

Sabemos también que los órdenes descritos para la satisfacción de metas son

transitivos (condición 3 de POP*).

Veamos que las soluciones minimales correspondientes a los órdenes de preferencia

descritos se encuentran entre los óptimos de Pareto del problema. Sean dos vectores de

atributos A’’ = (a1’’,a2’’,...aq’’) y A'= (a1’,a2’,...aq’) tales que A’’ domina a A' según el orden

de Pareto. Tenemos entonces que:

∀ k ∀ i aki’ ≥ aki’’

⇒ ∀ k ∀ i aki’ - tki ≥ aki’’- tki

⇒ ∀ k ∀ i max(0, aki’ - tki) ≥ max(0, aki’’ - tki)

⇒ ∀ k dk (A’) ≥ dk (A’’)

Page 222: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

212

El mismo razonamiento es válido tanto para las preferencias basadas en la suma

ponderada de las desviaciones como para las basadas en la estrategia minmax. Para el caso en

que se normalicen las desviaciones debe ser ∀ i ti > 0.

Si se emplea el criterio de poda de la sección 9.10.1.2 (orden de Pareto), y los

componentes de G(P) conservan la igualdad y el orden ≤ entonces la poda de óptimos de

Pareto será 1-prudente. Trivialmente nunca se podarán todos los caminos que puedan

conducir a una solución de coste minimal y la poda de soluciones satisfactorias será también

1-prudente (condición 4 de POP*). ♣

Proposición 23

Si además de las condiciones METALZL-1 y METALZL-2 se cumple lo siguiente:

METALZL-3. Los vectores de estimación de atributos F ∈ F(P) no están acotados en ninguna

de sus componentes en caminos infinitos.

Entonces el algoritmo METAL-Z* es 1-admisible en grafos infinitos. ♣

Demostración:

La demostración de la proposición es idéntica a la presentada para MO-Z*

(proposición 11). ♣

9.10.3 Excursiones con satisfacción de metas

Consideremos un criterio de satisfacción de metas para el problema descrito en la

sección 9.7.2. Manolo, nuestro último excursionista, desea establecer unos requisitos

máximos de esfuerzo para realizar el trayecto medidos en términos de la longitud y la

dificultad máxima. En ningún caso está dispuesto a esforzarse más por culpa de unos

hipotéticos osos. Como la prudencia nunca está de más decide establecer también como

criterio secundario una cota para la probabilidad de tales sorpresas, siempre y cuando ello no

interfiera en la consecución de las otras metas. Los datos del modelo resultante se resumen en

la tabla 9.8.

Page 223: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

213

Prioridad Atributo Meta asociada Peso relativo Operador de acumulación

a1 = distancia recorrida ≤ 3000 m. w1 = 0.5 + Nivel 1. a2 = dificultad máxima ≤ 2 w2 = 0.5 max

Nivel 2. a3 = prob. no encontrar osos ≥ 0.9 - ×

Tabla 9.8. Preferencias para un problema de satisfacción de metas.

Como función de estimación de atributos se considera la acumulación de los mismos

hasta el momento, i.e. no se hace uso de información heurística alguna (H(n) = {(0,-∝ ,1)}) y

en consecuencia F(P) = {G(P)}

El operador de combinación vectorial acumulable será o = (+, max, ×).

Nótese que los dos primeros atributos son del tipo “cuanto menos mejor”, mientras

que el tercero es del tipo “cuanto más mejor”, por lo que se ha ajustado convenientemente la

ecuación p2(G). Las funciones de desviación empleadas se normalizan con los niveles de

aspiración de las metas para medir desviaciones porcentuales:

9.0)9.0,0()G(

2)2,0(5.0

3000)3000,0(5.0)G(

32

211

gmaxp

gmaxgmaxp

−=

−×+−×=

El resultado de aplicar el procedimiento METAL-ZL* se muestra en la tabla 9.9, donde

aparecen para cada iteración del algoritmo los nodos con caminos en ABIERTOS, y los

vectores de estimación de atributos junto al estado de las desviaciones de las metas para

ambos niveles de prioridad. También se indican los caminos podados en cada iteración. Los

caminos seleccionados en cada iteración se señalan mediante el símbolo %. La figura 9.12

muestra es estado del grafo de búsqueda para cada iteración. En la iteración 4 se selecciona el

camino solución P = (1, 3, 5, 6) con A(P) = (2500, 2, 0.88209), que corresponde a la única

solución minimal de este problema de metas.

Page 224: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

214

It. Nodos con caminos ABIERTOS

Estimaciones F-SET(n)=G-SET(n) P

Podas

It. 1 1 (raíz) (0, 0, 1) (0, 0) % 2 (1000, 2, 0.99) (0, 0) It. 2 3 (1000, 1, 0.99) (0, 0) %

2 (1000, 2, 0.99) (0, 0) % (1800, 1, 0.792) (0, 0.12)

4 (1500, 2, 0.7425) (0, 0.175)

It. 3

5 (1700, 1, 0.891) (0, 0.01)

4 (1500, 2, 0.7425) (0, 0.175) (2000, 3, 0.9603) (0.25, 0)

It. 4

5 (1700,10, 0.891) (0, 0.01) %

El camino (1,3), con atributos (1000, 1, 0.99), ha podado al camino (1,2,3) con atributos (1800, 2, 0.792). El camino (1,2,4), con atributos (2000, 3, 0.9603) ha podado al camino (1,3,2,4) con atributos (2800, 3, 0.76842).

4 (1500, 2, 0.7425) (0, 0.175) (2000, 3, 0.9603) (0.25, 0) (2000, 1, 0.7128) (0, 0.208)

It. 5

6 (2500, 2, 0.88209) (0, 0.019) %

Tabla 9.9. Datos correspondientes a la aplicación al ejemplo del algoritmo METAL-ZL*.

Page 225: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

215

(0, 0, 1) : (0,0)1

Iteración 1

(1000, 1, 0.99) : (0,0)

(1000, 2, 0.99) : (0,0)

3

2

1

Iteración 2

(1700, 1, 0.891):(0,0.01)

(1500, 2, 0.7425):(0,0.175)

(1800, 1, 0.792): (0,0.12)

4

53

2

1

(1000, 2, 0.99) : (0,0)

Iteración 3

(1500, 2, 0.7425):(0,0.175)

4

53

2

1

(1700, 1, 0.891):(0,0.01)

(2000, 3, 0.9603):(0.25,0)

Iteración 4

(2500, 2, 0.88209):(0,0.0199)

6

4

53

2

1

(2000, 3, 0.9603):(0.25,0)(2000, 1, 0.7128):(0, 0.208)

(1500, 2, 0.7425):(0,0.175)

Iteración 5

Figura 9.12. Estado del grafo de búsqueda para las sucesivas iteraciones de METAL-ZL*. Los nodosya expandidos al menos una vez se muestran sombreados. El vector de atributos del camino

seleccionado en cada iteración aparece subrayado.

9.11. POPN*: UNA VERSIÓN N-ADMISIBILE DE POP*

Los algoritmos de búsqueda descritos en las secciones anteriores de este capítulo

tienen como finalidad encontrar un camino solución minimal al problema planteado. Esta

sección considera las modificaciones necesarias para que POP* (y todos los demás algoritmos

descritos) terminen con el conjunto de todas las soluciones minimales de un problema. Para

distinguir estos algoritmos de los anteriores se emplea el superíndice N (por N-admisible) en

Page 226: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

216

el nombre del algoritmo. Concretamente, denominaremos POPN* a la versión N-admisible de

POP*. En realidad las modificaciones necesarias son bastante sencillas. El pseudocódigo del

procedimiento POPN* se muestra en el cuadro 9.5. El esquema de la función Actualizar-

CAMINOS-ABIERTOS es idéntico al presentado en la sección 9.3.

Para construir una versión N-admisible de POP* es necesario tener en cuenta lo

siguiente:

1. La condición de terminación debe modificarse de modo que la búsqueda continúe

tras encontrar el primer camino minimal hasta encontrar el último.

2. La condición de que el criterio de preferencia heurístico sea mínimamente

optimista es insuficiente y debe generalizarse.

3. Hay que emplear siempre criterios de poda que sean N-admisibles.

9.11.1 Terminación y Estructuras de Datos

Obviamente, POPN* no puede terminar tras encontrar la primera solución al problema,

sino que debe continuar explorando el grafo y recogiendo todas las soluciones (minimales)

que se van encontrando. POPN* utiliza dos nuevas estructuras de datos, además de las

empleadas en POP*:

! Un conjunto SOLUCIONES, donde se guardan todos los caminos solución

encontrados hasta el momento.

! Un conjunto ESTIMACIONES donde se guardan los vectores de estimación

correspondientes a todos los caminos solución encontrados, y que se emplea para

filtrar la lista ABIERTOS.

La búsqueda no se detiene nunca hasta que la lista ABIERTOS queda vacía (paso 3).

Para limitar el número de caminos considerados para expansión se filtra ABIERTOS

eliminando aquellos caminos que no puedan ya conducir a una solución minimal de acuerdo

con la información recogida en ESTIMACIONES (paso 2). Si no se realizase la operación de

filtrado, ABIERTOS podría no quedar vacío en grafos infinitos aunque el número de

soluciones fuese finito.

Page 227: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

217

Procedimiento POPN*• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! solución-p (P), un predicado que devuelve "cierto" si su argumento P ∈ P-SET(s, Γ), y "falso" en otro

caso.! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! (F, pF), los datos que definen el criterio de preferencia heurístico.! Actualizar-CAMINOS-ABIERTOS(n’, n’’), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando los datos que definen el criterio de poda (E, pp)

• Salida:Un conjunto de caminos solución al problema (tal vez vacío).

1. Crear una lista de caminos ABIERTOS con el camino P = (s).Crear una estructura CAMINOS que inicialmente contiene sólo el camino P = (s).Crear dos conjuntos vacíos, SOLUCIONES y ESTIMACIONES.

2. Filtrar la lista ABIERTOS, es decir, eliminar de ABIERTOS todos los caminos P tales que,

∀ FP ∈ F(P) ∃ F*∈ ESTIMACIONES / F* pF FP

3. Si ABIERTOS es una lista vacía, entonces terminar devolviendo el conjunto SOLUCIONES.

4. Seleccionar un camino solución parcial P’ de ABIERTOS con vector de estimación FP’∈ F(P’) minimalsegún el criterio de preferencia heurístico, es decir:

∀ P’’ ∈ ABIERTOS ¬∃ FP’’∈ F(P’’) / FP’’ pF FP’.Si varios caminos cumplen la condición, desempatar arbitrariamente.

5. Si solución-p(P’) es "cierto", entonces:

• Eliminar P' de ABIERTOS.

• SOLUCIONES ← SOLUCIONES ∪ {P’}.

• ESTIMACIONES ← ESTIMACIONES ∪ {FP’}.

6. Si solución-p(P’) es "falso", entonces, sea n’ el último nodo de P’:

• Eliminar de ABIERTOS todos los caminos que terminen en n’.

• Expandir n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G que noson antecesores suyos en ningún camino de CAMINOS (para evitar ciclos).

• Para cada nodo n’’ ∈ SUCActualizar-CAMINOS-ABIERTOS(n', n")

7. Volver al paso 2.

Cuadro 9.5. Pseudocódigo del procedimiento POPN*.

9.11.2 Criterio de poda

El criterio de poda empleado en un algoritmo N-admisible debe conservar todos los

caminos solución parciales que sean candidatos a conducir a una solución minimal del

problema. Deberán emplearse criterios de poda N-admisibles (véase la definición presentada

en la sección 9.4).

Concretamente, deberán conservarse todos los caminos minimales (según el criterio de

poda) encontrados hasta cada nodo, aunque existan varios con idénticos vectores de atributos.

Page 228: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

218

9.11.3 Criterio de preferencia heurístico

La siguiente definición generaliza la definición de preferencia heurística mínimamente

optimista que se presentó para el procedimiento POP*.

Definición

Decimos que una estructura de preferencias heurística (F, pF) es optimista con todas

las soluciones de un problema (G, s, Γ, A, pA, F, pF, E, pp) si para todo camino solución

minimal P ∈ P-SET*(s, Γ, A, pA) existe una estimación FP ∈ F(P) tal que todos los

subcaminos P0-i de P que son caminos solución parciales tienen alguna estimación F[P0-i]

heurísticamente preferible o igual a FP. Expresado matemáticamente:

∀ P = (n0, n1, ... nk) ∈ P-SET*(s, Γ, A, pA), ∃ FP ∈ F(P) /

∀ P0-i = (s=n0, n1, ... ni) i = 0,1,...k, ∃ F’ ∈ F(Pi) ∧ F’ pF FP

9.11.4 Propiedades de POPN*

Esta sección incluye las demostraciones de N-admisiblidad de POPN* análogas a las

presentadas en la sección 9.4 para POP*.

Proposición 24

El procedimiento POPN* termina siempre en grafos finitos.♣

Demostración:

La demostración es idéntica a la presentada en la sección 9.4 para POP* (proposición

1).♣

Page 229: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

219

Proposición 25

El procedimiento POPN* es N-admisible en grafos finitos si se cumplen las siguientes

condiciones:

1. La estructura de preferencias heurística (F, pF) es optimista con todas las soluciones del

problema.

2. La estructura de preferencias heurística (F, pF) concuerda con (A, pA).

3. La relación de preferencia pF es transitiva.

4. El criterio de poda (E, pp) es N-prudente en relación a (A, pA), y se aplica de modo N-

prudente. ♣

Demostración:

Por razonamientos análogos a los presentados para POP* en la sección 9.4 se sabe que

al buscar soluciones minimales de vectores de F(P) sobre pF se están buscando en realidad

soluciones minimales de A(P) sobre pA.

Sabemos que el algoritmo termina en grafos finitos, y que lo hace cuando la lista

ABIERTOS queda vacía. Por tanto se encontrarán todos los caminos solución minimales

antes de terminar, siempre que su número sea finito y no hayan sido filtrados (paso 2) o

podados previamente.

Ahora bien, el número de soluciones tiene que ser necesariamente finito, al ser el grafo

también finito.

La condición N4 garantiza que nunca se va a podar un camino solución parcial que

pueda conducir a una solución minimal del problema.

Veamos ahora que en el paso 2 no se filtra nunca un camino solución parcial que

pueda conducir a una solución minimal del problema. Realizaremos la demostración por

reducción al absurdo. Sea P un camino solución minimal cualquiera con F(P) = {FP}, y P0-i =

(n0, n1, n2, .... ni) uno de sus subcaminos solución parciales que se encuentra en ABIERTOS

(al menos inicialmente estará P0-0 = (n0)).

Page 230: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

220

Si no se ha encontrado todavía un camino solución, entonces ESTIMACIONES = ∅ y

la operación de filtrado no tiene ningún efecto sobre la lista de caminos ABIERTOS.

Supongamos que ESTIMACIONES ≠ ∅ y P0-i es filtrado por un vector F* ∈

ESTIMACIONES, es decir:

F* pF F[P0-i] ∀ F[P0-i] ∈ F(P0-i)

Al ser (F, pF) optimista con todas las soluciones se tiene que:

∃ F' ∈ F(P0-i) / F' pF FP

Al ser P solución minimal no puede ser F* pF F’. Se produce entonces una

contradicción, ya que al ser pF transitiva y suponer que se ha producido el filtrado tenemos

que:

F* pF F pF F’ ⇒ F* pF F’

En conclusión, ningún camino interesante P0-i será filtrado de ABIERTOS.

Sólo falta por demostrar que POPN* nunca seleccionará para expansión una solución

no minimal. La demostración es análoga a la presentada en la proposición 2 para POP*. Al ser

la estimación heurística optimista con todas las soluciones y concordante con (A, pA) nunca

podrá seleccionarse un camino solución P' con estimación F(P') = {FP'} no minimal. Si P' no

es minimal se debe a que hay otro camino solución minimal P con F(P) = {FP} tal que FP pF

FP'. Entonces se cumple necesariamente una de las siguientes condiciones:

• P aún no ha sido encontrado, y hay algún subcamino suyo P0-i en ABIERTOS tal

que ∃ F[P0-i] ∈ F(P0-i) ∧ F[P0-i] pF FP pF FP'.

• P ha sido encontrado, con lo que FP ∈ ESTIMACIONES y P' será filtrado.

Page 231: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

221

Proposición 26

El procedimiento POPN* es N-admisible en grafos infinitos si además de las condiciones N1 a

la N4 (proposición 25) se cumple lo siguiente:

N5. Para cualquier camino solución minimal P ∈ P-SET*(s, Γ, A, pA) con estimación F(P) =

{FP} existe solo un número finito de caminos solución parciales P’ con algún F’ ∈ F(P’) tal

que:

F’ ~pF FP ∨ F’ = FP

Demostración:

La condición es la misma que la presentada en la proposición 3 para POP*. Allí se

demostró que la condición N5 implica que el conjunto de soluciones minimales a un problema

es finito.

Cada solución minimal acabará encontrándose en un número finito de pasos tras

expandir todos los caminos solución parciales con estimaciones iguales o no preferibles.

Como el número de soluciones es finito, se encontrarán también todas en el peor caso en un

número finito de pasos.

9.12. PROCEDIMIENTO POP-ZN*

Esta sección presenta finalmente una versión de POPN* para problemas con atributos

acumulables, análoga al procedimiento POP-Z* descrito en la sección 9.6.3. Supondremos

para POP-ZN* particularizaciones análogas a las presentadas para POP-Z*:

• Función A(P) acumulable, sin restricciones sobre pA.

• Función F(P) de estimación directa, y pF ≡ pA.

• Función E(P) = {G(P)}. El criterio pp se elige de modo que (G, pp) sea N-prudente

en relación a (A, pA).

Page 232: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

222

Emplearemos también un grafo acíclico dirigido, GRAFOB, como estructura

CAMINOS (véase la definición proporcionada en la sección 9.6.3). La lista ABIERTOS será

también una lista de pares (n, F). Por último, se empleará un conjunto de nodos NODOS-

FINALES para realizar la función del conjunto SOLUCIONES.

El pseudocódigo de POP-ZN* aparece en el cuadro 9.6. La única diferencia que

merece resaltarse con el pseudocódigo de POPN* es que al terminar es necesario buscar los

caminos solución hacia atrás en GRAFOB. El conjunto de caminos solución estará formado

por aquellos caminos de GRAFOB que llegan a nodos de NODOS-FINALES y poseen su

vector de estimación en ESTIMACIONES. Como función Actualizar-CAMINOS-

ABIERTOS puede emplearse la misma que se presentó en la sección 9.6.3 para POP-Z*.

Una alternativa al pseudocódigo presentado de POP-ZN* es la que aparece en el

cuadro 9.7. Cuando se selecciona un par (n', F') de ABIERTOS correspondiente a un nodo

final (paso 4), se borran de ABIERTOS todos los pares (n', F) ∀ F, y se añade a

ESTIMACIONES el conjunto F-SET(n'). El resultado es que en una misma iteración se

retiran de ABIERTOS todos los caminos encontrados hasta el momento hasta el nodo n. Si

existen varios de estos caminos, no podemos saber si son todos minimales o no (al menos uno

sí, el correspondiente al par (n', F')). Para asegurar que las soluciones devueltas serán todas

minimales, es necesario actualizar ESTIMACIONES adecuadamente. Este es el esquema

seguido por MOA* (Stewart y White, 1991). Un ligero inconveniente es que no puede

garantizarse que las soluciones encontradas sean minimales hasta la terminación del

procedimiento.

A partir de POP-ZN* no es difícil obtener versiones N-admisibles de los algoritmos 1-

admisibles descritos en las secciones anteriores. El siguiente capítulo describe uno de ellos,

METAL-ALN*, un algoritmo N-admisible para satisfacción de metas con atributos aditivos.

Page 233: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

223

Procedimiento POP-ZN*• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! nodo-final-p(n), un predicado que devuelve 'cierto' si n ∈ Γ, y 'falso' en otro caso..! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! (F, pF), los datos que definen el criterio de preferencia heurístico.! Actualizar-CAMINOS-ABIERTOS(n', n"), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando los datos que definen el criterio de poda (E, pp)

• Salida:Un conjunto, tal vez vacío, de caminos solución al problema.

1. Crear una lista de caminos ABIERTOS con el par (s, F), donde F puede ser un vector de estimaciónarbitrario.Crear una estructura CAMINOS para guardar todos los caminos solución parciales que se vayangenerando y se consideren interesantes. Inicialmente CAMINOS contiene solo el camino (s).Crear dos conjuntos vacíos: NODOS-FINALES y ESTIMACIONES.

2. Filtrar la lista ABIERTOS, es decir, eliminar de ABIERTOS todos los pares (n, FP) tales que,∃ F* ∈ ESTIMACIONES / F* pF FP

3. Si ABIERTOS es la lista vacía, terminar devolviendo el conjunto de caminos almacenado en la estructuraCAMINOS que llegan hasta nodos de NODOS-FINALES y cuyo vector de estimación se encuentra enESTIMACIONES.

4. Seleccionar un par (n’, F’) de ABIERTOS con vector de estimación minimal, i.e.¬∃ (n, F) ∈ ABIERTOS /F pF F’. Si varios cumplen la condición, desempatar arbitrariamente.

5. Si nodo-final-p(n’) es "cierto", entonces,! Eliminar (n’, F’) de ABIERTOS.! NODOS-FINALES ← NODOS-FINALES ∪ {n’}.! ESTIMACIONES ← ESTIMACIONES ∪ {F’}.

6. Si nodo-final-p(n’) es "falso", entonces,! Eliminar de ABIERTOS todos los pares (n', F) ∀ F.! Expandir el nodo n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G

que no son antecesores suyos en ningún camino de CAMINOS (para evitar ciclos).! Para cada nodo n’’ ∈ SUC

Actualizar-CAMINOS-ABIERTOS(n', n")

7. Volver a 2.

Cuadro 9.6. Pseudocódigo del procedimiento POPN* (o POP-ZN*) empleando una lista ABIERTOS dela forma ((nodo, vector-estimación)*).

Page 234: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

224

Procedimiento POP-ZN* (versión alternativa)• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! nodo-final-p(n), un predicado que devuelve 'cierto' si n ∈ Γ, y 'falso' en otro caso..! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! (F, pF), los datos que definen el criterio de preferencia heurístico.! Actualizar-CAMINOS-ABIERTOS(n', n"), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando los datos que definen el criterio de poda (E, pp)

• Salida:Un conjunto, tal vez vacío, de caminos solución al problema.

1. Crear una lista de caminos ABIERTOS con el par (s, F), donde F puede ser un vector de estimaciónarbitrario.Crear una estructura CAMINOS para guardar todos los caminos solución parciales que se vayangenerando y se consideren interesantes. Inicialmente CAMINOS contiene solo el camino (s).Crear dos conjuntos vacíos: NODOS-FINALES y ESTIMACIONES.

2. Filtrar la lista ABIERTOS, es decir, eliminar de ABIERTOS todos los pares (n, FP) tales que,∃ F* ∈ ESTIMACIONES / F* pF FP

3. Si ABIERTOS es la lista vacía, terminar devolviendo el conjunto de caminos almacenado en la estructuraCAMINOS que llegan hasta nodos de NODOS-FINALES y cuyo vector de estimación se encuentra enESTIMACIONES.

4. Seleccionar un par (n’, F’) de ABIERTOS con vector de estimación minimal, i.e.¬∃ (n, F) ∈ ABIERTOS /F pF F’. Si varios cumplen la condición, desempatar arbitrariamente.

5. Si nodo-final-p(n’) es "cierto", entonces,! Eliminar de ABIERTOS todos los pares (n', F) ∀ F! NODOS-FINALES ← NODOS-FINALES ∪ {n’}.! ESTIMACIONES ← MINIMAL(ESTIMACIONES ∪ F-SET(n'), pF)

6. Si nodo-final-p(n’) es "falso", entonces,! Eliminar de ABIERTOS todos los pares (n', F) ∀ F.! Expandir el nodo n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G

que no son antecesores suyos en ningún camino de CAMINOS (para evitar ciclos).! Para cada nodo n’’ ∈ SUC

Actualizar-CAMINOS-ABIERTOS(n', n")

7. Volver a 2.

Cuadro 9.7. Pseudocódigo de los procedimientos POPN* (o POP-ZN*) empleando una listaABIERTOS de la forma ((nodo, vector-estimación)*). Versión alternativa.

9.13. CONCLUSIONES

Los algoritmos de búsqueda en grafos intentan encontrar uno o todos los caminos

solución a un problema de una forma constructiva: generando incrementalmente nuevos

caminos solución parciales a partir de los ya conocidos. En cada iteración se generan uno o

más caminos nuevos, que son la continuación de uno o más caminos ya conocidos.

La selección de qué camino(s) se va(n) a utilizar para continuar esta generación

incremental se puede realizar de forma más eficiente en dos pasos:

Page 235: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

225

1. Se realiza una primera ordenación de los caminos, dividiéndolos en dos grupos:

aquellos que vale la pena seguir explorando y aquellos que no. Esta ordenación se

realiza empleando la relación de orden definida por el llamado criterio de poda.

Todos los caminos que no vale la pena seguir explorando son eliminados, con lo

que se reduce el número de posibilidades a considerar y se libera espacio de

memoria.

2. Entre los caminos resultantes se realiza una segunda ordenación, para determinar

cuál o cuales de ellos pueden llevar más rápidamente a una solución al problema.

Esta segunda ordenación se realiza empleando la relación de orden definida por el

llamado criterio de preferencia heurístico.

El trabajo presentado en este capítulo formaliza esta visión de los algoritmos de

búsqueda apoyándose fundamentalmente en la formalización del concepto de preferencia.

El trabajo expuesto en este capítulo es bastante extenso y rico en aportaciones, y es la

principal contribución de la tesis.

Un primer intento de desarrollar un algoritmo de búsqueda heurística con satisfacción

de metas fue presentado en MOPGP'9629 y publicado en (Mandow y Millán, 1997). El

resultado fue una versión preliminar de METAL-AL* mucho menos sencilla y flexible que la

presentada en el siguiente capítulo. La demostración de admisibilidad de esta primera versión

aparece en (Mandow, 1997).

El siguiente paso fue el desarrollo de POP* como una generalización para el caso

multicriterio de BF* (Pearl, 1984). La separación conceptual de los procesos de selección

heurística y poda de caminos candidatos es la base del trabajo desarrollado, y permite exponer

con mayor claridad las condiciones bajo las cuales pueden obtenerse algoritmos multicriterio

admisibles.

Aunque la selección heurística de caminos empleando (F, pF) y la poda de alternativas

mediante (E, pp) son procesos conceptualmente sencillos, existen muchas opciones para

representar y gestionar CAMINOS y ABIERTOS. La separación de ambas tareas permite una

29 Second International Conference in Multi-Objective Programming and Goal Programming. Celebrado en Torremolinos (Málaga), mayo de 1996.

Page 236: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

226

visión más clara del funcionamiento de los algoritmos y de la gestión de unas estructuras de

datos concretas. Esta separación no es explícita en la descripción publicada de MOA*

(Stewart y White, 1991). Las demostraciones de admisibilidad de MOA* que aparecen en

dicho artículo son más confusas al mezclar los detalles del procedimiento con las estructuras

de datos y no aparecer una distinción explícita entre pp y pF (debido seguramente a que el

caso aditivo permite a MOA* emplear pp ≡ pF ≡ pA).

La demostración de admisibilidad del nuevo algoritmo MO-Z*, más completo que

MOA*, aparece aquí mucho más sencilla.

De las muchas estructuras de datos posibles para CAMINOS se ha descrito y

empleado una sola, el grafo de búsqueda. Se trata de una generalización directa del árbol de

búsqueda empleado por muchos algoritmos escalares "primero el mejor".

El análisis independiente del comportamiento de esta estructura, junto a la

recuperación del concepto de "camino" como elemento básico manipulado por el algoritmo ha

permitido nuevamente mejorar la gestión del grafo de búsqueda descrito en (Stewart y White,

1991) para MOA*. Esta mejora es sencilla, conceptualmente natural, y puede resultar en una

mejora radicalmente significativa en algunos problemas. Un ejemplo concreto, extraído del

dominio del diseño de carreteras, se presenta más adelante.

La mayoría de las definiciones presentadas son originales. Los conceptos de 1-

admisibilidad y N-admisibilidad generalizan el concepto tradicional de admisibilidad en

algoritmos escalares (que equivale exactamente al de 1-admisibilidad).

Los conceptos de (F, pF) mínimamente optimista y concordante con (A, pA) son una

generalización de las condiciones suficientes de admisibilidad presentadas por (Pearl, 1984)

para BF*. La definición de (F, pF) optimista con todas las soluciones del problema es original.

Los conceptos de prudencia, aplicación 1-prudente y N-prudente de los criterios de

poda, y la conservación del orden del problema son originales. La conservación del orden del

problema es una generalización multicriterio de la condición de conservación del orden (order

preserving property) descrita en (Pearl, 1984) para algoritmos escalares. Ésta es a su vez una

versión del principio de optimalidad de la programación dinámica, empleado tácitamente por

el célebre algoritmo A*.

Page 237: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

227

El concepto de función heurística para funciones acumulables se ha operativizado,

algo que se echa de menos en la descripción de Z* proporcionada en (Pearl, 1984).

La interpretación de ABIERTOS como una lista de CAMINOS pasa muchas veces

desapercibida debido a que A* emplea una lista de nodos. Sin embargo es fácil comprobar

que en A* cada nodo de ABIERTOS representa un único camino del árbol de búsqueda.

Muchas descripciones de A* emplean f(n) (o lo que es lo mismo, f(P)), para podar

caminos. En realidad en el caso aditivo da lo mismo emplear f(P) que g(P) para la poda, ya

que una función h(n) admisible no añade en este caso ninguna información adicional para las

decisiones de poda.

En (Pearl, 1984) hay una pequeña confusión en este sentido al hablar de Z*, ya que

hay casos en los que f(P) no conserva el orden a menos que h(n) sea admisible (p. 62). Lo más

natural en el caso de poda no informada es emplear g(P).

La condición CMM propuesta en (Carraway y otros, 1990) abre las puertas para

encontrar criterios de poda que aprovechen información heurística sobre el problema para

mejorar la poda. Un ejemplo es el algoritmo U* (White y otros, 1992), aunque las condiciones

que impone no serán practicables en muchos problemas de IA. Este capítulo contribuye a esta

línea con un análisis preliminar de la aplicación de la condición CMM para el problema de la

satisfacción de metas.

Page 238: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

228

Page 239: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

229

CAPÍTULO 10

UN ALGORITMO PARA SATISFACCIÓN DE METAS

ADITIVAS

"Now, no one in his right mind will satisfice if

he can equally optimize; no one will settle for good or better if he can have best. But

that is not the way the problem usually poses itself in actual design situations."

Herbert A. Simon, 1969

El capítulo precedente ha presentado dos procedimientos, POP* y POPN*, que

permiten obtener una gran variedad de algoritmos de búsqueda heurística multicriterio.

Concretamente se han desarrollado con cierto detalle dos particularizaciones denominadas

POP-Z* y POP-ZN* para el caso en que los atributos son acumulativos. En este capítulo se

describe METAL-ALN*, una instancia de POP-ZN* para satisfacción de metas con atributos

aditivos y que emplea el orden de Pareto como criterio de poda.

Los atributos aditivos tienen un gran atractivo en el modelado de muchos problemas, y

poseen unas propiedades ventajosas a la hora de obtener algoritmos admisibles. En este

capítulo se presentan condiciones para la admisibilidad de METAL-ALN* análogas a las que

precisa el conocido algoritmo de optimización escalar A* (Hart y otros, 1968, 1972; Nilsson,

1980; Pearl, 1984).

10.1. ALGORITMO METAL-ALN*

El pseudocódigo del algoritmo METAL-ALN* se muestra en el cuadro 10.1. Su

funcionamiento puede analizarse a partir de sus tres características fundamentales:

Page 240: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

230

! Las funciones de acumulación y estimación de atributos, que en este caso son

todas aditivas.

! El criterio para la selección heurística de caminos.

! Los criterios de poda y filtrado.

Las estructuras de datos empleadas serán las siguientes:

• GRAFOB: un grafo de búsqueda acíclico, que registra todos los caminos

solución parcial generados y no descartados por el criterio de poda.

• ABIERTOS: una lista de ternas (n, F, D) que representan los caminos de

GRAFOB que pueden seguir explorándose.

• NODOS-FINALES ⊆ Γ: un conjunto de nodos finales hasta los que se han

encontrado caminos minimales.

• ATRIBUTOS-MINIMALES: un conjunto con los vectores de atributos de los

caminos minimales encontrados (realiza la función del conjunto

ESTIMACIONES empleado en POP-ZN*).

• D*: un vector donde se guarda el logro o satisfacción alcanzado para cada nivel

de prioridad por las soluciones minimales del problema. El objetivo de este

vector es permitir hacer los cálculos del filtrado con un menor coste

computacional (paso 2).

10.1.1 Acumulación y estimación de atributos

A continuación aparecen algunas definiciones ya presentadas en el capítulo anterior,

aunque aquí se particularizan para el caso de atributos aditivos.

Definición Sea G(P) un vector (g1(P), g2(P),... gq(P)) con los valores de los atributos acumulados

por un camino solución parcial P = (s=n1,n2,...nj). El valor de cada atributo puede calcularse

como:

∑−

=+=

+++==1j

1k1kk

jj-1i32i21iii

),na(n

), n(n a ... ) , n(n a) , n(n a(P) a(P) g

Page 241: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

231

Algoritmo METAL-ALN*

• Parámetros de entrada:! s, el nodo inicial del que parte la búsqueda, s ∈ NODOS(G).! nodo-final-p(n), un predicado que devuelve 'cierto' si n ∈ Γ, y 'falso' en otro caso.! SCS(n), una función que recibe un nodo n ∈ NODOS(G) como parámetro y devuelve el conjunto de

nodos {n' / (n, n') ∈ ARCOS(G)}.! Actualizar-CAMINOS-ABIERTOS(n', n"), una función que actualiza las estructuras de datos

CAMINOS y ABIERTOS empleando el orden de Pareto sobre los vectores de atributos acumuladosde caminos que llegan a un mismo nodo.

• Salida:Un conjunto, tal vez vacío, de caminos solución al problema.

1. Crear una lista de caminos ABIERTOS con el par (s, F, D), donde F puede ser un vector de estimaciónarbitrario y D un vector de desviaciones igualmente arbitrario.Crear una estructura CAMINOS para guardar todos los caminos solución parciales que se vayangenerando y se consideren interesantes. Inicialmente CAMINOS contiene solo el camino (s).Crear dos conjuntos vacíos: NODOS-FINALES y ATRIBUTOS-MINIMALES.Crear un vector de logro D* = (d1*, d2*,...dm*) que inicialmente tomará un valor arbitrario.

2. Si ATRIBUTOS-MINIMALES ≠ ∅ , entonces! Eliminar de ABIERTOS todos los pares (n, F, D), donde D = (d1, d2,.. dm), tales que ∃ dj > dj*.! Eliminar de ABIERTOS todos los pares (n, F, D), tales que ∃ F* ∈ ATRIBUTOS-MINIMALES y F*

es preferible a F según el orden de Pareto.

3. Si ABIERTOS es la lista vacía, terminar devolviendo el conjunto de caminos almacenado en la estructuraCAMINOS que llegan hasta nodos de NODOS-FINALES y cuyo vector de estimación (atributos) seencuentra en ATRIBUTOS-MINIMALES.

4. Seleccionar un par (n’, F’, D’) de ABIERTOS, donde D’ = (d1’, d2’,.. dm’), que minimice el valor de d1’.En caso de que existan varios candidatos que minimicen d1’, desempatar entre ellos aquel o aquellos queademás minimicen sucesivamente d2’, d3’,... dm’. En caso de que aún queden varios candidatos conidéntico vector de desviaciones, seleccionar arbitrariamente uno que tenga vector F’ minimal entre ellossegún el orden de Pareto.

5. Si nodo-final-p(n’) es "cierto", entonces,! Si NODOS-FINALES = ∅ , entonces D* ← D’. /*se trata de la primera solución encontrada*/! Eliminar (n’, F’, D’) de ABIERTOS.! NODOS-FINALES ← NODOS-FINALES ∪ {n’}.! ATRIBUTOS-MINIMALES ← ATRIBUTOS-MINIMALES ∪ {F’}.

6. Si nodo-final-p(n’) es "falso", entonces,! Eliminar de ABIERTOS todos los pares (n', F, D) ∀ F, ∀ D.! Expandir el nodo n’ generando, con ayuda de SCS(n’), el conjunto SUC de todos sus sucesores en G

que no son antecesores suyos en ningún camino de CAMINOS (para evitar ciclos).! Para cada nodo n’’ ∈ SUC

Actualizar-CAMINOS-ABIERTOS(n', n")

7. Volver a 2.

Cuadro 10.1. Pseudocódigo del algoritmo METAL-ALN*

Denominaremos G-SET(n) al conjunto de todos los vectores de atributos G(P)

correspondientes a caminos solución parciales incluidos en GRAFOB que llegan hasta el

nodo n (ver figura 10.1).

Page 242: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

232

Denominaremos G-SET(n, n’) al conjunto de todos los vectores de atributos G(P)

correspondientes a caminos solución parciales incluidos en GRAFOB que llegan al nodo n’ a

través del arco (n’, n).

Definición Sea FP un vector (f1

P, f2P,... fq

P) que es una estimación del vector de atributos de un

camino solución parcial P = (s=n1,n2,...n). Los vectores de estimación FP se calculan de la

siguiente forma:

FP = G(P) + Hn / Hn ∈ H(n)

Donde H(n) es una función heurística multicriterio. Nótese que para un mismo camino

P pueden existir varios vectores de estimación FP distintos (ver figura 10.1).

Denominaremos F-SET(n) al conjunto de todos los vectores de atributos FP

correspondientes a caminos solución parciales incluidos en GRAFOB que llegan hasta el

nodo n:

F-SET(n) = {G(P) + Hn / G(P) ∈ G-SET(n) ∧ Hn ∈ H(n)}

s

γγγγ1(2,1)

n1

(2,1) (2,1)

(1,2) (1,2) (1,2)

nodos enGRAFOB

nodosfinales

G-SET(n1) = { (4, 2) (2, 4) }H(n1) = { (2, 1) (1, 2) }

γγγγ2

F-SET(n1) = { (6, 3) (5, 4) (4, 5) (3 6) }

Figura 10.1. Ejemplo de grafo de búsqueda y conjuntos G-SET(n) y F-SET(n) con atributos aditivos.

Existen diversas formas de construir funciones heurísticas multicriterio admisibles

para problemas con atributos aditivos. Sea h i*(n) el valor óptimo del atributo ai(P) para un

camino que va desde el nodo n a algún nodo final γ ∈ Γ:

Page 243: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

233

h n min a Pi P P SET n i*

( , )( ) { ( )}=

∈ − Γ

Normalmente los valores h i*(n) son desconocidos. Si se dispone de un conjunto de

funciones de estimación heurísticas hi(n) para cada atributo, de modo que hi(n) ≤ h*i(n), ∀ n ∈

NODOS(G), i=1..q, entonces la siguiente función es trivialmente una función heurística

multicriterio admisible:

H: n → { (h1(n), h2(n), ... hq(n)) }

10.1.2 Selección heurística de caminos para expansión

METAL-ALN* siempre selecciona para expansión un camino solución parcial de

ABIERTOS cuyo vector de estimación heurística promete la mejor satisfacción posible de las

metas.

Los criterios de satisfacción de metas son los mismos ya presentados en el capítulo

anterior (véase la sección 9.10). El cálculo del camino solución a expandir puede realizarse de

formá más rápida y sencilla calculando un vector de desviaciones ponderadas DP = (d1(FP),

d2(FP),...dm(FP)) que mida la desviación ponderada para la metas de cada nivel de prioridad

i=1..q, para cada vector de estimación FP. Por este motivo, los elementos de la lista

ABIERTOS se definen como una terna (n, FP, DP), donde:

• n es un nodo de GRAFOB al que llegan caminos que aún pueden seguir

explorándose.

• FP es un vector de estimación correspondiente a un camino P de GRAFOB que

llega hasta n y aún puede seguir explorando. Cada FP ∈ ℜ q, donde q es el número

de atributos del problema.

• DP es un vector con las medidas de las desviaciones ponderadas de las metas para

cada nivel de prioridad correspondientes al vector de estimación FP. Cada Dm ∈

ℜ m, donde m es el número de niveles de prioridad del problema.

El algoritmo selecciona ternas (caminos) que minimicen d1(FP), es decir, la desviación

ponderada de las metas correspondientes al primer nivel de prioridad (el más importante). Si

se estima que varios caminos van a obtener el mismo valor óptimo para d1(FP), entonces se

Page 244: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

234

deshace el empate intentando minimizar d2(FP), es decir, la desviación estimada para las

metas del segundo nivel. El procedimiento de desempate continúa hasta que el candidato es

único, o bien se alcanza un conjunto de ternas que prometen iguales desviaciones estimadas

para todos los niveles. En este último caso se selecciona arbitrariamente una que tenga vector

FP óptimo de Pareto entre ellas.

10.1.3 Criterios de poda y filtrado

El criterio de poda empleado por METAL-ALN* es el orden de Pareto sobre los

vectores de acumulación G(P), aplicado únicamente a los caminos que llegan a un mismo

nodo. Se conservan todos los caminos que posean vectores G(P) iguales.

Como ya se comentó al tratar el procedimiento POPN*, una vez encontrada la primera

solución minimal al problema puede realizarse una segunda fase de poda que se ha

denominado filtrado. Esta operación se realiza sobre las estimaciones heurísticas de caminos

presentes en ABIERTOS, por lo que se trata siempre de una poda heurística.

Para facilitar la operación de filtrado en METAL-ALN* se utilizan los vectores DP

incluidos en las ternas (n, FP, DP) de ABIERTOS y el vector de logro D*.

Cuando el algortimo encuentra la primera solución al problema, tras la selección de

una terna (γ, F, D) / γ ∈ Γ, el vector de logro D* recibe el valor D = (d1*, d2

*,..., dm*) que

corresponderá a la mejor desviación ponderada de las metas de acuerdo con el orden

lexicográfico del problema. Para cada componente de D* tendremos que:

! Si di* = 0, entonces todas las metas del nivel de prioridad i pueden satisfacerse

simultáneamente, y cualquier terna (n, FP, DP) que se considere en el futuro para

expansión deberá satisfacer di(FP) = 0.

! Si di* > 0, entonces no se pueden satisfacer todas las metas del nivel de prioridad i

simultáneamente. La desviación ponderada mínima alcanzable será precisamente

di*. Cualquier terna (n, FP, DP) que se considere para expansión deberá satisfacer

di(FP) ≤ di*.

En consecuencia, la operación de filtrado elimina de ABIERTOS cualquier terna (n,

FP, DP) tal que ∃ dj(FP) > dj*.

Page 245: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

235

Además, para cada solución encontrada (γ, F, D) / γ ∈ Γ, se añade el nodo γ al

conjunto NODOS-FINALES, y el vector F al conjunto ATRIBUTOS-MINIMALES. El

filtrado elimina también de ABIERTOS todas las ternas tales que su vector de estimación

heurística esté dominado según el orden de Pareto por cualquier vector de ATRIBUTOS-

MINIMALES.

Si las estimaciones F son optimistas, ningún camino filtrado podría conducir a una

solución minimal del problema.

10.2. EJEMPLO

En esta sección se ilustra la aplicación de METAL-ALN* a un ejemplo sencillo.

Consideremos el grafo de la figura 10.2, donde cada arco está etiquetado con el vector de

atributos A = (a1, a2, a3) correspondiente.

n2

(4, 4, 4)

n5

n1 n3 n6 n8

n7n4

(14, 8, 9)

(2, 2, 3)

(12, 6, 6)

(8, 1, 1)

(4, 1, 1)(2, 2, 1)

(6, 8, 10) (2, 12, 2)

(2, 10, 1)

(4, 2, 1)(21, 8, 6)

Figura 10.2. Grafo del ejemplo.

El problema de búsqueda considerado es encontrar un camino desde el nodo n1 hasta

n8. La función heurística multicriterio empleada se muestra en la tabla 10.1. Estas

estimaciones se han obtenido empleando una técnica general descrita en (Mandow y Millán,

1997) y son válidas para propósitos demostrativos.

Page 246: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

236

n H(n) N1 {(10, 0, 8)} N2 {(8, 2, 7)} N3 {(6, 4, 4)} N4 {(6, 8, 2)} N5 {(4, 1, 1)} N6 {(2, 0, 0)} N7 {(4, 2, 1)} N8 {(0, 0, 0)}

Tabla 10.1. Estimaciones heurísticas para el problema de la figura 10.2.

Sea un criterio de preferencia definido de la siguiente manera:

Nivel de Prioridad 1: a1(P) ≤ 20 ;w1 = 0.5

a2(P) ≤ 20 ;w2 = 0.5

Nivel de Prioridad 2: a3(P) ≤ 8

La traza de METAL-ALN* aplicado a este problema aparece en la tabla 10.2. El estado

del grafo de búsqueda para cada iteración se muestra en la figura 10.3. El nodo expandido en

cada iteración se señala con una flecha.

La desviación de las metas del nivel i se calcula de la siguiente forma:

∑ −×=j

ijijiji tamaxwp ),0()(A

Page 247: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

237

It. Nodos con caminos en ABIERTOS

Estimaciones: F = (f1, f2, f3) , D = (d1, d2)

Comentarios

It. 1 n1 (root) (10, 0, 8) (0,0) % n2 (10, 4, 8) (0, 0) % n3 (12, 12, 14) (0, 6)

It. 2

n4 (27, 16, 8) (3'5, 0)

n3 (10, 8, 8) (0, 0) % n4 (27, 16, 8) (3'5, 0)

It. 3

n5 (20, 11, 11) (0, 3)

El camino (n1,n2,n3) con G=(4,4,4) ha permitido podar al camino (n1,n3) con G=(6, 8, 10)

n4 (27, 16, 8) (3'5, 0) n5 (20, 11, 11) (0, 3)

(20, 11, 11) (0, 3)

It. 4

n6 (10, 8, 8) (0, 0) %

Solo es necesario añadir una terna para n5, al tener los dos caminos la misma estimación.

n4 (27, 16, 8) (3'5, 0) n5 (20, 10, 10) (0,2)

It. 5

n8 (10, 20, 10) (0,2) %

El camino (n1,n2,n3,n6,n5) con G=(16,9,9) ha permitido podar a los caminos (n1,n2,n5) y (n1,n2,n3,n5), ambos con G=(6, 8, 10). La selección de n8 permite encontrar la primera solución minimal y establecer D*= (0,2).

It. 6 n5 (20, 10, 10) (0,2) % La terna correspondiente a n4 ha sido filtrada.

It. 7 n8 (20, 10, 10) (0,2) %

Tabla 10.2. Datos relativos a la aplicación de METAL-ALN*.

Page 248: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

238

1

Iteración 0.

2

1 3

4

Iteración 1.

2

1 3

4

5

Iteración 2.

2 5

1 3 6

4

Iteración 3.

2 5

1 3 6 8

4

Iteración 4.

2 5

1 3 6 8

4

Iteración 5.

2 5

1 3 6 8

4

Iteración 6.

2 5

1 3 6 8

4

Iteración 7.

Figura 10.3. Estado del grafo de búsqueda en las sucesivas iteraciones de METAL-ALN*. Los nodos

sombreados han sido ya seleccionados para expansión al menos una vez.

Tras la expansión de n2 en la iteración 1, el algoritmo encuentra dos caminos al nodo

n3 y poda el inferior según el orden de Pareto. Tras la expansión de n3, seleccionado en la

iteración 2, se encuentran dos caminos con identicos vectores de estimación hasta el nodo n5.

Page 249: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

239

Ambos se conservan en GRAFOB, aunque sólo una terna sea necesaria para representarlos en

ABIERTOS. Tras la expansión de n6, se descubre un nuevo camino hasta el nodo n5 que,

según el criterio de poda, es preferible a los ya conocidos. Existen entonces dos ternas

candidatas para expansión (n5, (20, 10, 10), (0, 2)) y (n8, (10, 20, 10), (0, 2)). Puesto que

ambas proporcionan el mismo grado de satisfacción ponderada de las metas y ninguno

domina al otro según el orden de Pareto, el empate se deshace arbitrariamente. Se supone que

la terna elegida es (n8, (10, 20, 10), (0, 2)), lo que conduce a encontrar la primera solución

minimal del problema. Se registran entonces los siguientes valores:

D* ← (0, 2)

NODOS-FINALES ← {n8}

ATRIBUTOS-MINIMALES ← {(10, 20, 10)}

Las metas del primer nivel de prioridad pueden satisfacerse completamente. Por el

contrario es necesrio relajar en dos unidades la del segundo nivel.

La operación de filtrado elimina entonces el camino que llegaba hasta el nodo n4, ya

que nunca proporcionará una satisfacción adecuada de las metas. En consecuencia n4 nunca es

seleccionado para expansión. Tras la iteración 6 el conjunto ATRIBUTOS-MINIMALES se

actualiza al valor {(10, 20, 10), (20, 10, 10)}, ABIERTOS queda vacía y el algoritmo termina

recuperando de GRAFOB los caminos (n1, n2, n3, n6, n8) y (n1, n2, n3, n6, n5, n8).

10.3. PROPIEDADES DE METAL-ALN*

En esta sección se demuestran las propiedades de terminación y N-admisibilidad de

METAL-ALN* bajo condiciones análogas a las empleadas por el algoritmo A* (Hart y otros,

1968, 1972; Nilsson, 1980; Pearl, 1984).

10.3.1 Suposiciones

Las demostraciones de las propiedades de METAL-ALN* se realizan bajo las

siguientes suposiciones:

1. El grafo G que se está explorando es localmente finito, es decir, de cada nodo

solo parte un número finito de arcos.

Page 250: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

240

2. Todas las funciones de atributos son aditivas. El vector de atributos de un

camino se calcula sumando los vectores de atributos de los arcos que lo

componen.

3. Todas las funciones de atributos ak(P) cumplen lo siguiente:

! Si G es finito, entonces 0 ≤ ak(ni, nj) ∀ k ∀ (ni, nj) ∈ ARCOS(G)

! Si G es infinito, entonces 0 ≤ ε <ak(ni, nj) ∀ k ∀ (ni, nj) ∈ ARCOS(G)

De este modo, en los grafos infinitos los valores de ningún atributo están

acotados en caminos infinitos.

4. La función heurística multicriterio H(n) cumple las siguientes condiciones:

a) ∀ A ∈ {A(P) / P ∈ P-SET(n, Γ)} ∃ H ∈ H(n) / H ≤ A

b) ∀ n ∀ H = {h1 ,h2,...hq} ∈ H (n) si n ∈ Γ, entonces ∀ i hi = 0.

c) ∀ n ∀ H = {h1 ,h2,...hq} ∈ H (n) si n ∉ Γ, entonces ∀ i hi ≥ 0.

Las suposiciones (4a) y (4b) garantizan que la estimación de los valores de los

atributos es exacta y única para los caminos solución, ∀ P∈ P-SET(s,Γ), F(P) = {A(P)}, y

optimista en los demás casos. Las suposiciones (1), (3) y (4c) garantizan que el algoritmo

termina en problemas con solución incluso en grafos infinitos. La suposición (2) es propia de

METAL-ALN*.

Proposición 27

Si una función H(n) cumple la suposición 4 enunciada anteriormente, entonces es admisible

para METAL-ALN*. ♣

Page 251: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

241

Demostración:

En METAL-ALN* la función F(P) es de estimación directa, y el operador de

acumulación es la suma. La definición de función heurística multicriterio admisible tiene en

tal caso dos condiciones. Veamos que se cumplen las dos:

• ∀ P*∈ P-SET*(s, Γ, A, pA), ∀ P0-i = (s, ... ni) subcamino de P*,

F(P*) = {FP*} ∧ ∃ H ∈ H(ni) / G(P0-i) o H pF FP*

Trivialmente, por la suposición (4b), ∀ P∈ P-SET(s,Γ), F(P) = {A(P)}.

Sea P* la concatenación de dos caminos, P0-iP'. Se tiene entonces que por la

suposición (4a):

∃ H ∈ H(n) / F[P0-i] = A(P0-i) + H ≤ A(P0-i) + A(P') = A(P*) = FP*

⇒ ∃ F[P0-i] ≤ FP*

Por otra parte, al ser la preferencia de metas lexicográficas (pF ≡ pA)

monótona con los vectores de estimación, tenemos finalmente que:

∃ F[P0-i] ≤ FP* ⇒ F[P0-i] pF FP*

• En los nodos finales γ ∈ Γ, H(γ) = {N}, donde N es el elemento neutro del

operador de acumulación.

Trivial, al ser cero el elemento neutro de la suma.

10.3.2 Terminación

Los resultados presentados en esta sección son válidos para cualquier instancia de

POPN* que pode los caminos cíclicos y donde el valor de los atributos no esté acotado en

caminos infinitos. Se repiten aquí para mayor claridad.

Page 252: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

242

Proposición 28

METAL-ALN* siempre termina en grafos finitos. ♣

Demostración:

METAL-ALN* selecciona un camino solución parcial diferente para expansión en cada

iteración. Puesto que el grafo G es finito, también lo será el número de caminos solución

parcial. Como ningún camino solución parcial seleccionado vuelve nunca a ABIERTOS, en el

peor de los casos el algoritmo terminará seleccionando todos los caminos solución parciales

una vez y ABIERTOS quedará vacía. ♣

Proposición 29

METAL-ALN* termina devolviendo soluciones si existe al menos una, incluso en grafos

infinitos. ♣

Demostración:

El criterio de poda nunca elimina todos los caminos que llegan a un mismo nodo. Sea

P’ = (s, ...ni, ... γ), γ ∈ Γ un camino solución. ABIERTOS no puede quedar vacía antes de

encontrar un camino solución al nodo γ. Si así ocurriese habría al menos un camino solución

parcial P'' = (s, ... ni) en ABIERTOS que se selecciona para expansión sin sucesores. Esto

contradice la suposición de que ni se encuentre en un camino solución. Según la proposición

28 el algoritmo termina en grafos finitos, luego antes de que ABIERTOS quede vacía se habrá

encontrado algún camino solución al nodo γ.

Veamos que ocurre en grafos infinitos. Si existe un camino solución P’, entonces

existe un vector de logro asociado D’ = (d1’, d2’,...dm’). Puesto que suponemos que todos los

valores de atributos escalares tienen una cota inferior de ε, G es localmente finito, y todos los

valores devueltos por H(n) son H ≥ 0 (véanse las suposiciones), entonces sólo puede haber un

número finito de caminos solución parciales con estimación F tal que ∀ i di(F) ≤ di’, con lo

que P’ será seleccionado y ABIERTOS quedará vacía en un número finito de pasos. ♣

Page 253: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

243

10.3.3 N-admisibilidad

Para demostrar la N-admisibilidad de METAL-ALN* hay que comprobar antes que sus

características distintivas (función de estimación, criterio de selección de caminos y criterios

de poda/filtrado) operan del modo esperado.

Proposición 30

METAL-ALN* selecciona siempre para expansión una terna (camino) (n, F, D)

correspondiente a un vector de estimación F óptimo de Pareto en ABIERTOS y que

proporciona la mejor satisfacción posible de las metas lexicográficas. ♣

Demostración:

El mecanismo de selección de ternas de ABIERTOS sigue exactamente la definición

del criterio de preferencias de metas lexicográficas. El siguiente razonamiento muestra que

cuando el mecanismo de desempate termina con una única terna, esta es necesariamente un

óptimo de Pareto.

Sea (n', F', D’) la terna elegida, donde F’= (f11’,...f21’,...fmn’) y D’ = (d1’, d2’,...dm’). En

tal caso se cumple que:

∀ (n, F, D) ≠ (n’, F’) ∈ ABIERTOS, donde D = (d1, d2,...dm),

∃ j dj’ < dj ∧ ∀ i<j di’ = di

Supongamos que existe algún (n’’, F’’, D’’) ∈ ABIERTOS tal que F’’ =

(f11’’,...f21’’,...fnqn’’) domina a F’ según el orden de Pareto. En tal caso,

∀ k ∀ i fki’ ≥ fki’’

⇒ ∀ k ∀ i fki’ - tki ≥ fki’’- tki

⇒ ∀ k ∀ i max(0, fki’ - tki) ≥ max(0, fki’’ - tki)

⇒ ∀ k dk (F’) ≥ dk (F’’)

Con lo que se llega a una contradicción. ♣

Page 254: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

244

Proposición 31

El criterio de poda de METAL-ALN* nunca poda caminos solución parciales que puedan

conducir a soluciones minimales del problema. ♣

Demostración:

El criterio de poda es trivialmente N-prudente al conservar la función suma el orden <

y ser la preferencia de metas lexicográfica monótona no decreciente con el valor de los

atributos aditivos. ♣

Proposición 32

Si H(n) es admisible, entonces, en cada momento antes de encontrar la primera solución,

existe al menos, una terna (n’, FP’, DP’) en ABIERTOS para cada camino solución minimal P*

= (s,...n’,...γ), tal que:

• P’=(s,...n’) es un subcamino de P*.

• ∃ FP’∈ F(P’) / FP’ pF A(P*), es decir, al menos una estimación de los atributos de P' es

optimista. ♣

Demostración:

La primera parte de la proposición viene garantizada por la proposición 31, y la

segunda por la proposición 27. ♣

Proposición 33

Si H(n) es admisible, entonces, la primera solución encontrada por METAL-ALN* es una

solución minimal al problema ♣

Demostración:

Supongamos que la primera solución encontrada por METAL-ALN* corresponde a una

terna (n’’, A(P’’), DP’’) de un camino solución P'' no minimal. Sea P* un camino solución

minimal, entonces tenemos que F(P*) = {A(P*)}, y, por la proposición 32, ∃ (n’, FP’, DP’) en

ABIERTOS / FP’ pF A(P*). Al ser P'' no minimal tenemos que A(P’’) pF A(P*), con lo que se

Page 255: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

245

llega a una contradicción, ya que en tal caso (n’, FP’, DP’) habría sido seleccionado con

preferencia a (n’’, A(P’’), DP’’).

La proposición 29 asegura que si existe solución, al menos se encontrará una, por lo

que esta sólo puede ser minimal. ♣

Proposición 34

Si H(n) es admisible, entonces, en cada momento antes de la terminación, existe al

menos una terna (n’, FP’, DP’) en ABIERTOS para cada camino solución minimal no

encontrado P* = (s,...n’,...γ), tal que:

• P’=(s,...n’) es un subcamino de P*.

• ∃ FP’∈ F(P’) / FP’ pF A(P*), es decir, al menos una estimación de los atributos de P' es

optimista. ♣

Demostración:

Nuevamente la primera parte viene garantizada por la proposición 31.

La única posibilidad de que no se cumpla la segunda parte es que algún (n’, FP’, DP’)

sea filtrado indebidamente. Sin embargo, por la proposición 33 sabemos que el vector de

logro D* recibirá el valor correspondiente a la mejor satisfacción posible de las metas, y en

ATRIBUTOS-MINIMALES se guarda un vector de atributos minimal.

Sea (n’, FP’, DP’) la terna considerada de P’, el subcamino en ABIERTOS de un

camino solución minimal P*. Dicha terna puede ser filtrada solamente si:

1. FP’ no satisface el logro de las soluciones minimales, es decir, ∃ i di(FP’) > di*.

2. FP’ está dominado por algún vector de ATRIBUTOS-MINIMALES.

Sin embargo, al corresponder A(P*) a una solución minimal del problema, y por tanto

óptimo de Pareto:

! FP’ ≤ A(P*) ⇒ ∀ i di(FP’) ≤ di(A(P*)) = di*

Page 256: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

246

! FP’ ≤ A(P*) ⇒ FP’ no puede estar dominado según el orden de Pareto por el

vector de atributos de ninguna otra solución.

Por lo que (n’, FP’, DP’) solo podrá ser eliminada de ABIERTOS cuando n’ sea

seleccionado para expansión, con lo que la proposición es cierta.

Proposición 35

Si H(n) es admisible, entonces METAL-ALN* es N-admisible. ♣

Demostración:

Supongamos que el número de soluciones es finito. Sea P* una solución minimal

cualquiera tal que F(P*) = {FP*}, y F el vector de estimación de cualquiera de sus subcaminos

que cumple que F pF FP* (proposición 34). Por las suposiciones (3) y (4c) solamente podrá

existir un número finito de camino solución parciales con vector de estimación F' ~pF F, por

lo que los subcaminos de P* se irán expandiendo sucesivamente en un número finito de pasos

hasta encontrar el propio P*.

Supongamos que se han encontrado todos los caminos solución minimales.

Nuevamente por las suposiciones (3) y (4c), para cada vector de atributos A ∈ ATRIBUTOS-

MINIMALES, solo puede existir un número finito de caminos solución parciales con vector

de estimación F' tal que F' ~pF A. En consecuencia la operación de filtrado provocará que

ABIERTOS quede vacía en un número finito de pasos, y METAL-ALN* terminará

devolviendo todos los caminos solución minimales del problema.

10.4. COMENTARIOS

En esta sección se resumen de forma concisa algunas de las ventajas que METAL-

ALN* proporciona para la resolución de problemas de búsqueda en grafos con satisfacción de

metas.

Page 257: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

247

Hasta la fecha, el algoritmo más difundido para la resolución de problemas de metas

lexicográficas es una simple adaptación del conocido método del SIMPLEX. Este algoritmo

fue propuesto originalmente en (Lee, 1972, cap. 5) y aparece descrito en muchos libros que

tratan sobre Teoría de la Decisión Multicriterio (por ejemplo, véanse (Chankong & Haimes,

1983, pp. 307-316), (Romero, 1993, pp. 66-73)).

En realidad, tanto el problema del camino mínimo como otros muchos problemas de

optimización en grafos pueden formularse en términos de modelos matemáticos lineales, y

resolverse entonces empleando el algoritmo SIMPLEX (por ejemplo, véanse (Winston, 1994,

pp. 435-436), (Papadimitriou & Steiglitz, 1982, pp. 75-77)).

No obstante, existen diversos motivos prácticos y computacionales por los que los

algoritmos de búsqueda primero-el-mejor (como A*) han resultado más atractivos para estos

problemas en la comunidad de la Inteligencia Artificial. Estos mismos motivos justifican,

cuando menos en parte, el desarrollo de METAL-ALN*.

En primer lugar, para describir un problema de búsqueda en grafos mediante un

modelo lineal, el grafo en cuestión debe ser finito y explícito (es decir, deben proporcionarse

explícitamente todos sus nodos y arcos). Tanto el nodo inicial como los finales deben

conocerse de antemano. Por el contrario, muchos problemas de IA resultan en grafos finitos o

infinitos que vienen descritos de forma implícita, es decir, mediante un nodo (o estado) inicial

y una función sucesor. Esta función recibe un nodo (o estado del problema) y devuelve el

conjunto de todos los nodos (o estados) directamente alcanzables desde él en el grafo (o

espacio de estados). Con frecuencia el estado final es desconocido, y sólo se conoce un

conjunto de propiedades que permiten identificarlo. En consecuencia, es frecuente que estos

problemas no puedan describirse en la práctica mediante modelos lineales, y es necesario

emplear algoritmos como A*.

Además, el uso de información heurística (obtenida tras analizar el problema concreto

que se pretende resolver) permite con frecuencia reducir de forma espectacular el tiempo de

cálculo necesario para resolver muchas instancias del problema.

Esta sección termina con algunos comentarios sobre aquellos casos en los que ambos

algoritmos son aplicables, es decir, cuando los grafos son finitos y se proporcionan

explícitamente, o pueden hacerse explícitos empleando recursos razonables de espacio y

tiempo.

Page 258: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

248

Existe una bonita analogía entre el comportamiento del algoritmo SIMPLEX primal-

dual y el algoritmo de Dijkstra (que equivale a la versión no informada de A*) cuando se

aplican a problemas de camino mínimo (véase (Papadimitriou & Steiglitz, 1982, cap. 5)).

Aparentemente, esta analogía se pierde al comparar el procedimiento de Lee con el

caso no informado de METAL-AL*. Mientras el primero resuelve de forma incremental una

secuencia de modelos lineales cada vez más complejos, el segundo avanza directamente hacia

una solución minimal del problema (proposición 33, sección 10.3.3)

Una comparación detallada de ambos algoritmos podría proporcionar una nueva

perspectiva sobre la resolución de problemas de satisfacción de metas, y puede ser una línea

de investigación futura interesante.

Page 259: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

249

IV. CASOS DE PRUEBA

Los algoritmos descritos en la tercera parte de la tesis suponen una contribución a las

técnicas de búsqueda en grafos empleadas en la resolución de muchos problemas de decisión

y en la propia Inteligencia Artificial.

En la cuarta parte se describe la aplicación de las técnicas de satisfacción de metas a

dos problemas restringidos y experimentales extraídos de dominios reales de diseño. La

finalidad de estos ejemplos es ilustrar el propio uso de las técnicas y proporcionar un análisis

preliminar de su potencial de aplicación en dominios de diseño. El desarrollo de los ejemplos

ha sido en cierta medida paralelo al de los algoritmos, de modo que la generalización

presentada en la tercera parte de la tesis se ha beneficiado de la experiencia obtenida de la

aplicación de los algoritmos a las tareas descritas en esta cuarta parte. Una versión preliminar

de los ejemplos que se describen aparece en (Mandow y otros, 1997) y (Mandow y Pérez de

la Cruz, 1998).

El primero corresponde a una aplicación procedente del dominio de la arquitectura,

concretamente del diseño en planta de viviendas unifamiliares. La idea surgió en el contexto

del proyecto CICYT TIC95-0587 “Arquitecturas Cooperativas de Ayuda al Diseño”, como un

“juego” que permitiera a los arquitectos experimentar diversas configuraciones de

habitaciones. Está basado en la observación de que, en algunas ocasiones, los propios

arquitectos recortan pequeños modelos a escala de las habitaciones empleando cartulinas, y

“juegan” con ellos para “ver que es posible”. El programa emplea metas lexicográficas y

búsqueda en árbol sobre una sencilla gramática de formas.

Page 260: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

250

El segundo permite resolver problemas de trazado de carreteras empleando búsqueda

en grafos y metas ponderadas. El desarrollo de este pequeño programa permitió identificar

una mejora en la gestión del árbol de búsqueda empleado por el algoritmo MOA* (Stewart y

White, 1991) sin la cual la búsqueda resulta impracticable para la mayoría de casos (véanse

las secciones 9.7.4 y 9.13).

También se han desarrollado aplicaciones para resolución de problemas de navegación

de robots empleando los algoritmos PRIMO-A* (Mandow y otros, 1997b) (Mandow y otros,

1998) y METAL-AL* (Fernández y otros, 1999). Dichas aplicaciones muestran la versatilidad

de los algoritmos descritos en la tesis, sin embargo se omiten aquí por no pertenecer a

dominios de diseño.

Page 261: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

251

CAPÍTULO 11

CONTROL DE GRAMÁTICAS PARA LA

GENERACIÓN DE DISEÑOS

Una de las aplicaciones propuestas para los algoritmos descritos en capítulos

precedentes es controlar la generación de diseños a partir de una gramática de diseño dada.

Las gramáticas son un formalismo que presenta propiedades muy interesantes para la

representación de espacios de diseño. Desde la publicación de los trabajos de (Stiny y Gips,

1972) sobre gramáticas de formas, estas han sido recibidas con interés en diversos dominios.

El caso más llamativo es el de la arquitectura, donde se han empleado gramáticas para

describir diversos estilos arquitectónicos. Las villas de Palladio (1518-1580) o las casas de

campo de Frank Lloyd Wright (1869-1959) son ejemplos citados con frecuencia.

En este capítulo se desarrolla un ejemplo empleando una sencilla gramática para una

variante del problema de la planificación espacial. Este problema consiste en encontrar una

configuración adecuada para un conjunto de espacios en un plano.

11.1. GRAMÁTICAS EN DISEÑO

Las gramáticas de formas son una generalización de las gramáticas empleadas

comúnmente para la descripción de lenguajes formales. Estas gramáticas constan de (a) un

vocabulario de formas; (b) un conjunto de etiquetas, empleadas para indicar alguna

característica de una forma, como por ejemplo la posibilidad de aplicarle una regla; (c) una

forma inicial, y; (d) una serie de reglas de re-escritura sobre formas (las reglas gramaticales).

Por ejemplo, considérese la sencilla gramática descrita en la figura 11.1. La etiqueta • sirve

Page 262: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

252

para identificar las formas a las que se pueden aplicar las reglas (nótese que al situarse la

etiqueta en el centro se da libertad en cuanto a la orientación).

Formainicial:

Regla 1:

Regla 2:

Figura 11.1. Una sencilla gramática de formas.

La figura 11.2 muestra dos formas diferentes, una de ellas puede generarse a partir de

la gramática descrita, mientras que la otra no.

(a) (b)

Figura 11.2. La forma (a) forma parte del lenguaje descrito por la gramática de la figura 11.1. La forma(b), por el contrario, no forma parte de dicho lenguaje.

Es un hecho ampliamente reconocido hoy día que la forma es una propiedad necesaria,

aunque no suficiente, para la generación de diseños. Las gramáticas de diseño incluyen

normalmente información no geométrica en sus reglas, como por ejemplo la función de las

partes que componen el diseño o restricciones sobre su tamaño.

Existen dos aplicaciones más o menos directas de las gramáticas en diseño:

1. Por una parte permiten analizar si un determinado diseño corresponde o no a una

gramática. En realidad, esta cuestión puede ser indecidible a menos que se

impongan determinadas restricciones sobre las reglas de la gramática (Knight,

1998).

2. Por otra parte permiten la generación de diseños válidos mediante la aplicación

sucesiva de sus reglas.

Page 263: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

253

Una cuestión de gran importancia es el papel que juega el diseñador en un proceso de

diseño asistido mediante algún formalismo gramatical. Una primera alternativa es considerar

al diseñador como simple usuario de una gramática predefinida. En tal caso su labor se limita

a explorar el conjunto de diseños (tal vez infinito, aunque predeterminado) que la gramática es

capaz de generar. Una segunda alternativa es la que considera al diseñador como el

constructor de la gramática (Knight, 1998):

"El proceso de diseño se entiende como un proceso en el que se desarrolla la propia

gramática, no como la generación de diseños empleando la gramática. [..] El

desarrollo de reglas para los diseños precisa de la misma clase de inteligencia,

imaginación y conjetura que el desarrollo de diseños de una forma convencional".

En ambos casos existen dos problemas importantes relacionados con el uso de

gramáticas en diseño, aún pendientes de una solución satisfactoria:

• El primero relativo a la propia construcción de las gramáticas. Aunque se han

publicado ejemplos de gramáticas aplicadas a diversos problemas de diseño, el

desarrollo de una gramática adecuada se sigue considerando un difícil arte

(Carlson, 1994) (Cagan, 1994). Pequeños cambios en las reglas pueden producir

interacciones difíciles de prever, dando lugar a resultados finales muy diferentes

(Knight, 1998).

• El segundo es relativo al control de la gramática en la generación de diseños.

Normalmente el espacio de diseño representado por una gramática suele ser tan

grande que resulta imposible explorarlo de forma exhaustiva. En este sentido

(Cagan, 1994) identifica como un área interesante de investigación la búsqueda de

soluciones atendiendo a múltiples criterios.

La idea que se propone aquí es que la aplicación de algoritmos multicriterio como los

descritos en capítulos precedentes puede servir en algunos casos para resolver este segundo

problema.

11.2. LA PLANIFICACIÓN DEL ESPACIO

Los problemas de planificación del espacio consisten en encontrar una distribución

adecuada para un conjunto de elementos teniendo en cuenta criterios relativos a su

Page 264: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

254

distribución espacial (por ejemplo, relaciones de distancia o adyacencia). En realidad existen

muchas variantes de este problema, dependiendo por ejemplo de si se considera o no la forma

y/o tamaño de los elementos, que el espacio sea bidimensional o tridimensional, o si el

espacio disponible tiene forma y dimensiones preestablecidas.

Este tipo de problemas aparece con mucha frecuencia en dominios relacionados con la

arquitectura, como la ordenación urbana (Navinchandra, 1991) o la distribución de mobiliario

(Akin y otros, 1988) (Flemming y otros, 1988), pasando por la realización de planos de

viviendas (Medjdoub y Yannou, 1998). Del mismo modo, son muchas las técnicas que se han

propuesto para resolverlos, como el uso de algoritmos específicos para el cálculo de

configuraciones posibles de rectángulos (Galle, 1981), sistemas expertos (Flemming y otros,

1988), búsqueda heurística multiobjetivo con relajación de restricciones (Navinchandra,

1991) gramáticas de formas con satisfacción de restricciones (Yoon, 1992), enfriamiento

estadístico (Cleland y Hills, 1994), o computación evolutiva (Rosenman, 1996).

En problemas reales la generación de configuraciones está influida por múltiples

criterios, como son la adyacencia, proximidad, orientación o dimensiones deseadas para los

diversos espacios considerados. En (Yoon, 1992), por ejemplo, se propone un modelo en el

que el espacio de búsqueda puede reducirse notablemente gracias a la propagación de

restricciones, aunque no admite problemas sobrerrestringidos. En (Navinchandra, 1991) por el

contrario, se propone un modelo de diseño en el que todas las restricciones pueden relajarse

reformulándolas como objetivos (véase la sección 5.6). El conjunto de todas las soluciones

óptimas de Pareto a un problema puede hallarse entonces utilizando algoritmos de búsqueda

multiobjetivo. Sin embargo, el uso de los algoritmos descritos en (Navinchandra, 1991) no

permite un control efectivo por parte del diseñador sobre la relajación de restricciones, y

puede resultar en espacios de búsqueda y de soluciones excesivamente grandes.

A continuación se describe una versión de este problema, donde el espacio de diseño

viene definido por una sencilla gramática y la generación de soluciones se controla

estableciendo un conjunto de metas lexicográficas.

Page 265: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

255

11.3. UNA VERSIÓN DEL PROBLEMA DEL DISEÑO

ARQUITECTÓNICO EN PLANTA

El dominio estudiado es el diseño de planos de viviendas unifamiliares de una sola

planta. Este problema puede describirse brevemente de la siguiente forma: se dispone de un

conjunto de habitaciones de dimensiones conocidas y de un esquema que describe las

circulaciones permitidas entre ellas (puertas de acceso). El objetivo es encontrar una

configuración o distribución de habitaciones que satisfaga el esquema de conexión así como

un conjunto variable de preferencias o criterios que aparecen con frecuencia en arquitectura

(por ejemplo, relaciones de orientación o adyacencia).

A continuación se describe una sencilla gramática y un conjunto de criterios

adecuados para este problema. Por último se describen algunos resultados obtenidos a partir

de su implementación.

11.3.1 Una gramática para la generación de planos de viviendas

La gramática para la generación de planos de viviendas que se presenta a continuación

está basada en un conjunto ordenado de reglas. El formato de las mismas es A → A+B, donde

A y B son formas y A+B es una relación de adyacencia entre las mismas. En consecuencia,

cada regla añade una nueva forma B al diseño siguiendo una relación preestablecida con otra

forma A ya presente en el mismo.

Todas las formas son rectangulares y están etiquetadas con su función y con los

lugares donde se pueden localizar puertas de acceso (ver figura 11.3). Las etiquetas de

función no se consideran información geométrica, y por tanto su posición y orientación no

influyen en la unificación.

1 2

6 5

3

4

8

7Salón

Figura 11.3. Forma correspondiente a una habitación, etiquetada con su función (salón) y la

localización de posibles puertas de acceso (numeradas del 1 al 8).

Page 266: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

256

Cada regla añade siempre una forma correspondiente a una habitación de modo que

sea accesible a través de una puerta desde otra habitación. Dada una habitación H1, si existe

otra habitación H2 de dimensiones n × m tal que ambas tienen una puerta en común, existen 8

conectores en H1 por los que se puede acceder a H2, y 4 formas posibles de colocar H2

adyacente a H1 en cada uno de esos conectores (ver figura 11.4). En total existen hasta 32

formas diferentes para añadir una habitación adyacente a otra dada, y 16 reglas si se tienen en

cuenta las simetrías. Estas sencillas reglas responden a la noción de que las puertas entre las

habitaciones de una vivienda se encuentran normalmente junto a una esquina, y nunca en

medio de una pared.

H1

H1

H1

H1

H1

H1

H1

H1

H2

H2

H2

H2

Figura 11.4. Cuatro de las dieciséis reglas que permiten conectar H2 a H1.

También se ha contemplado la posibilidad de construir pasillos compuestos de la

unión de formas cuadradas. Esto permite que los pasillos presenten forma no rectangular y

tamaño variable, según el numero de espacios de que consten. Nuevas habitaciones pueden

conectarse a los pasillos a través de los conectores correspondientes de cualquiera de sus

espacios (véase la figura 11.5). Existe un número máximo de espacios que se pueden asignar

al pasillo, y que se establece en función del número de habitaciones del problema a las que se

accede a través del mismo.

Page 267: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

257

Regla P1:

Regla P2:

Figura 11.5. Reglas para la ampliación de espacios correspondientes a pasillos.

La generación de diseños comienza siempre con un plano vacío al que se puede añadir

la primera habitación de dos formas posibles (solo una si es cuadrada). A continuación se

añaden ordenadamente las restantes habitaciones de forma que cada nueva habitación tenga

una puerta en común con otra que ya se encuentra en el plano. Es decir, las reglas se aplican

en fases secuenciales correspondientes a la inclusión de habitaciones sucesivas, siguiendo un

orden preestablecido que tiene en cuenta el esquema de conexión de la vivienda. En cada fase

solamente se permite aplicar una regla de todas las posibles (es decir, cada diseño contendrá

únicamente una instancia de cada habitación), salvo en el caso de los pasillos, donde la regla

P1 puede aplicarse un número finito y acotado de veces (al menos una), y la regla P2 se aplica

a continuación siempre una vez.

Considérese por ejemplo la gramática correspondiente a un problema con cuatro

habitaciones (salón, cocina, aseo y dormitorio) y un pasillo de uno o dos espacios como

máximo. Las dimensiones de las habitaciones se muestran en la tabla 11.1. Las relaciones de

acceso permitidas se muestran en la figura 11.6. El orden en que se añaden las habitaciones es

el siguiente: salón (S), pasillo (P), aseo (A), dormitorio (D) y cocina (K).

Habitación Dimensiones (cm) Salón 300 x 300 Cocina 300 x 200 Pasillo 100 x 100 Aseo 200 x 200 Dormitorio 300 x 200

Tabla 11.1. Dimensiones de las habitaciones.

A P D

SK

Figura 11.6. Esquema de conexión para lashabitaciones de la tabla 11.1.

Page 268: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

258

La figura 11.7 muestra un diseño perteneciente al lenguaje descrito por la gramática y

la secuencia de reglas que lo producen.

K

D

A

S S S

S

A

SD

A

S

Figura 11.7. Aplicación secuencial de reglas. La forma inicial se ha representado por un círculo. Lasetiquetas correspondientes a puertas del aseo (A), dormitorio(D) y cocina (K) se omiten, ya que no

está previsto que desde ellas se acceda a otras habitaciones.

El espacio de diseño resultante tiene normalmente una estructura en árbol y,

dependiendo del número de habitaciones, un tamaño considerable. Para problemas reales

(siete o más espacios, entre habitaciones y trozos de pasillo) la enumeración completa del

espacio de búsqueda es claramente inviable.

11.3.2 Criterios para la generación de planos

La gramática anteriormente descrita es muy sencilla, e incluye muy pocas restricciones

sobre la forma final de los diseños. Para generar el plano de una vivienda lo normal es

considerar un conjunto más o menos extenso de criterios, lo que permite descartar muchas

alternativas. Para la realización de pruebas con el algoritmo METAL-ALN* se han construido

funciones para el cálculo de los siguientes atributos:

1. adyacencias(hab, [hab1, ...habn]) ≥ t1. Que una habitación “hab” sea adyacente

con al menos t1 habitaciones de la lista dada.

2. pared-bloqueada(hab, pared) ≤ t2. Que el tramo de una pared (derecha, izquierda,

arriba o abajo) de una habitación bloqueada por otra sea inferior a determinada

longitud (por ejemplo, que admita poner una ventana).

Page 269: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

259

3. ancho-plano ≤ t3. Que la anchura total del plano (dimensión derecha-izquierda) no

exceda de ciertos límites.

4. alto-plano ≤ t4. Que la altura total del plano (dimensión arriba-abajo) no exceda de

ciertos límites.

5. num-espacios(pasillo) ≤ t5. Que el número de espacios asignado a un pasillo no

exceda de cierto número.

6. minimizar el perímetro exterior. Este objetivo persigue un criterio meramente

estético, y busca un diseño lo más compacto posible30.

La función heurística multicriterio es de la forma:

H(P) = {(ha(P), hb(P),...hq(P))}

Donde P representa un plano parcial de la vivienda, q es el número de atributos y hi(P)

es una función heurística escalar admisible para el atributo i-ésimo (es decir, una estimación

optimista del mismo). En cuanto a las funciones heurísticas escalares tenemos que:

! Para los atributos tipo 2 (pared-bloqueada), 3 (ancho-plano) y 4 (alto-plano) se

utiliza ∀ P h(P) = 0, que es un heurístico admisible al ser los atributos del tipo

“cuanto menos mejor”.

! Para atributos del tipo 5 (num-espacios) se emplea la siguiente función:

=casootroen

cuesiónenpasilloelincluyenoaúnqueplanounesPsiPh

01

)(

! El atributo del tipo 6 (maximizar-perímetro-interior) también es de la forma

“cuanto más mejor”. Un heurístico optimista (por exceso) es el siguiente:

h P contorno habhabnoincluidasenP

( ) ( )= × ∑2

30 Este criterio puede aplicarse con METAL-ALN* estableciendo un nivel de aspiración inalcanzable para el

atributo. Concretamente, en este caso el perímetro interior (la longitud de las paredes interiores de la vivienda) es más fácil de calcular que el exterior, y maximizar el primero es equivalente a minimizar el segundo. Para minimizar el perímetro exterior se establece como meta perímetro-interior ≥ t6, con valor t6 muy elevado.

Page 270: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

260

! Los atributos de tipo 1 (adyacencias[hab, [hab1...habn]]) son siempre de la forma

“cuanto más mejor”, por lo que la función heurística optimista (por exceso) se

define de la siguiente forma:

Si hab pertenece al plano P,

entonces h(P) es el número de habitaciones de la lista

[hab1...habn] que aún no están en P,

en otro caso h(P) es el número total de habitaciones en la lista

[hab1...habn].

La búsqueda resultante no está muy informada, ya que tan solo se cuenta con escasa

información acerca de los atributos de tipo 5. Nótese que la información proporcionada para

los atributos de tipo 1 o 6 es imprescindible para garantizar la admisibilidad de la función

heurística, ya que al ser de la forma “cuanto más mejor” el heurístico ∀ P h(P) = 0 no

resultaría admisible.

La implementación de heurísticos más detallados resulta más complicada

computacionalmente, y es preciso valorar empíricamente si el coste computacional adicional

compensa la reducción del espacio de búsqueda. Al ser el objetivo de este ejemplo mostrar

únicamente las posibilidades de la búsqueda multicriterio en el control de gramáticas de

diseño no se ha considerado necesario buscar heurísticos más ambiciosos.

11.3.3 Ejemplo

El algoritmo METAL-ALN* simplificado para la búsqueda en árbol, las funciones

necesarias para generar el espacio de búsqueda para el dominio del diseño de viviendas así

como las funciones de coste y heurísticas correspondientes a las metas descritas anteriormente

han sido implementadas en Common LISP (Steele, 1990). También se ha implementado una

interfaz gráfica usando el paquete CLX31 (TII, 1989).

31 Common LISP X interface.

Page 271: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

261

A modo de ejemplo consideremos la descripción de un problema dada por los datos de

las habitaciones mostrados en la tabla 11.2, el esquema de conexión de la figura 11.8, y los

criterios descritos en la tabla 11.3.

Habitación Dimensiones (cm) Salón (S) 400 x 400 Comedor (C) 300 x 250 Cocina (K) 300 x 250 Pasillo (P) 100 x 100 Aseo (A) 200 x 300 Dormitorio 1 (1) 300 x 250 Dormitorio 2 (2) 300 x 250 Dormitorio 3 (3) 300 x 300

Tabla 11.2. Dimensiones de las habitaciones.

1

C

A P 3

2

SK

Figura 11.8. Esquema de conexión.

Nivel de prioridad

Atributo Tipo Nivel de aspiración

Peso

ancho-plano ≤ 1000 (cm.) 1 1 alto-plano ≤ 1000 (cm.) 1 adyacencias (aseo, [kocina]) ≥ 1 1 2 num-espacios (pasillo) ≤ 2 1 pared-ocupada (salon, arriba) ≤ 0.01 (cm.) 1 pared ocupada (dorm-1, derecha) ≤ 0.01 (cm.) 1 pared-ocupada (dorm-2, derecha) ≤ 0.01 (cm.) 1

3

pared-ocupada (dorm-3, derecha) ≤ 0.01 (cm.) 1 4 perímetro-interior ≥ 100000 (cm.) -

Tabla 11.3. Nivel de prioridad, atributo, dirección, aspiración y peso para cada meta.

Las metas se organizan en cuatro niveles de prioridad diferentes. La prioridad más alta

se centra en mantener el tamaño del plano dentro de ciertos límites (un cuadrado de 10 × 10

metros). En el segundo nivel se incluyen dos metas. La primera corresponde a la preferencia

de que los aseos y la cocina sean adyacentes entre sí. Este es un criterio de corte económico,

ya que reduce el coste de las instalaciones. La segunda indica que el pasillo deberá ser lo más

corto posible. En un tercer nivel se expresa el deseo de que el salón tenga libre su pared

inferior (presuntamente orientación sur) y los dormitorios sus paredes derechas (orientación

este). Por último en un cuarto nivel de preferencia, como objetivo menos prioritario se intenta

minimizar el perímetro del diseño.

Page 272: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

262

El programa encuentra dieciséis soluciones eficientes al problema, con tres vectores de

atributos minimales diferentes. Los valores de los distintos vectores de atributos minimales y

el logro conseguido para cada nivel de prioridad (suma de desviaciones ponderadas de las

metas) se muestran en la tabla 11.4. No se pueden satisfacer todas las metas en el nivel tres.

Nivel de pr.

Atributo Vector 1 Vector 2 Vector 3 Logro

ancho-plano 950 950 950 1 alto-plano 900 850 850

0

adyacencias (aseo, [kocina]) 1 1 1 2 num-espacios (pasillo) 2 2 2

0

pared-ocupada (salon, arriba) 0 0 0 pared ocupada (1-dorm, derecha) 0 150 0 pared-ocupada (2-dorm, derecha) 0 0 150

3

pared-ocupada (3-dorm, derecha) 150 0 0

14999

4 perímetro-interior 5500 5600 5600 0

Tabla 11.4. Tres vectores de atributos minimales y vector de logro correspondiente.

El vector 1 corresponde a doce soluciones diferentes. Los planos de tres de ellas se

muestran en la figura 11.9. Las restantes se obtienen cambiando la localización de la puerta

del aseo y/o intercambiando de los dormitorios 1 y 2 (los más pequeños). En todos ellos el

dormitorio 3 (el más grande) tiene bloqueados 1,5 metros de su pared derecha.

Figura 11.9. Tres de las soluciones correspondientes al primer vector de atributos mostrado en latabla 11.4.

Los vectores 2 y 3 corresponden a dos soluciones cada uno. En realidad son iguales

dos a dos intercambiando el dormitorio 1 por el 2 (tienen el mismo tamaño). La figura 11.10

muestra las soluciones correspondientes al vector 2. La única diferencia entre ellas se debe a

Page 273: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

263

la localización de la puerta del aseo. Los diseños obtenidos aquí son más compactos, como

indican el mayor valor de perímetro interior y el menor valor en la altura del plano resultante.

Figura 11.10. Soluciones correspondientes al segundo vector de atributos mostrado en la tabla 11.4.

Obsérvese que tras la ejecución del programa el diseñador puede comprobar

inmediatamente si el problema está sobrerrestringido (algunas metas no alcanzaron el nivel de

aspiración establecido) o infrarrestringido (se encontró un gran número de soluciones). Tras

un análisis de los resultados proporcionados el usuario puede cambiar la descripción del

problema añadiendo nuevas metas, eliminando otras y/o cambiando su prioridad, y realizar un

nuevo experimento.

El tiempo empleado en resolver el ejemplo anterior fue de 5890 segundos (3668

iteraciones) en una estación de trabajo INDY Silicon Graphics con procesador IP22 a 132

MHz y 64Mb. de RAM. En un procesador Pentium a 200 MHz con 64 Mb de RAM el tiempo

de procesador fue de 4184 segundos.

11.4. COMENTARIOS

En este capítulo se ha ilustrado una aplicación posible de los algoritmos con

satisfacción de metas: el control de gramáticas para la generación de diseños. Se han

presentado algunos resultados obtenidos con una sencilla gramática para el dominio de la

planificación del espacio.

El uso de algoritmos de búsqueda heurística multicriterio para este tipo de problemas

presenta diversas ventajas. En primer lugar permite la generación automática de diseños

pertenecientes al lenguaje de la gramática empleando criterios de alto nivel (adyacencias,

Page 274: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

264

orientaciones, proximidades). El uso de metas lexicográficas es mucho más flexible que el

simple enunciado de restricciones. El programa proporciona siempre respuestas aunque no

puedan satisfacerse todos los criterios, relajando primero siempre las metas menos

prioritarias. La posibilidad de incluir información heurística permite a estos algoritmos

utilizar tanto atributos "cuanto menos mejor" como atributos "cuanto más mejor".

Obviamente no en todos los casos este tipo de algoritmos resultará adecuado para el

control de gramáticas de diseño. La necesidad de buenos heurísticos aumentará cuanto más

grande sea el espacio de diseño. En este sentido hay que destacar que la incorporación de

conocimiento de diseño en las reglas permite aminorar la explosión combinatoria. En el caso

ideal todos los diseños generados por una buena gramática responden al estilo o funcionalidad

deseados. La dificultad reside en que pequeños cambios en las reglas tienen muchas veces

efectos imprevistos en los diseños resultantes. En este sentido, diseñar una buena gramática

para un problema se convierte en un auténtico problema de diseño.

La gramática presentada en el ejemplo tiene muchas limitaciones y su finalidad es

únicamente ilustrativa. El espacio de diseño generado crece exponencialmente con el número

de habitaciones, pudiendo tener en algunos casos un factor de ramificación en torno a 30. Para

aplicaciones realistas sería necesario incorporar reglas que reflejasen un estilo más concreto,

considerar criterios adicionales y replantear el tratamiento de las dimensiones de las

habitaciones. Aunque en algunos casos el tamaño de las habitaciones puede estar prefijado, lo

normal es permitir ciertos rangos de variación o solapamiento. No obstante, en algunos

dominios relacionados, como la distribución de mobiliario de oficina, la suposición de

tamaños fijos es perfectamente razonable.

Page 275: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

265

CAPÍTULO 12

EXPLORACIÓN DE CRITERIOS EN DISEÑO DE

CARRETERAS

El ejemplo desarrollado en este capitulo ilustra la capacidad de METAL-AL* aplicado

a búsqueda en grafos. Se trata de un problema extraído del dominio del diseño de carreteras.

La formalización descrita corresponde a un grafo sobre el que se aplica una búsqueda guiada

por metas ponderadas. En primer lugar se esbozan algunos aspectos del diseño de carreteras.

A continuación se describe el espacio de estados empleado y algunos ejemplos.

12.1. ALGUNOS ASPECTOS DEL DISEÑO DE CARRETERAS

El diseño de nuevas vías de comunicación terrestres (carreteras, autopistas, líneas

ferroviarias) es una tarea compleja. Su impacto social, económico y medioambiental

subordina y condiciona de manera obligada los aspectos técnicos de su realización. Aunque

existen ciertos elementos comunes al diseño de todas estas obras, la presente sección se centra

en algunos aspectos concretos desde el punto de vista del diseño de carreteras.

El primer aspecto destacable de este tipo de diseño es su marcado carácter

multicriterio. Diversos grupos de presión, políticos y sociales intervienen normalmente de

forma conflictiva en el proceso. La labor del ingeniero o ingenieros encargados del diseño

consiste en intentar satisfacer todas las expectativas creadas mediando a su vez con las

condiciones geográficas y las limitaciones técnicas y presupuestarias.

Desde un punto de vista general la complejidad de la tarea se resuelve

descomponiéndola en base a dos criterios independientes (Pérez de la Cruz y otros, 1995): el

nivel de definición y las superficies de proyección.

Page 276: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

266

La descomposición de la tarea en cuanto al nivel de definición puede considerarse en

tres etapas:

1. Planificación. En esta etapa se resuelven la mayoría de decisiones políticas y

compromisos con los grupos de presión social. El resultado es una especificación

genérica de puntos entre los que debe circular la carretera.

2. Diseño preliminar. En base a la especificación anterior y teniendo en cuenta

consideraciones técnicas se elige un trazado a gran escala (normalmente 1:10000

para la proyección horizontal, y 1:500 para la vertical).

3. Diseño detallado, en el que se añaden todos los detalles necesarios para la

construcción final de la obra.

En paralelo con la anterior descomposición, la descripción de la carretera puede

dividirse en sus proyecciones horizontal y vertical. Sin embargo, considerar de forma

totalmente independiente ambas proyecciones puede ocasionar algunos problemas, como la

aparición de perspectivas engañosas desde el punto de vista de los futuros conductores. Por

este motivo, son deseables estrategias que combinen en cierta medida aspectos del diseño de

ambas proyecciones.

En la siguiente sección se elabora una formalización con fines ilustrativos del

problema del trazado preliminar de carreteras, centrándose fundamentalmente en su

proyección horizontal. Los ingenieros no realizan esta tarea de forma algorítmica, sino

basándose en su experiencia y a su propia percepción del problema. Los criterios

considerados son muy variados, e incluyen características funcionales (dictadas por las

normativas legales vigentes), características geográficas (donde se considera la longitud del

trazado y la necesidad de evitar zonas abruptas o con problemas geotécnicos, yacimientos

arqueológicos, etc.) y aspectos de orden económico (donde inciden fundamentalmente los

movimientos de tierra necesarios).

También existen otros factores a considerar dependiendo del contexto. Las

limitaciones no son las mismas en zonas periurbanas, campo abierto, o en presencia de

obstáculos lineales, como por ejemplo ríos. El ejemplo presentado asume la realización del

diseño en campo abierto y en ausencia de obstáculos lineales.

Page 277: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

267

12.2. EL PROBLEMA DEL TRAZADO PRELIMINAR DE

CARRETERAS

12.2.1 El espacio de búsqueda

Inicialmente el problema se presenta en la forma de una superficie o mapa topográfico,

y la localización de dos puntos en el mismo que sirven indistintamente de origen y destino

para la carretera.

A partir de la digitalización del mapa puede obtenerse una malla de cotas con la

resolución deseada. Los caminos dentro de la malla, correspondientes a posibles trazados, se

construyen permitiendo desplazamientos desde un punto a otro de la misma siguiendo algún

criterio de vecindad. En los ejemplos presentados más adelante se ha considerado el criterio

de 8-vecindad, que aparece ilustrado en la figura 12.1. Según este criterio es posible

desplazarse desde cada punto de la malla a cualquiera de sus ocho vecinos más cercanos.

Figura 12.1. Desplazamientos posibles dentro de la malla a partir de un punto cualquiera.

Para hacer más realista la generación de trazados se ha definido un espacio de estados

sobre la misma de modo que se eliminen giros demasiado acentuados. Así, cada estado viene

definido por tres valores (x, y, α), donde (x, y) son las coordenadas dentro de la malla, y α es

la orientación con la que se alcanzó dicho punto según un sistema de referencia global.

Los movimientos o transiciones permitidas están limitadas por un umbral global ϕ que

limita la variación máxima posible en la orientación al pasar de un estado a otro. En los

ejemplos descritos más adelante se ha considerado un umbral de ± 45º. La figura 12.2 muestra

ejemplos de trazados válidos y no válidos sobre la malla.

Page 278: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

268

A

B

CD

EF

90º

180º

270ºA’

ϕϕϕϕ = ±±±± 45º

8-vecinos

Figura 12.2. Orientación inicial de 0º en los puntos A y A’. (a) Trazados válidos sobre la malla. (b)

Trazado no válido, ya que las transiciones C → D y E → F suponen variaciones de orientación de 90º.

12.2.2 Criterios para el trazado de carreteras

Tal como se comenta en la sección 12.1. son muchos los atributos que pueden

considerarse para este tipo de problemas. Para la realización de pruebas se han considerado

únicamente dos:

1. La longitud del trazado.

2. La longitud del recorrido vertical, empleado como una estimación del coste final

(véase la figura 12.3). Los movimientos de tierra necesarios para suavizar el

trazado son responsables de buena parte de este coste. Por tanto, si el trazado es

muy ondulado el coste será presuntamente elevado.

a

bc

Ejez

Plano xy

Recorrido vertical = a+b+c

Figura 12.3. Recorrido vertical.

Ambos atributos pueden calcularse de forma aditiva. El primero sumando las

distancias entre los distintos puntos del trazado en la malla, y el segundo sumando las

diferencias en valor absoluto de las cotas para cada par de puntos consecutivos.

La función heurística multicriterio empleada es de la forma:

H(e) = {(h1(e), h2(e))}

Page 279: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

269

Donde e = (x, y, α) es un estado del problema, y h1(e), h2(e) son funciones escalares

admisibles para la minimización de ambos atributos. Concretamente:

! Para la longitud del trazado h(e) es la distancia más corta en la malla de 8-vecinos

entre el punto (x, y) y las coordenadas del estado final.

! Para el recorrido vertical h(e) es la diferencia entre la cota del punto (x, y) y la del

estado final.

Ambos heurísticos limitan de forma efectiva el número de estados a considerar.

12.2.3 Ejemplos

El algoritmo METAL-AL*, las funciones necesarias para generar el espacio de

búsqueda de trazados de carreteras, así como las funciones de atributos y heurísticas

correspondientes a los atributos descritos anteriormente, han sido implementadas en

CommonLISP (Steele, 1990). Para la visualización gráfica de los resultados se ha empleado el

software de visualización MATLAB® (MathWorks, 1995).

A continuación se presentan varias pruebas del programa. Todas ellas corresponden a

mapas topográficos de 5 × 10 Km. discretizados con una resolución de 50 × 100. El sistema

de coordenadas tiene su origen en la esquina superior izquierda, que corresponde al punto (1,

1). La esquina inferior derecha corresponde al punto (50, 100). Los niveles de aspiración se

han establecido cercanos a los valores óptimos ideales, que pueden obtenerse fácilmente a

partir de la malla.

Primer ejemplo. La figura 12.4 muestra el mapa topográfico y el resultado de un

primer experimento. Se trata de encontrar un trazado desde la esquina inferior izquierda a la

superior derecha. Concretamente el enunciado del problema se muestra en la tabla 12.1.

Estado inicial (50, 1, 135º) Cjto. de estados finales {(1 , 100, _ )} Meta1 rec-vertical ≤ 102 m. Meta2 longitud ≤ 12000 m.

Tabla 12.1. Datos correspondientes al primer ejemplo.

Se realizaron diversas pruebas cambiando los pesos de los dos criterios considerados.

Todas proporcionaron sorprendentemente el mismo resultado, es decir, el mismo trazado

Page 280: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

270

obtiene valores óptimos para ambos atributos por lo que no es necesario establecer un

compromiso entre ellos. Concretamente el recorrido vertical es de 102 metros (la diferencia

exacta entre las cotas de los puntos inicial y final), y la distancia recorrida de 11’929

kilómetros (la distancia mínima en la malla, salvo errores de redondeo).

0

50

10 20 30 40 50 60 70 80 90

y, 90º

x, 0º

Figura 12.4. Mapa topográfico y trazado propuesto para el primer ejemplo.

La figura 12.5 muestra una imagen tridimensional del mismo terreno y del trazado

propuesto. La escala del eje z, que indica las cotas de los puntos de la malla, viene dada en

metros. La figura 12.6 muestra el perfil del trazado, donde puede observarse fácilmente que el

recorrido vertical es mínimo.

El tiempo de procesador empleado en encontrar la solución fue de 252,8 segundos

para un procesador Pentium 200MHz. con 64 Mb.de memoria RAM, y de 575,2 en una

estación de trabajo INDY Silicon Graphics con procesador IP 132MHz. y 64 Mb. de RAM.

Page 281: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

271

Figura 12.5. Imagen 3D del terreno y el trazado correspondientes al primer ejemplo.

Figura 12.6. Perfil del trazado propuesto para el primer ejemplo. El eje horizontal indica la longitud del

trazado en cientos de metros. El eje vertical indica las cotas en metros.

Segundo ejemplo. La tabla 12.2 muestra unos nuevos estados inicial y final, y un

nuevo conjunto de metas, aplicados al mapa topográfico mostrado en la figura 12.7.

Page 282: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

272

Estado inicial (50, 1, 135º) Cjto. de estados finales {(45 , 100, _ )} Meta1 rec-vertical ≤ 122 m. Meta2 longitud ≤ 10100 m.

Tabla 12.2. Datos correspondientes al segundo ejemplo.

En este caso pueden obtenerse muchas soluciones diferentes estableciendo distintos

valores para los pesos. La figura solo muestra dos de los muchos resultados obtenidos.

Eligiendo el segundo en lugar del primero puede conseguirse una reducción de más de 1,2

kilómetros de longitud a cambio de incrementar en 32 metros el recorrido vertical.

• Trazado 1:w1 = 0.5 rec-vertical = 124 m.w2 = 0.5 longitud = 11915 m.

• Trazado 2:w1 = 0.2 rec-vertical = 156 m.w2 = 0.8 longitud = 10687 m.

y, 90º

x, 0º

0

20

40

10 20 30 40 50 60 70 80 90

Figura 12.7. Mapa topográfico correspondiente al segundo ejemplo, junto a dos trazados propuestos.

En general, mediante una variación de los pesos asignados a cada criterio puede

analizarse la dependencia particular que existe entre ellos en cada problema.

Page 283: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

273

La figura 12.8 muestra una imagen tridimensional del mismo terreno y deltrazado propuesto. La escala del eje z, viene dada en metros. La figura 12.9 muestrael perfil del trazado, donde puede observarse fácilmente que el recorrido vertical esmínimo.

Figura 12.8. Imagen 3D del terreno y los trazados 1 (en rojo) y 2 (en azul) correspondientes al

segundo ejemplo

0 2 0 4 0 6 0 8 0 1 0 0 1 2 09 0 0

9 2 0

9 4 0

9 6 0

9 8 0

1 0 0 0

1 0 2 0

1 0 4 0

Figura 12.9. Perfil de los trazados 1 (en rojo) y 2 (en azul) del segundo ejemplo. El eje horizontal

indica la longitud del trazado en cientos de metros. El eje vertical indica las cotas en metros.

Page 284: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

274

El tiempo de procesador empleado en encontrar ambas soluciones fue de 3061 y 2501

segundos respectivamente para un procesador Pentium 200MHz. con 64 Mb.de memoria

RAM. En una estación de trabajo INDY Silicon Graphics con procesador IP 132MHz. y 64

Mb. de RAM los tiempos de procesador fueron de 5957 y 3298 segundos respectivamente.

12.3. COMENTARIOS

En cuanto a la formalización del problema del trazado de carreteras son muchos los

aspectos que pueden mejorarse, empezando por un tratamiento más realista del coste de la

obra. No es difícil incluir en la formalización descrita otros criterios, como por ejemplo

mantener el trazado alejado de ciertas zonas. También sería deseable un tratamiento más

realista sobre el trazado de curvas.

El principal interés del ejemplo descrito es probar la eficacia del algoritmo METAL-

ALN*. Los ejemplos descritos, correspondientes a mallas de 100 × 50 nodos, generan espacios

de búsqueda con 40.000 estados. Sin embargo, METAL-ALN* se desenvuelve bien en este

tipo de problemas. Esto se debe al uso de funciones heurísticas y a una eficiente gestión del

grafo de búsqueda.

Las primeras pruebas realizadas empleaban una gestión del grafo de búsqueda análoga

a la descrita para el algoritmo MOA* en (Stewart y White, 1991). El resultado fue de tiempos

de ejecución absolutamente inaceptables (del orden de días). Un análisis detallado de la

ejecución del algoritmo reveló que buena parte del espacio de búsqueda era generado de

nuevo una y otra vez, debido a que los estados se reabrían cada vez que se encontraba un

nuevo camino óptimo de Pareto hasta ellos. El resultado era que multitud de caminos ya

explorados volvían a ABIERTOS y debían ser explorados de nuevo. El problema se agravaba

a medida que aumentaba la profundidad de la búsqueda.

La solución fue sencilla, natural y eficaz. Cuando se encuentra un nuevo camino hasta

un estado, solamente se pasa a ABIERTOS si es diferente de los ya encontrados hasta el

momento, y no es necesario reabrir los demás caminos ya conocidos y posiblemente

explorados. La mejora en eficiencia fue espectacular.

Page 285: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

275

Por último, la aplicación descrita podría beneficiarse de la combinación de las técnicas

de búsqueda multicriterio con técnicas de búsqueda bidireccional como la descrita en (Linares

y Gómez-Pérez, 1997), que pueden beneficiarse del uso de arquitecturas paralelas.

Page 286: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

276

Page 287: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

277

V. CONCLUSIONES

Page 288: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

278

Page 289: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

279

CAPÍTULO 13

CONCLUSIONES Y DESARROLLOS FUTUROS

13.1. CONCLUSIONES

Arquitectos, ingenieros y diseñadores en general deben desentrañar muchas veces una

realidad física y social compleja. El desarrollo de herramientas informáticas que sirvan de

ayuda en esta tarea supone un desafío interesante para la Inteligencia Artificial.

Las modernas teorías sobre diseño apuntan a la construcción de todos los elementos

del problema como una actividad fundamental en dicho proceso. Esto implica tanto la

formalización de un conjunto coherente de fines a perseguir como la determinación de los

medios a emplear. Las contribuciones de la tesis inciden en el primer aspecto, que se ha

denominado exploración de criterios.

La exploración de criterios comienza con una formalización inicial. A través de la

experiencia obtenida de la realización de experimentos y la síntesis de soluciones parciales, el

diseñador puede ir descubriendo si sus criterios son incompletos, inconsistentes, imprecisos

y/o ambiguos y de qué forma interactúan unos con otros. En el transcurso del proceso algunos

criterios pueden ser abandonados y aparecer otros nuevos, a medida que se descubren las

posibilidades de cada situación concreta.

Para apoyar la tarea de exploración de criterios la tesis propone adaptar algunas

técnicas de la IA aprovechando conceptos elaborados en el contexto de la Teoría de la

Decisión Multicriterio. Aunque el interés por las técnicas multicriterio es creciente dentro de

la Investigación Operativa, aún son pocas las técnicas desarrolladas por la IA en este sentido.

Page 290: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

280

De entre las técnicas multicriterio más comunes son las de satisfacción de metas las

que parecen más adecuadas para la exploración de criterios. Tal como señala (Gass, 1996) las

técnicas de satisfacción de metas fueron propuestas originalmente como un método para la

resolución de problemas sobre-restringidos (inconsistentes). La introducción de pesos y

prioridades lexicográficas enriquece el método con los medios necesarios para eliminar

ambigüedades. Así, a lo largo de la tesis se propone el desarrollo de nuevos algoritmos de

satisfacción de metas.

La principal contribución de la tesis es un marco general para una clase de algoritmos

multicriterio de búsqueda heurística. El marco incluye una formalización de los problemas de

búsqueda heurística multicriterio en grafos y dos procedimientos generales para su resolución.

El primero de ellos, denominado POP*, permite la búsqueda de una solución minimal. El

segundo, denominado POPN* permite determinar el conjunto de todas las soluciones

minimales a un problema. Ambos procedimientos responden a la idea de un proceso cíclico

de generación de caminos solución parciales. En cada ciclo el conjunto de caminos se ordena

sucesivamente en base a dos criterios: el primero corresponde a una relación de preferencia,

que enfoca el esfuerzo de búsqueda hacia las soluciones minimales; el segundo corresponde a

una relación de poda que permite descartar algunos caminos, reduciéndose así el número de

posibilidades. La gestión de la estructura concreta que almacena los caminos solución

parciales se ha tratado separadamente, preservando así con claridad la lógica de la búsqueda.

El análisis formal de POP* y POPN* incluye además un conjunto de condiciones suficientes

para su admisibilidad. Es destacable la introducción de un buen número de nuevos conceptos

que generalizan los empleados normalmente para el análisis de los algoritmos de búsqueda

escalares.

Se ha considerado la subclase de problemas que emplean funciones de atributos

acumulables, presentándose algoritmos para las principales reglas de decisión multicriterio:

búsqueda multiobjetivo (algoritmo MO-Z*), búsqueda con funciones de coste multiatributo

(ZL*), búsqueda con múltiples objetivos ordenados por prioridad (PRIMO-Z*, PRIMO-ZL*) y

búsqueda con satisfacción de metas (METAL-ZL*). Apoyándose en las propiedades formales

presentadas para del procedimiento POP*, se han presentado condiciones suficientes para la

admisibilidad de todos ellos. Asimismo, se han incluido en el marco general propuesto otros

algoritmos ya existentes, como el algoritmo Z* (propuesto para optimización de atributos

escalares, pero que puede emplearse también adecuadamente para algunos problemas con

Page 291: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

281

funciones de coste multiatributo), el algoritmo U* (también para funciones de coste

multiatributo), el algoritmo MOA* (para problemas multiobjetivo con metas aditivas), y el

célebre algoritmo A* (para problemas de optimización escalar aditiva). También se ha

analizado una estructura de datos que puede servir para todos ellos, el grafo de búsqueda. Los

procedimientos presentados para la gestión del grafo de búsqueda suponen una sencilla pero

importante mejora respecto al empleado en MOA* (Stewart y White, 1991).

En consecuencia con la línea argumental de la tesis se ha presentado con especial

detalle METAL-ALN*, un algoritmo para la satisfacción de metas lexicográficas aditivas. Su

análisis incluye demostraciones sobre su admisibilidad bajo condiciones análogas a las

empleadas para el algoritmo A*.

Por otra parte se ha ilustrado la aplicación de las técnicas de satisfacción de metas

usando variantes del algoritmo METAL-ALN* en dos problemas extraídos de dos dominios de

diseño concretos. El primero, relativo al control de gramáticas para la obtención de diseños,

empleando búsqueda en árbol con satisfacción de metas lexicográficas. El segundo, aplicado

al trazado de carreteras, empleando búsqueda en grafos con metas ponderadas.

13.2. DESARROLLOS FUTUROS

Una de las aspiraciones de la tesis es que sus resultados sirvan, empleando las palabras

de Donald Schön, para “mantener la indagación en marcha”.

Son muchas las direcciones en las que se puede continuar el trabajo descrito en la

tesis.

• Exploración de criterios. De los cuatro aspectos identificados en KLDE0 como

característicos de las especificaciones de requisitos en problemas de diseño, las

técnicas de satisfacción de metas permiten abordar directamente sólo dos

(inconsistencia y ambigüedad). Los aspectos de incompletitud e imprecisión son

también de mucha importancia, y es necesario analizar la forma en que se pueda

ayudar a los diseñadores en su resolución (Smithers y otros, 1994).

• Sistemas de IA para ayuda al diseño. Son muchos los aspectos del diseño que

deben ser analizados antes de poder construir sistemas capaces de ayudar a los

diseñadores a través de todo el proceso de diseño. Concretamente sería deseable

Page 292: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

282

integrar las técnicas empleadas para la exploración de criterios con las que

permitan la exploración del espacio de estructuras.

• Técnicas multicriterio en la IA. Las técnicas multicriterio se están introduciendo

lentamente en la IA. La tesis pretende avanzar en esta dirección, aunque aún es

mucho el camino que queda por recorrer. Una continuación interesante es realizar

un análisis sobre el impacto de la información heurística en los procesos de

búsqueda multicriterio, de forma análoga a los análisis realizados para los

algoritmos de búsqueda tradicionales (Pearl, 1984).

• Desarrollo de aplicaciones. La finalidad de los algoritmos descritos es poder

desarrollar aplicaciones útiles. Los casos de prueba presentados son sólo dos áreas

prometedoras de aplicación, aunque son muchos los aspectos que deben

desarrollarse para obtener herramientas prácticas a partir de ellos. En particular,

para construir un sistema de ayuda basado en conocimiento para alguna clase

particular de diseño, es necesario construir previamente un modelo de la misma.

Page 293: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

283

APÉNDICES

Page 294: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

284

Page 295: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

285

APÉNDICE A

NOTACIÓN Y ABREVIATURAS EMPLEADAS

ATMS: Assumption-based Truth Maintenance System (Sistema para el

Mantenimiento de la Verdad basado en Suposiciones).

CLOP: Consistent Labeling and Optimization Problem (Problema de

Optimización y Etiquetado Consistente).

CLP: Consistent Labeling Problem (Problema de Etiquetado Consistente).

IA: Inteligencia Artificial.

IC: Ingeniería del Conocimiento.

IO: Investigación Operativa.

KCDC: Key Centre of Design Computing.

KL: Knowledge Level (Nivel del Conocimiento).

KLKE: Nivel del Conocimiento, tal como se emplea en las modernas

metodologías de la Ingeniería del Conocimiento.

KLN: Nivel del Conocimiento, tal como fue propuesto originalmente por

Newell.

SBC: Sistemas Basados en Conocimiento.

sii: si y solo si

TDM: Teoría de la Decisión Multicriterio.

Page 296: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

286

ℜ Denota el conjunto de los números reales.

← Empleado en el pseudocódigo de los algoritmos denota la sentencia de

asignación. En otro contexto se refiere a la existencia de un arco entre dos

nodos de un grafo, por ejemplo: n ← n' o n' → n denota la existencia de un

arco que va del nodo n' al nodo n.

(s,...n) Cualquier camino que parte del nodo s y termina en el nodo n.

p Denota la relación "es preferible a"

p Denota la relación "es igual o preferible a"

♣ Empleado en el texto de la memoria denota el fin de una definición,

proposición o demostración.

∧ y (conjunción).

∨ o (disyunción).

¬ No (negación).

∃ Existe.

∀ Para todo.

¬∃ No existe.

∅ El conjunto vacío.

∈ Pertenece a.

/ Tal que.

{n} El conjunto formado por el elemento n.

P(C) El conjunto de las partes del conjunto C.

P Un camino en un grafo.

Page 297: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

287

APENDICE B

TEXTO ORIGINAL DE LAS CITAS

A lo largo de la memoria aparecen referencias textuales a las obras originales de

diversos autores. En este apéndice se enuentran, ordenadas por capítulos y en el mismo orden

que en la memoria, las transcripciones del texto de dichas citas en su lengua original.

B.1. CITAS DEL CAPÍTULO 2

(Newell y Simon, 1976)

"A physical symbol system has the necessary and sufficient means for general intelligent action."

(Newell y Simon, 1976)

"The solutions to problems are represented as symbol structures. A physical-symbol system exercises its intelligence in problem-solving by search -that is, by generating and progressively modifying symbol structures until it produces a solution structure."

(Goldstein y Papert, 1977)

"The fundamental problem of understanding intelligence is not the identification of a few powerful techniques, but rather the question of how to represent large amounts of knowledge in a fashion that permits their effective use and interaction."

(Van de Velde, 1994)

“The idea that knowledge is there to be extracted from the human expert and translated into usable knowledge elements [..] was misleading. [..]. Bringing all these highly specific knowledge elements together in a full expert model turned out to be a genuine problem of engineering. More at the technical level, the hope that an intelligent system could be achieved by lumping representatinos of knowledge fragments together in a knowledge base and then letting a general inference mechanism (e.g. a forward-chaining rule interpreter [..]) sort out when to use those elements has failed.”

(Newell, 1993, p. 34)

"People learn about the knowledge level because they must specify systems to be programmed. They do not specify these in terms of just inputs and outputs, but also in terms of what the program knows that it can use to compute the outputs from the inputs. So they induce from their practice a working notion of what it means for a system to have knowledge and what it means to supply the symbol-level mechanisms that encode that knowledge and extract it to make the program behave as desired. It does not take a Newton to conceive of the knowledge level [..]"

Page 298: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

288

(Marr, 1982, p. 27):

“[...] trying to understand perception by studying only neurons is like trying to understand bird flight by studying only feathers: It just cannot be done. In order to understand bird flight, we have to understand aerodynamics; only then do the structure of feathers and the different shapes of birds’ wings make sense.”

(Smithers, 1996, p. 563):

“[..] in AID (Artificial Intelligence in Design), we still see systems built in ways reminiscent of the construction of the first generation Expert Systems of the 1970s and early 1980s. We see very little of the kind of modelling of expertise that modern Knowledge Engineering methods explicitly advocate and actively support”.

B.2. CITAS DEL CAPÍTULO 3

(Simon, 1969, p. 55):

“Everyone designs who devises courses of action aimed at changing existing situations into preferred ones. [..] Design, so construed, is the core of all professional training: it is the principal mark that distinguishes the professions from the sciences. Schools of engineering, as well as schools of architecture, business, education, law, and medicine, are all centrally concerned with the process of design."

(Simon, 1969, p. 83):

"the proper study of mankind is the science of design."

B.3. CITAS DEL CAPÍTULO 4

(Schön, 1983, p. 77)

“In the last twenty years or so, the concept of design has broadened. [..] Herbert Simon and others have suggested that all occupations engaged in converting actual to preferred situations are concerned with design. Increasingly there has been a tendency to think of policies, institutions, and behavior itself, as objects of design.

It is questionable how far in this direction we ought to go. We risk ignoring or underestimating significant differences in media, contexts, goals, and bodies of knowledge specific to the professions. But we may also discover, at a deeper level, a generic design process which underlies these differences.”

(E. Schein, citado en Schön, 1983, p. 24):

“1.) An underlying discipline or basic science component upon which the practice rests or from which it is developed.

2.) An applied science or “engineering” component from which many of the day-to-day diagnostic procedures and problem-solutions are derived.

3.) A skills and attitudinal component that concerns the actual performance of services to the client, using the underlying basic and applied knowledge.”

(Schön, 1983, p. 39-41)

“From the perspective of Technical Rationality, professional practice is a process of problem solving. Problems of choice or decision are solved through the selection, from available means, of the one best suited to established ends. But with this emphasis on problem solving, we ignore problem setting, the process by which we define the decision to be made, the ends to be achieved, the means which may be chosen. In real-world practice, problems do not present themselves to the practitioner as givens. They must be constructed form the materials of problematic situations which are puzzling, troubling, and uncertain. In order to convert a problematic situation to a problem, a practitioner must do a certain kind of work. He must make sense of an uncertain situation that initially makes no sense.

[..] although problem setting is a necessary condition for technical problem solving, it is not itself a technical problem. [..] Problem setting is a process in which, interactively, we name the things to which we will attend, and frame the context in which we will attend to them.

Page 299: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

289

Technical Rationality depends on agreement about ends. When ends are fixed and clear, then the decisions to act can present itself as an instrumental problem. But when ends are confused and conflicting, there is as yet no “problem” to solve. A conflict of ends cannot be resolved by the use of techniques derived from applied research. It is rather through the non-technical process of framing the problematic situation that we may organize and clarify both the ends to be achieved and the possible means of achieving them.”

(Schön, 1983, p. 45):

“Some students of the professions have tried to take account of the limitations of technical expertise and have proposed new approaches to the predicament of professional knowledge. Among these [is] Herbert Simon, whose The Sciences of the Artificial has aroused a great deal of interest in professional circles [..]

It is Simon [..] who most clearly links the predicament of professional knowledge to the historical origins of the Positivist epistemology of practice. Simon believes that all professional practice is centrally concerned with what he calls “design”, that is, with the process of “changing existing situations into preferred ones.” But design in this sense is precisely what the professional schools do not teach [...] schools have “nearly abdicated responsibility for training in the core professional skill,” in large part because such training would have to be grounded in a science of design which does not yet exist. Simon proposes to build a science of design by emulating and extending the optimization methods which have been developed in statistical decision theory and management science. [...]

Once problems are well formed in this way, they can be solved by a calculus of decision. As we have seen, however, well-formed instrumental problems are not given but must be constructed from messy problematic situations. Although Simon proposes to fill the gap between natural science and design practice with a science of design, his science can be applied only to well-formed problems already extracted from situations of practice.”

(Schön, 1983, p. 276)

“When a practitioner displays artistry, his intuitive knowing is always richer in information than any description of it. [..] Everyone who has tried to learn from a book how to ski or write a story knows how difficult it can be to act from such a description.”

(Schön, 1983, p. 56):

“When intuitive, spontaneous performance yields nothing more than the results expected for it, then we tend not to think about it. But when intuitive performance leads to surprises, pleasing and promising or unwanted, we may respond by reflecting-in-action. [..] In such processes, reflection tends to focus interactively on the outcomes of action, the action itself, and the intuitive knowing implicit in the action.”

(Schön, 1983, pgp. 60-61):

“As a practitioner experiences many variations of a small number of types of cases, he is able to “practice” his practice. He develops a repertoire of expectations, images, and techniques. He learns what to look for and how to respond to what he finds. As long as his practice is stable, in the sense that it brings him the same types of cases, he becomes less and less subject to surprise. His knowing-in-practice tends to become increasingly tacit, spontaneous, and automatic, thereby conferring upon him and his clients the benefits of specialization.

[..] Through reflection, he can surface and criticize the tacit understandings that have grown up around the repetitive experiences of a specialized practice, and can make new sense of the situations of uncertainty or uniqueness which he may allow himself to experience.”

(Schön, 1992):

"[Designers construct design worlds] through processes of appreciation, by which it is meant both their active, sensory apprehension of the stuff in question, and their construction of an order in that stuff that includes the naming and framing of things, qualities and relationships."

(Schön, 1992):

“Symbolic, procedural representations of tacit design knowledge are bound to be incomplete or inadequate in relation to the actual phenomena of designing [...]”

“When people design, they deal with many domains and many qualities within domains; their moves produce important consequences in more than one domain. In the extreme case, a move informed by an intention formulated within one domain has consequences in all other domains. Because of the limited information-

Page 300: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

290

processing capacity of humans, they cannot, in advance of making a particular move, consider all the consequences and qualities that they may eventually consider relevant to its evaluation.”

(Winograd, 1990, p. 179):

“[...] it is far from obvious whether the result of experience can be adequately formalized as a repertoire of discrete parrerns [...]. To say that "all of the world's knowledge" could be explicitly articulated in a symbolic form (computational or not) we must assume the possibility of reducing all forms of tacit knowledge (skills, intuition, and the like) to explicit facts and rules. Heidegger and other phenomenologists have challenged this [...]”

(Winograd, 1990, pp. 182-183):

"Stated simply, the techniques of artificial intelligence are to the mind what bureaucracy is to human social interaction. [...] The depersonalization of knowledge in expert systems also has obvious parallels with bureaucracy. [...] The "I just follow the rules" of the bureaucratic clerk has its direct analog in "That's what the knowledge base says".

B.4. CITAS DEL CAPÍTULO 5

(Coyne et al., 1990, p. 37):

"In modeling design we do not attempt to say what design is or how human designers do what they do, but rather provide models by which we can explain and perhaps even replicate certain aspects of design behavior."

(Gero, 1998)

"Computational processes which support designing do not necessarily require any theoretical foundation and are usually restricted to some subset of the totality of the activities of human designing.

[...] Whilst AI aims for a theoretical foundation its utility lies in its ability to represent both designing situations and designing processes using concepts of varying theoretical rigor. Those situations and processes themselves need not necessarily have any such theoretical rigour."

(Gero, 1994b, p. 357)

"Whilst design tools may be used as 'black boxes' without any concern for the underlying concepts, a lack of understanding of the formal approach to design that is taken by the developer of the tool leads to problems for the user of that tool."

(Gero et al., 1988):

"[..] design experience is generalised in such a way that allows representation at the concept level in the form of a class from which instances may be instantiated to meet the unique situation of a specific design. Class and instance take their meaning here from the object-oriented programming paradigm."

(Oxman y Gero, 1998):

"In the situation where the design description is parameterised it presents itself as a set of related variables, the values of which define a design. The function of the knowledge is to produce those values in a goal directed manner with I supplying the goals and V the elements K can operate on. In systems theory terms [Dp] becomes a model of the system being designed and defines the decision variables, and I defines the goals and implicitly the performance variables. V defines the system variables which completely contain the decision variables and K is a set of processes or methods which relate decision variables and performance variables."

(Gero, 1990):

"Although it is well recognized that there is no function in structure and that there is no structure in function, human and design experience produces a connection between function and structure. Once this connection is learned, it is difficult to unlearn. Once the connection between behavior and structure is made, and the connection between behavior and function is made, these connections form the basis of much of a designer's knowledge. [..] if reasoning is to occur in transforming function to structure, then a clear separation must be made between them and between function, structure and behavior."

(Gero et al., 1988)

Page 301: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

291

"Here the prototype is instantiated from its class and is found to be adequate so only values of the decision variables in the parametrised design description or design description generator are searched for within the limits defined by their existence. These values are such as to produce the required interpretations.

[ D = τ(P, I) ]

If the decision variables comprising the design description are numeric only, then optimization methods can be used provided the required interpretations can be expressed numerically. If the values are symbolic then other approaches are required"

(Gero, 1994a, pp. 319-320)

"exploration precedes search and it, effectively, converts one formulation of the design problem into another [..] Part of designing involves determining what to design for (function or teleology), determining how to measure satisfaction (behaviour), and determining what can be used in the final artifact (structure). Exploration is the process which supports this design determinations. Having made these decisions via exploration then search takes over."

(Gero, 1994a, p. 335):

"In some sense [..] exploration may be conceived of as meta-search in that in computational terms all the state spaces which could possibly be produced by a set of exploration processes is determined a priori by the initial state space and those processes."

(Gero, 1994a, p. 321):

"Emergence allows for new views of existing situations to come into being and thus becomes a way of changing the direction or focus of a design."

(Navinchandra, 1991, p. 3):

"[..] it is not out aim to develop cognitive models of human thought, but to build practical computer tools that exhibit some characteristics of human approaches to innovative design. I don't claim that our computer programs reflect what is going on inside a designer's head; we are only trying to make the computer produce results that will appear innovative to an observer."

(Navinchandra, 1991, p. 3):

"Simply put, something is innovative if it solves a known or a new problem in a way different from other known designs. The key to innovation, I believe, is being different."

(Navinchandra, 1990, p. 4):

"Consider the following scenario: a Civil Engineer acquires and programs a robot for laying bricks. The project will be viewed by civil engineers as very innovative idea. Robotics researchers, however, will view the project as "yet-another-application". This is because the brick laying robot is just some standard robot arm programmed to perform a new task."

(Navinchandra, 1991, p. 7-8):

"If a designer reaches for new ideas beyond the knowledge he normally uses during design, his product will appear different. The further he reaches, the more different or novel his design will appear. The reason for this phenomenon is that, for a given culture, there are some cultures (or domains) that are perceived as being related while other cultures are viewed as being far and unrelated. When ideas are transferred between unrelated cultures then design solutions appear different, perhaps novel. The relatedness, or unrelatedness of cultures is determined socially, and is constantly in flux."

(Navinchandra, 1991, pp. 33-34):

“A question that one may ask [..] is: If all criteria come from precedents, then why is it not possible to come up with all the criteria prior to designing? It’s all in the designer’s head anyway! The problem is that, whenever a designer faces a new problem, everything in his Long Term Memory is potentially relevant. The designer cannot possibly take everything into account. He has to limit the scope of the problem by sticking to the domain of the current design. New criteria are retrieved from outside the domain only when some patterns in the current design causes the designer to be reminded of past cases in Long Term Memory. [..] It is computationally intractable to search a design space using all past cases in Long Term Memory as design operators. The use of the precedent database has to be controlled by either limiting its use to certain parts of the design, or by having the conditions of newly generated designs trigger the retrieval of past cases.”

Page 302: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

292

B.5. CITAS DEL CAPÍTULO 6

(Smithers, 1998)

“The need for a Knowledge Level (KL) theory, or KL theories, of designing is presented as a practical alternative to the more widely presumed need for a cognitive theory of designing: a theory of how humans design things. The possibility and utility of a KL theory of designing is based upon two premises. First, that designing is not just a human activity; that other kinds of agents could (in theory) design. Second, that the Knowledge Level presents an appropriate level of abstraction for constructing and expressing a usable (agent-type independent) theory of designing.”

(Smithers y otros, 1994):

"It does not make sense, and would not constitute designing, to just change current requirement descriptions and/or problem statements in a random or illogical way. Nor does it make for a good design process to go through relaxing each constraint (by a small, previously fixed amount) in turn until a solution is found within some previously fixed bound on search time, as happens in Navinchandra's CYCLOPS systems.

The changes made during the design process must be understandable and justifiable, both to the designer and to the customer, if necessary."

(Smithers, 1998):

"Original designing, defined in this way, has not yet received serious attention in AID research."

(Smithers, 1998):

"This means that to get to (at least some kinds of) computer-based creative designing or support of creative designing, we do not necessarily have to work our way up through a hierarchy of innovative and then original design first"

(Smithers, 1998):

"In the case of building knowledge-based systems, a kind of software engineering practice, we now have some well developed knowledge engineering methods which are intended to support model building, knowledge level model building of expertise or knowledge-based problem solving. Currently, these models are, however, empirical models. An important improvement in the use of modern knowledge engineering methods, and in the practice of engineering knowledge-based systems in general, would be to provide an appropriate theory, or theories, to support this kind of modelling. This is the role that (a more complete) KLDE0 is intended to play in the case of building knowledge-based systems for use in designing."

B.6. CITAS DEL CAPÍTULO 10

(White y otros, 1992, p. 362):

"...we note that much of the culling computation is unproductive, as can be seen from the small proportion of iterations in which reward vectors are actually eliminated with this procedure."

B.7. CITAS DEL CAPÍTULO 11

(Knight, 1998):

"The design process is understood as the process by which the grammar itself is developed, not as the generation of designs using the grammar. [..] The development of rules for designs requires the same kind of intelligence, imagination and guesswork as the development of designs in a conventional way."

Page 303: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

293

REFERENCIAS BIBLIOGRÁFICAS

(Akin y otros, 1988) Akin, O., Dave, B., y Pithavadian, S.:Heuristic generation of layouts (HeGeL): Based on a paradigm for problem structuring. En Artificial Intelligence in Engineering: Design, J.S. Gero (Ed.), Elsevier Computational Mechanics Publications, pp. 413-444.

(Bendala, 1992) Bendala Galán, M. Introducción al Arte hispanorromano. Cuadernos de Arte Español, nº 42. Historia 16.

(Bernarás, 1994) Bernarás, A. Problem-oriented and task-oriented models of design in the CommonKADS Framework. En Artificial Intelligence in Design, AID'94, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 499-516.

(Bernarás y Van de Velde, 1994) Bernarás, A y Van de Velde, W. Design. En CommonKADS library for expertise modelling. Reusable problem solving components, J. Breuker y W. Van de Velde (Eds.) IOS Press, Amsterdam. pp. 175-212.

(Breuker, 1994) Breuker, J. A suite of problem types. En CommonKADS library for expertise modelling. Reusable problem solving components, J. Breuker y W. Van de Velde (Eds.) IOS Press, Amsterdam. pp. 57-87.

(Buchanan y Shortliffe, 1984) Buchanan, B.G. y Shortliffe, E.H. Rule-Based Expert Systems. The MYCIN experiments of the Stanford Heuristic Programming Project. Addison-Wesley. Reading, Massachussetts.

(Cagan, 1994) Cagan, J. Design grammars: discussion. Research issues in the application of design grammars. En Formal Design Methods for CAD (B-18). J.S. Gero y E. Tyugu (Eds.). Elsevier-Science B.V. (North-Holland). 1994 IFIP, pp. 191-198.

(Carlson, 1994) Carlson, C. Shape grammars in design: discussion. Design space description formalisms. En Formal Design Methods for CAD (B-18). J.S. Gero y E. Tyugu (Eds.). Elsevier-Science B.V. (North-Holland). 1994 IFIP, pp. 121-131.

(Carraway y otros, 1990) Carraway, R.L., Morin, T.L. y Moskowitz, H. Generalized dynamic programming for multicriteria optimization. European Journal of Operational Research 44 (1990) pp. 95-104.

(Chandrasekaran, 1986) Chandrasekaran, B. Generic Tasks in Knowledge-Based Reasoning: High-Level Building Blocks for Expert System Design. IEEE Expert, 1:3, pp. 23-29, June, 1986.

(Chandrasekaran, 1990) Chandrasekaran, B. Design Problem Solving: A Task Analysis. AI Magazine, Winter, 1990, pp. 59-71.

(Chandrasekaran, 1992) Chandrasekaran, B. Generic Tasks: Evolution of an Idea. Informe Técnico del Laboratory for AI Research (LAIR), Ohio State University (EE.UU.). Disponible a través del servidor Web del LAIR:

http://www.cis.ohio-state.edu/lair/Papers/Year/1992.html.

(Chankong y Haimes, 1983) Chankong, V. y Haimes, Y.Y. Multiobjective decision making. Theory and methodology. North-Holland, New York.

(Cleland y Hills, 1994) Cleland, G. y Hills, W.: A knowledge-based systems approach to the layout design of large made-to-order products. En Artificial Intelligence in Design '94, J.S. Gero y F. Sudweeks (Eds.), Kluwer Academic Publishers, pp. 257-274.

Page 304: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

294

(Corley y Moon, 1985) Corley, H.W. y Moon, I.D. Shortest paths in networks with vector weights. Journal of Optimization Theory and Applications, Vol. 46, No. 1, May 1985, pp. 79-86.

(Coyne y otros, 1990) Coyne, R.D., Rosenman, M.A., Radford, A.D., Balachandran, M. y Gero, J.S. Knowledge-based Design Systems. Addison-Wesley Publishing Company, Reading, Massachusetts.

(Cuena, 1992) Cuena, J. Arquitecturas para sistemas inteligentes de segunda generación. En Curso de conferencias sobre Inteligencia Artificial. Fundamentos teóricos y aplicaciones. D. Maravall (Ed.) Real Academia de Ciencias Exactas, Físicas y Naturales. Madrid.

(Cuena y Molina, 1994) Cuena, J. y Molina, M. KSM: An environment for knowledge oriented design of applications using structured knowledge architectures. En Applications and Impacts, IFIP'94, Vol.2. K. Brunnstein y E. Raubold (Eds.) Elsevier Science B.V. (North-Holland).

(Darlington y otros, 1998) Darlington, M., Potter, S., Culley, S.J., y Chawdhry, P.K. Cognitive theory as a guide to automating the configuration design process. En Artificial Intelligence in Design, AID'98, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 209-228.

(Einstein e Infeld, 1986) Einstein, A. e Infeld, L. La Evolución de la Física. Biblioteca científica Salvat. Salvat Editores, S.A. Barcelona.

(Feigenbaum, 1979) Feigenbaum, E. Themes and Case Studies in Knowledge Engineering. En Expert Systems in the Microelectronic Age, D. Michie (Ed.) Edinburgh Univeristy Press.

(Fernández y otros, 1999) Fernández, J.A., González, J., Mandow, L., Pérez de la Cruz, J.L. Mobile robot path planning: A multicriteria approach. Engineering Applications of Artificial Intelligence (aceptado para publicación).

(Flemming y otros, 1988) Flemming, U., Coyne, R., Glavin, T., y Rychener, M.: A generative expert system for the design of building layouts -version 2. En Artificial Intelligence in Engineering: Design, J.S. Gero (Ed.), Elsevier Computational Mechanics Publications, pp. 445-464.

(Galle, 1981) Galle, P.: An algorithm for exhaustive generation of building floor plans. Communications of the ACM, December, 1981, Vol. 24, No. 12., pp. 813-825.

(Gass, 1996) Gass, S. I. On the education of a multi-criteria researcher: A personal view. The Abraham Charnes Lecture in Memory of Abraham Charnes. En Advances in Multiple Objective and Goal Programming. Lecture Notes in Economics and Mathematical Systems 455, R. Caballero, F. Ruiz, y R.E. Steuer (Eds.) Springer, pp. 5-26.

(Gero y otros, 1988) Gero, J.S., Maher, M.L. y Zhang, W. Chunking structural design knowledge as prototypes. En Artificial Intelligence in Engineering: Design, J.S. Gero (Ed.) Elsevier, 3-22.

(Gero, 1990) Gero, J.S. Design Prototypes: A Knowledge Representation Schema for Design. AI Magazine, Winter 1990, 26-36.

(Gero, 1994a) Gero, J.S. Towards a model of exploration in computer-aided design. En Formal Design Methods for CAD (B-18), J.S. Gero y E. Tyugu (Eds.) Elsevier Science B.V. (North-Holland), 315-336.

(Gero, 1994b) Gero, J.S. Closing Discussion: Formal Design Methods for Computer-Aided Design. En Formal Design Methods for CAD (B-18), J.S. Gero y E. Tyugu (Eds.) Elsevier Science B.V. (North-Holland), 353-359.

(Gero, 1998) Gero, J.S. Research Methods for Design Research with a particular emphasis on Artificial Intelligence. En Artificial Intelligence in Design'98. Workshop 8 Notes:Research Methods in AID Research. Tim Smithers (Workshop convenor), 34-35.

Page 305: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

295

(Gero y Damski, 1994) Gero, J.S. y Damski, J.C. Object emergence in 3D using a data driven approach. En Artificial Intelligence in Design, AID'94, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 419-435.

(Gero y Maher, 1997) Gero, J.S. y Maher, M.L. A framework for research in design computing. En ECCADE'97, B, Martens, H. Linzer y A. Voigt (Eds.) Osterreichischer Knst und Kulturverlag, Vienna (CD-ROM), Topic 1, Paper 8. Disponible a través del servidor Web del Key Centre of Design Computing (Sidney, Australia): http://www.arch.su.EDU.AU/∼ john/publications/1997/ecaade/index.html

(Goldstein y Papert, 1977) Goldstein, I. y Papert, S. Artificial Intelligence, language, and the study of knowledge. Cognitive Science, Vol. 1, 1 (January 1977): 84-123.

(Hart y otros, 1968) Hart, P. E., Nilsson, N. J. and Raphael, B.: 1968, A formal basis for the heuristic determination of minimum cost paths. IEEE Transactions on System Science and Cybernetics SSC-4, pp. 100-107.

(Hart y otros, 1972) Hart, P. E., Nilsson, N. J. and Raphael, B. (1972): Correction to 'A formal basis for the heuristic determination of minimum cost paths'. SIGART Newsletter 37, pp. 28-29.

(Henig, 1986) Henig, M.I. The shortest path problem with two objective functions. European Journal of Operational Research 25, (1986), pp. 281-291.

(Knight, 1998) Knight, T. Designing a shape grammar. Problems of predictability. En Artificial Intelligence in Design, AID'98, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 499-516.

(Lee, 1972) Lee, S.M. Goal Programming for Decision Analysis. Auerbach Publishers, Philadelphia.

(Linares y Gómez-Pérez, 1997) Linares, C y Gómez-Pérez. A. BHFFA*: Un nuevo algoritmo admisible de búsqueda bidireccional. En CAEPIA’97 Actas de la VII Conferencia de la Asociación Española para la Inteligencia Artificial. V. Botti (Ed.), pp. 705-714.

(Liu y Brown, 1994) Liu, J. y Brown, D.C. Generating Design Decomposition Knowledge for Parametric Design Problems. En Artificial Intelligence in Design, AID'94, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 661-678.

(Logan y otros 1992a) Logan, B, Corne, D y Smithers, T. The Edinburgh Designer System: An Architecture for Solving Ill Structured Problems, DAI Research Paper No. 595. Department of Artificial Intelligence. University of Edinburgh.

(Logan y otros 1992b) Logan, B, Corne, D y Smithers, T. Using Reasoning Maintenance Systems to Support Ill Structured Problem Solving, DAI Research Paper No. 596. Department of Artificial Intelligence. University of Edinburgh.

(Loui, 1983) Loui, R.P. Optimal paths in graphs with stochastic or multidimensional weights. Communications of the ACM, September 1983, Vol. 26, Num. 9.

(Mandow, 1997) Mandow, L. Algoritmos de Búsqueda Heurística para Satisfacción de Metas. Informe Técnico LCC-ITI 97/11. Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga. Noviembre, 1997.

(Mandow y Millán, 1997) Mandow, L. y Millán, E. Goal programming and heuristic search. En Advances in Multiple Objective and Goal Programming. Lecture Notes in Economics and Mathematical Systems 455, R. Caballero, F. Ruiz y R. E. Steuer (Eds.), Springer-Verlag, Berlin, pp. 48-56.

(Mandow y otros, 1997) Mandow, L., Pérez de la Cruz, J.L., Triguero, F. y Conejo, R. Diseño mediante satisfacción de metas. En CAEPIA’97 Actas de la VII Conferencia de la Asociación Española para la Inteligencia Artificial. V. Botti (Ed.), pp. 715-724.

(Mandow y otros, 1997b) Mandow, A., Mandow, L., Muñoz, V.F., García Cerezo, A. Planificación multi-objetivo de caminos para navegación autónoma mediante comportamientos. En CAEPIA’97 Actas de la VII Conferencia de la Asociación Española para la Inteligencia Artificial. V. Botti (Ed.), pp. 55-64.

Page 306: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

296

(Mandow y otros, 1998) Mandow, A., Mandow, L., Muñoz, V.F., García Cerezo, A. Multi-objective path planning for autonomous sensor-based navigation. En Preprints of the IFAC Workshop on Intelligent Components for Vehicles ICV’98. A. Ollero (Ed.), pp. 431-436.

Reimpreso en: Intelligent Components for Vehicles, (1998). A. Ollero (Ed.). Pergamon, pp. 337-381.

(Mandow y Pérez de la Cruz, 1998) Mandow, L. y Pérez de la Cruz, J.L. Frameworks, subproblems and validation in AID research methodology. En Workshop Notes for AID'98 Workshop on Research Methods in AID Research. T. Smithers (Workshop Convenor). Instituto Superior Técnico, Lisboa, Portugal.

(Marr, 1977) Marr, D. Artificial Intelligence –A Personal View. Artificial Intelligence, 9 (1977) 37-48.

Reimpreso en: Mind Design. Philosophy. Psychology. Artificial Intelligence, (1981). John Haugeland (Ed.) The MIT Press, pp.129-142.

Reimpreso en: The foundations of artificial intelligence. A sourcebook, (1990). Derek Partridge y Yorick Wilks, (Eds.). Cambridge University Press, pp. 97-107.

(Marr, 1982) Marr, D. Vision. A computational Investigaton into the Human Representation and Processing of Visual Information. W.H. Freeman and Company, New York.

Traducción al castellano (1985): La Visión. Alianza Editorial, S.A., Madrid.

(Martins, 1984) Martins, E. Q. V. On a multicriteria shortest path problem. European Journal of Operational Research 16 (1984) 236-245.

(MathWorks, 1995) The Student Edition of MATLAB® : version 4 : user’s guide. The MathWorks, Inc. : with tutorial by Duane Hanselman and Bruce Littlefield. Prentice-Hall Inc., Englewood Cliffs, New Jersey.

(Medjdoub y Yannou, 1998) Medjdoub, B. y Yannou, B.: Topological enumeration heuristics in constraint-based space layout planning. En Artificial Intelligence in Design'98, J.S. Gero y F. Sudweeks (Eds.), Kluwer Academic Publishers, pp. 271-290.

(Myers y Pohl, 1992) Myers, L. y Pohl, J. ICADS expert design advisor: an aid to reflective thinking. Knowledge-based Systems Vol. 5, No. 1 March 1992, 41-54.

(Navinchandra, 1990) Navinchandra, D. Innovative Design Systems: Where are we, and where do we go from here? Technical Report CMU-RI-TR-90-01. The Robotics Institute. Carnegie Mellon University. Pittsburgh, Pennsylvania 15213. 12 January 1990.

(Navinchandra, 1991) Navinchandra, D. Exploration and Innovation in Design. Towards a computational model. Springer-Verlag, New York.

(Newell, 1982) Newell, A. The Knowledge Level. Artificial Intelligence 18 (1982) 87-127.

(Newell, 1993) Newell, A. Reflections on the knowledge level. Artificial Intelligence 59 (1993) 31-38.

(Newell y Simon, 1976) Newell, A., y Simon, H.A. Computer Science as empirical enquiry: Symbols and search. Communications of the ACM, Vol. 19, 3 (March 1976): 113-126.

Reimpreso en Mind Design. Philosophy. Psychology. Artificial Intelligence.. Haugerland, J. (Ed.), The M.I.T. Press, Cambridge, Massachusetts (1981).

(Nilsson, 1980) Nilsson, N. Principles of Artificial Intelligence. Tioga Publishing Co.

Traducción al castellano (1987): Principios de Inteligencia Artificial. Ediciones Díaz de Santos, S.A., Madrid.

(Oxman y Gero, 1988) Oxman, R. y Gero, J.S. Designing by prototype refinement in architecture. En Artificial Intelligence in Engineering: Design, J.S. Gero (Ed.) Elsevier, 395-412.

Page 307: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

297

(Papadimitriou y Steiglitz, 1982) Papadimitriou, C.H. y Steiglitz, K. Combinatorial Optimization. Algorithms and Complexity. Prentice-Hall Inc., Englewood Cliffs, New Jersey.

(Pearl, 1984) Pearl, J. Heuristics. Intelligent search strategies for computer problem solving. Addison-Wesley Publishing Company, Reading, Massachusetts.

(Pérez de la Cruz y otros, 1995) Pérez de la Cruz, J.L., Conejo-Muñoz, R., Morales-Bueno, R., Puy-Huarte, J. Highway design by constraint specification. Artificial Intelligence in Engineering 9, pp. 127-139.

(Pohl, 1970) Pohl, I. First results on the effect of error in heuristic search. En Machine Intelligence 5, B. Meltzer y D. Michie (Eds.), New York: American Elsevier, pp. 219-236.

(Poon y Maher, 1996) Poon, J.. y Maher, M.L. Emergent behaviour in co-evolutionary design. En Artificial Intelligence in Design, AID'96, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 703-722.

(Romero, 1991) Romero, C. Handbook of critical issues in goal programming. Pergamon Press, Oxford.

(Romero, 1993) Romero, C. Teoría de la decisión multicriterio. Alianza Editorial, Madrid.

(Rosenman, 1996) Rosenman, M.A.: The generation of form using an evolutionary approach. En Artificial Intelligence in Design'96, J.S. Gero y F. Sudweeks (Eds.), Kluwer Academic Publishers, pp. 643-662.

(Schnier y Gero, 1996) Schnier, T. y Gero, J.S. Learning genetic representations as alternative to hand-coded shape grammars. En Artificial Intelligence in Design, AID'96, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 39-57.

(Schön, 1983) Schön, D.A. The Reflective Practitioner. How professionals Think in Action. Basic Books.

(Schön, 1987) Schön, D.A. Educating the Reflective Practitioner. Jossey-Bass Publishers, San Francisco.

Traducción al castellano (1992): La Formación de Profesionales Reflexivos. Hacia un nuevo diseño de la enseñanza y el aprendizaje en las profesiones. Ediciones Paidós, Barcelona. Ministerio de Educación y Ciencia.

(Schön, 1992) Schön, D.A. Designing as Reflective Conversation with the Materials of a Design Situation. Knowledge-Based Systems Vol. 5, No. 1, March 1992.

(Simon, 1969) Simon. H.A. The Sciences of the Artificial. The M.I.T. Press, Cambridge, Massachusetts.

(Simon, 1973) Simon, H.A. The Structure of Ill Structured Problems. Artificial Intelligence 4(1973), 181-201.

(Simon, 1987) Simon, H.A. Two heads are better than one: The collaboration between AI and OR. Interfaces 17:4 8-15.

(Smithers, 1992) Smithers, T. Design as Exploration: puzzle-making and puzzle-solving. En Workshop Notes for AID'92 Workshop on Exploration-based models of design and Search-based models of design, CMU, Pittsburgh.

(Smithers, 1994a) Smithers, T. Exploration in Design: Discussion. En Formal Design Methods for CAD (B-18), J.S. Gero y E. Tyugu (Eds.) Elsevier Science B.V. (North-Holland), 337-350.

(Smithers, 1994b) Smithers, T. Workshop Notes for AID'94 Workshop on The Nature and Role of Theory in AI in Design Research. T. Smithers (Workshop convenor).

(Smithers, 1996) Smithers, T. On Knowledge Level Theories of Design Process. En Artificial Intelligence in Design, AID'96, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 561-579.

Page 308: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

298

(Smithers, 1998) Smithers, T. Towards a Knowledge Level Theory of Design Process. En Artificial Intelligence in Design, AID'98, J.S. Gero y F. Sudweeks (Eds.) Kluwer Academic Publishers, 3-21.

(Smithers y Troxell, 1990) Smithers, T. y Troxell, W. Design is intelligent behaviour, but what's the formalism?. Artificial Intelligence in Engineering, Design and Manufacturing (AI EDAM) (1990) 4(2), 89-98.

(Smithers y otros, 1989) Smithers, T., Conkie, A., Doheny, J., Logan, B., Millington, K. y Tang, M. X. Design as intelligent behaviour: an AI in Design research programme. DAI Research Paper nº 426., November, 1989. Department of Artificial Intelligence. University of Edinburgh.

(Smithers y otros, 1994) Smithers, T., Corne, D y Ross, P. On computing exploration and solving design problems. En Formal Design Methods for CAD (B-18), J.S. Gero y E. Tyugu (Eds.) Elsevier Science B.V. (North-Holland), 293-313.

(Steele, 1990) Steele, G.L. Common LISP. The Language. 2nd ed. Digital Press/Prentice Hall.

(Stefik, 1995) Stefik, M. Introduction to knowledge systems. Morgan Kaufmann.

(Stewart y White, 1991) Stewart B.S. y White III, C. C. Multiobjective A*. Journal of the Association for Computing Machinery, Vol. 38, No. 4, October 1991, pp. 775-814.

(Stiny y Gips, 1972) Stiny, G. y Gips, J. Shape grammars and the generative specification of painting and sculpture. Information Processing, 71, pp. 211-220.

(Sykes y White, 1991) Sykes, E. A. y White III, C. C. Multiobjective Intelligent Computer-Aided Design. IEEE Transactions on Systems, Man and Cybernetics 21(6) 1498-1511.

(TII, 1989) Texas Instruments Incorporated. CLX, Common LISP X interface. CLX Programmer's Reference.

(Tung y Chew, 1992) Tung, C.T., y Chew, K.L. A multicriteria Pareto-optimal path algorithm. European Journal of Operational Research 62 (1992) 203-209.

(Van de Velde, 1994) Van de Velde, W. An overview of CommonKADS. En CommonKADS library for expertise modelling. Reusable problem solving components, J. Breuker y W. Van de Velde (Eds.) IOS Press, Amsterdam. pp. 9-30.

(Weizenbaum, 1976) Weizenbaum, J. Computer power and human reason. W.H. Freeman and Company, San Francisco.

Traducción al castellano: La frontera entre el ordenador y la mente. Ediciones Pirámide, S.A., Madrid (1978).

(White y otros, 1992) White III, C. C., Stewart, B.S. y Carraway, R. Multiobjective, preference-based search in acyclic OR-graphs. European Jounal of Operational Research 56, pp. 257-363.

(Winograd, 1990) Winograd, T. Thinkinkg Machines: Can there be? Are we? En The foundations of artificial intelligence. A sourcebook. Derek Partridge y Yorick Wilks, (Eds.). Cambridge University Press, pp. 167-189.

(Winston, 1994) Winston, W. L., Operations Research: Applications and Algorithms. Duxbury Press.

Traducción al castellano (1994): Investigación de Operaciones: Aplicaciones y Algoritmos.

(Yoon, 1992) Yoon, K. B. A constraint model of space planning. Computational Mechanics Publications, Southampton.

(Yu, 1985) Yu, P. Multiple-Criteria Decision Making. Plenum Press, New York.

(Yu, 1989) Yu, P. Multiple-Criteria Decision Making: Five Basic Concepts. En Optimization (Vol. 1). G. L. Nemhauser, A.H.G. Rinnooy Kan, y M.J. Todd (Eds.). North-Holland, pp. 663-669.

Page 309: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

299

Page 310: Búsqueda Heurística Multicriterio para Inteligencia ...Departamento de Lenguajes y Ciencias de la Computación UNIVERSIDAD DE MÁLAGA Búsqueda Heurística Multicriterio para Inteligencia

300

No esperes hoy la tormenta de ayer,

no duran siempre las penas de este infierno,

y aunque el azul del cielo no es eterno,

hasta mañana no vuelve a llover.

Santiago y Luis Auserón