Jos T. Palma Mndez y Roque Marn Morales
Inteligencia Artificial Tcnicas, mtodos y aplicaciones
INTELIGENCIA ARTIFICIALMtodos, tcnicas y aplicaciones
INTELIGENCIA ARTIFICIALMtodos, tcnicas y aplicaciones
COORDINADORES:
JOS TOMS PALMA MNDEZ
ROQUE MARN MORALES
Universidad de Murcia
MADRID * BOGOT * BUENOS AIRES * CARACAS * GUATEMALA * LISBOA * MXICO *
NUEVA YORK * PANAM * SAN JUAN * SANTIAGO * SAO PAULO
AUCKLAND * HAMBURGO * LONDRES * MILN * MONTREAL * NUEVA DELHI * PARS
SAN FRANCISCO * SIDNEY * SINGAPUR * ST. LOUIS * TOKIO * TORONTO
Inteligencia Articial: Mtodos, tcnicas y aplicaciones
No est permitida la reproduccin total o parcial de este libro, ni su tratamiento infor-mtico, ni la transmisin de ninguna forma o por cualquier medio, ya sea electrnico,mecnico, por fotocopia, por registro u otros mtodos, sin el permiso previo y porescrito de los titulares del Copyright.
DERECHOS RESERVADOS c2008, respecto a la primera edicin en espaol, porMcGRAW-HILL/INTERAMERICANA DE ESPAA, S. A. U.
Edicio Valrealty, 1. a PlantaBasauri, 1728023 Aravaca (Madrid)
ISBN: 978-84-481-5618-3Depsito legal: M.
Editor: Jos Luis Garca JuradoTcnico editorial: Blanca Pecharromn NarroCompuesto en: DIIC. Universidad de MurciaImpreso en:
IMPRESO EN ESPAA PRINTED IN SPAIN
Lista de Autores
Carlos Alonso GonzlezGrupo de Sistemas InteligentesDepartamento de InformticaUniversidad de Valladolid
Federico Barber SanchsDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Alberto Jos Bugarn DizGrupo de Sistemas InteligentesDepartamento de Electrnica y ComputacinUniversidad de Santiago de Compostela
Jos Joaqun Caadas MartnezGrupo de Ingeniera de Datos, del Conocimiento y del SoftwareDepartamento de Lenguajes y ComputacinUniversidad de Almera
scar CorchoGrupo de Ingeniera OntolgicaDepartamento de Inteligencia ArticialUniversidad Politcnica de Madrid
Miguel Delgado Calvo-FloresGrupo de Razonamiento Aproximado e Inteligencia ArticialDepartamento de Ciencias de la Computacin e IAUniversidad de Granada
Paulo Flix LamasGrupo de Sistemas InteligentesDepartamento de Electrnica y ComputacinUniversidad de Sanitago de Compostela
Mariano Fernndez LpezEscuela Politcnica SuperiorIngeniera del Software y del ConocimientoUniversidad San Pablo CEU Madrid
Csar Ferri RamrezGrupo de Extensiones de la Programacin LgicaDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
scar Fontela RomeroLaboratorio de Investigacin y Desarrollo en Inteligencia ArticialDepartamento de ComputacinUniversidad de A Corua
Antonio Garrido TejeroGrupo de Razonamiento en Planicacin y SchedulingDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Asuncin Gmez PrezGrupo de Ingeniera OntolgicaDepartamento de Inteligencia ArticialUniversidad Politcnica de Madrid
Bertha Guijarro BerdiasLaboratorio de Investigacin y Desarrollo en Inteligencia ArticialDepartamento de ComputacinUniversidad de A Corua
Luis Daniel Hernndez MolineroGrupo de Sistemas InteligentesDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Jos Hernndez OralloGrupo de Extensiones de la Programacin LgicaDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Mario Hernndez TejeraGrupo de Inteligencia Articial y SistemasDepartamento de Informtica y SistemasUniversidad de Las Palmas de Gran Canaria.
Fernando Jimnez BarrionuevoGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Jos Manuel Jurez HerreroGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Javier Lorenzo NavarroGrupo de Inteligencia Articial y SistemasDepartamento de Informtica y SistemasUniversidad de Las Palmas de Gran Canaria
vi
Adolfo Lozano TelloGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de Sistemas Informticos y TelemticosUniversidad de Extremadura
Roque Marn MoralesGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Juan Mndez RodrguezGrupo de Inteligencia Articial y SistemasDepartamento de Informtica y SistemasUniversidad de Las Palmas de Gran Canaria.
Jos Mira MiraDepartamento de Inteligencia ArticialETSI InformticaUNED
Vicente Moret BonilloLaboratorio de Investigacin y Desarrollo en Inteligencia ArticialDepartamento de ComputacinUniversidad de A Corua
Eduardo Mosqueira ReyLaboratorio de Investigacin y Desarrollo en Inteligencia ArticialDepartamento de ComputacinUniversidad de A Corua
Eva Onaindia RivaherreraGrupo de Razonamiento en Planicacin y SchedulingDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Jos Toms Palma MndezGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Juan Pavn MestrasGrupo de Agentes Software: Ingeniera y AplicaionesDepartamento de Ingeniera del Software e Inteligencia ArticialUniversidad Complutense de Madrid
Mara Jos Ramrez QuintanaGrupo de Extensiones de la Programacin LgicaDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Mara Camino Rodrguez VelaCentro de Inteligencia ArticialDepartamento de InformticaUniversidad de Oviedo
vii
Miguel ngel Salido GregorioGrupo de Tecnologa Informtica e Inteligencia ArticialDepartamento de Sistemas Informticos y ComputacinUniversidad Politcnica de Valencia
Noelia Snchez MerooLaboratorio de Investigacin y Desarrollo en Inteligencia ArticialDepartamento de ComputacinUniversidad de A Corua
Guido SciaviccoGrupo de Inteligencia Articial e Ingeniera del ConocimientoDepartamento de Ingeniera de la Informacin y las ComunicacionesUniversidad de Murcia
Mara del Carmen Surez de Figueroa BaonzaGrupo de Ingeniera OntolgicaDepartamento de Inteligencia ArticialUniversidad Politcnica de Madrid
Mara Jess Taboada IglesiasGrupo de Ingeniera del Conocimiento aplicada a la MedicinaDepartamento de Electrnica y ComputacinUniversidad de Santiago de Compostela
Ramiro Valera AriasCentro de Inteligencia ArticialDepartamento de InformticaUniversidad de Oviedo
Amparo Vila MirandaGrupo de Razonamiento Aproximado e Inteligencia ArticialDepartamento de Ciencias de la Computacin e IAUniversidad de Granada
viii
ndice general
I INTRODUCCION 1
1 Aspectos conceptuales de la IA y la IC 3Jos Mira Mira1.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 La IA como Ciencia y como IC . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 IA como Ciencia . . . . . . . . . . . . . . . . . . . . . . . . . 71.2.2 IA como Ingeniera . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Perspectiva histrica: fundamentos y metodologa . . . . . . . . . . . 101.4 Paradigmas actuales en IA . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.1 El paradigma simblico . . . . . . . . . . . . . . . . . . . . . 141.4.2 El paradigma situado . . . . . . . . . . . . . . . . . . . . . . . 161.4.3 El paradigma conexionista . . . . . . . . . . . . . . . . . . . . 181.4.4 El paradigma hbrido . . . . . . . . . . . . . . . . . . . . . . . 20
1.5 El conocer humano y el conocer de las mquinas . . . . . . . . . . . . 231.6 Algunas sugerencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.7 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
II REPRESENTACION DE CONOCIMIENTO E INFERENCIA 31
2 Logica y representacion del conocimento 33Guido Sciavicco2.1 Introduccin: Por qu la Lgica? . . . . . . . . . . . . . . . . . . . . 332.2 Lgica proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.2.1 Sintaxis y semntica . . . . . . . . . . . . . . . . . . . . . . . 362.2.2 Poder expresivo y lmites de la Lgica Proposicional . . . . . 402.2.3 Mtodos deductivos semnticos y coste computacional . . . . 41
2.3 Lgica de primer orden . . . . . . . . . . . . . . . . . . . . . . . . . . 462.3.1 Sintaxis y semntica . . . . . . . . . . . . . . . . . . . . . . . 46
ndice general
2.3.2 Poder expresivo y lmites de la lgica de primer orden . . . . 492.3.3 Mtodos deductivos y coste computacional . . . . . . . . . . . 492.3.4 Lgicas de orden superior al primero . . . . . . . . . . . . . . 542.3.5 Fragmentos de LPO . . . . . . . . . . . . . . . . . . . . . . . 56
2.4 Extensiones de las lgicas clsicas . . . . . . . . . . . . . . . . . . . . 572.4.1 Por qu extender las lgicas clsicas? . . . . . . . . . . . . . 572.4.2 Lgicas no monotnicas, razonamiento del sentido comn y
otras consideraciones . . . . . . . . . . . . . . . . . . . . . . . 572.4.3 Lgicas modales y mundos posibles . . . . . . . . . . . . . . . 592.4.4 Mtodos deductivos y coste computacional de la Lgica Modal 61
2.5 Aplicaciones: el ejemplo de las lgicas temporales . . . . . . . . . . . 642.5.1 Tipos de lgicas temporales . . . . . . . . . . . . . . . . . . . 642.5.2 Lgicas temporales basadas en puntos . . . . . . . . . . . . . 642.5.3 Lgicas temporales basadas en intervalos . . . . . . . . . . . . 68
2.6 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3 Sistemas basados en reglas 83Mara Jess Taboada Iglesias y Asuncin Gmez Prez3.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833.2 Componentes bsicos de los SBR . . . . . . . . . . . . . . . . . . . . . 84
3.2.1 Base de Hechos . . . . . . . . . . . . . . . . . . . . . . . . . . 843.2.2 Base de Conocimiento . . . . . . . . . . . . . . . . . . . . . . 853.2.3 Motor de inferencias . . . . . . . . . . . . . . . . . . . . . . . 87
3.3 Inferencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883.3.1 Encadenamiento hacia delante . . . . . . . . . . . . . . . . . . 893.3.2 Encadenamiento hacia atrs . . . . . . . . . . . . . . . . . . . 973.3.3 Reversibilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
3.4 Tcnicas de equiparacin . . . . . . . . . . . . . . . . . . . . . . . . . 1043.4.1 Equiparacin con variables . . . . . . . . . . . . . . . . . . . . 1043.4.2 El algoritmo RETE . . . . . . . . . . . . . . . . . . . . . . . . 109
3.5 Tcnicas de resolucin de conictos . . . . . . . . . . . . . . . . . . . 1113.6 Ventajas e inconvenientes . . . . . . . . . . . . . . . . . . . . . . . . . 1163.7 Dominios de aplicacin . . . . . . . . . . . . . . . . . . . . . . . . . . 1183.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193.9 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1203.10 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4 Redes semanticas y marcos 131Mara del Carmen Surez de Figueroa Baonza y Asuncin Gmez Prez4.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1314.2 Redes semnticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
x
ndice general
4.2.1 Representacin de conocimiento . . . . . . . . . . . . . . . . . 1334.2.2 Representacin de predicados no binarios . . . . . . . . . . . . 1364.2.3 Representacin de acciones . . . . . . . . . . . . . . . . . . . . 1364.2.4 Representacin de conocimiento disjunto . . . . . . . . . . . . 138
4.3 Inferencia de conocimiento en redes semnticas . . . . . . . . . . . . . 1394.3.1 Equiparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . 1394.3.2 Herencia de propiedades . . . . . . . . . . . . . . . . . . . . . 140
4.4 Marcos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1434.4.1 Representacin de conocimiento . . . . . . . . . . . . . . . . . 1434.4.2 Criterios de diseo . . . . . . . . . . . . . . . . . . . . . . . . 155
4.5 Inferencia de conocimiento en SBM . . . . . . . . . . . . . . . . . . . 1574.5.1 Equiparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . 1574.5.2 Herencia de propiedades . . . . . . . . . . . . . . . . . . . . . 1594.5.3 Valores activos . . . . . . . . . . . . . . . . . . . . . . . . . . 161
4.6 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1624.7 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1634.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
5 Ontologas 171Asuncin Gmez Prez, Mariano Fernndez Lpez y scar Corcho5.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1715.2 Ontologas: denicin y componentes . . . . . . . . . . . . . . . . . . 1725.3 Una metodologa para el desarrollo de ontologas: METHONTOLOGY 174
5.3.1 Proceso de desarrollo de ontologas y su ciclo de vida . . . . . 1745.3.2 Conceptualizacin de una ontologa de entidades legales . . . 178
5.4 Cmo construir una ontologa legal con WebODE . . . . . . . . . . . 1885.5 Otros mtodos y herramientas para desarrollar ontologas . . . . . . . 190
5.5.1 Metodologas y mtodos . . . . . . . . . . . . . . . . . . . . . 1905.5.2 Herramientas . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
5.6 Lenguajes de implementacin de ontologas . . . . . . . . . . . . . . . 1945.7 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1965.8 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1975.9 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6 Sistemas basados en modelos probabilsticos 207Luis Daniel Hernndez Molinero6.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2076.2 Conceptos bsicos de la teora de la probabilidad . . . . . . . . . . . . 209
6.2.1 Fundamentos del clculo de probabilidades . . . . . . . . . . . 2096.2.2 Interpretaciones de la probabilidad . . . . . . . . . . . . . . . 2116.2.3 Variables y probabilidades . . . . . . . . . . . . . . . . . . . . 2146.2.4 Probabilidad condicionada e independencia . . . . . . . . . . 2206.2.5 Regla de Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . 222
xi
ndice general
6.3 Una introduccin a las redes bayesianas . . . . . . . . . . . . . . . . . 2256.3.1 Redes causales y d-separacin . . . . . . . . . . . . . . . . . . 2256.3.2 Redes bayesianas . . . . . . . . . . . . . . . . . . . . . . . . . 228
6.4 Razonamiento con redes bayesianas . . . . . . . . . . . . . . . . . . . 2346.4.1 Inferencia probabilstica . . . . . . . . . . . . . . . . . . . . . 2366.4.2 Interpretacin de evidencias . . . . . . . . . . . . . . . . . . . 249
6.5 Referencias bibliogrcas y software . . . . . . . . . . . . . . . . . . . 2536.6 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
7 Conjuntos borrosos 263Paulo Flix Lamas y Alberto Jos Bugarn Diz7.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2637.2 Conjuntos borrosos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2647.3 Semntica de los conjuntos borrosos . . . . . . . . . . . . . . . . . . . 2667.4 Teoras de conjuntos borrosos . . . . . . . . . . . . . . . . . . . . . . . 2687.5 Variable lingstica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2727.6 Principio de extensin . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
7.6.1 Aritmtica borrosa . . . . . . . . . . . . . . . . . . . . . . . . 2757.7 Relaciones borrosas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7.7.1 Relaciones de similitud . . . . . . . . . . . . . . . . . . . . . . 2787.7.2 Relaciones de comparacin . . . . . . . . . . . . . . . . . . . . 2797.7.3 Proyeccin. Extensin cilndrica . . . . . . . . . . . . . . . . . 2807.7.4 Composicin de relaciones . . . . . . . . . . . . . . . . . . . . 281
7.8 El condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2847.9 Cualicacin lingstica . . . . . . . . . . . . . . . . . . . . . . . . . . 2877.10 Razonamiento borroso . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
7.10.1 Condicionales con antecedente mltiple . . . . . . . . . . . . . 2927.11 Cuanticacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2937.12 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 2987.13 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2987.14 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2997.15 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
III TECNICAS 307
8 Introduccion a las tecnicas de busqueda 309Mara Camino Rodrguez Vela y Ramiro Varela Arias8.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3098.2 Algunos ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
8.2.1 Generacin de planes de actuacin de robots . . . . . . . . . . 3108.2.2 Problemas de rutas ptimas en grafos . . . . . . . . . . . . . 3128.2.3 Juegos con contrincante . . . . . . . . . . . . . . . . . . . . . 313
xii
ndice general
8.3 Formulacin de problemas de bsqueda . . . . . . . . . . . . . . . . . 3148.4 Mtodos de bsqueda sin informacin . . . . . . . . . . . . . . . . . . 315
8.4.1 Recorrido de rboles . . . . . . . . . . . . . . . . . . . . . . . 3168.4.2 Recorrido de grafos . . . . . . . . . . . . . . . . . . . . . . . . 321
8.5 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3268.6 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3278.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
9 Tecnicas basadas en busquedas heursticas 339Mara Camino Rodrguez Vela y Ramiro Varela Arias9.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3399.2 Bsqueda primero el mejor . . . . . . . . . . . . . . . . . . . . . . . . 3439.3 El algoritmo A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
9.3.1 Descripcin del algoritmo A* . . . . . . . . . . . . . . . . . . 3449.3.2 Propiedades formales . . . . . . . . . . . . . . . . . . . . . . . 3459.3.3 Diseo de heursticos simples . . . . . . . . . . . . . . . . . . 3539.3.4 Relajacin de las condiciones de optimalidad . . . . . . . . . . 3579.3.5 Diseo sistemtico de heursticos . . . . . . . . . . . . . . . . 360
9.4 Bsqueda con memoria limitada . . . . . . . . . . . . . . . . . . . . . 3629.4.1 Algoritmo IDA* . . . . . . . . . . . . . . . . . . . . . . . . . . 3629.4.2 Algoritmo SMA* . . . . . . . . . . . . . . . . . . . . . . . . . 364
9.5 Algoritmos voraces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3669.6 Algoritmos de ramicacin y poda . . . . . . . . . . . . . . . . . . . . 3669.7 Algoritmos de mejora iterativa o bsqueda local . . . . . . . . . . . . 369
9.7.1 Algoritmos de escalada o mximo gradiente . . . . . . . . . . 3719.7.2 Temple simulado . . . . . . . . . . . . . . . . . . . . . . . . . 3729.7.3 Bsqueda tab . . . . . . . . . . . . . . . . . . . . . . . . . . 373
9.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3749.9 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3759.10 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
10 Problemas de satisfaccion de restricciones (CSP) 385Federico Baber Sanchs y Miguel Angel Salido Gregorio10.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38510.2 Deniciones y conceptos bsicos . . . . . . . . . . . . . . . . . . . . . 386
10.2.1 Denicin de un problema de satisfaccin de restricciones . . 38710.2.2 Denicin y tipologa de las restricciones . . . . . . . . . . . . 388
10.3 Ejemplos de CSP y su modelizacin . . . . . . . . . . . . . . . . . . . 38910.3.1 Coloracin del mapa . . . . . . . . . . . . . . . . . . . . . . . 38910.3.2 Criptografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39010.3.3 El problema de las N -reinas . . . . . . . . . . . . . . . . . . . 391
xiii
ndice general
10.4 Tcnicas CSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39210.4.1 Mtodos de bsqueda . . . . . . . . . . . . . . . . . . . . . . . 39210.4.2 Tcnicas de inferencia . . . . . . . . . . . . . . . . . . . . . . 39410.4.3 Tcnicas hbridas . . . . . . . . . . . . . . . . . . . . . . . . . 402
10.5 Heursticas de bsqueda . . . . . . . . . . . . . . . . . . . . . . . . . . 40710.5.1 Heursticas de ordenacin de variables . . . . . . . . . . . . . 40810.5.2 Ordenacin de valores. Tipos . . . . . . . . . . . . . . . . . . 412
10.6 Extensiones de CSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41310.6.1 CSP no binarios . . . . . . . . . . . . . . . . . . . . . . . . . . 41410.6.2 CSP distribuidos (DisCSP) . . . . . . . . . . . . . . . . . . . 41610.6.3 CSP temporales y CSP dinmicos . . . . . . . . . . . . . . . . 41810.6.4 Otras extensiones . . . . . . . . . . . . . . . . . . . . . . . . . 421
10.7 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 42310.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42310.9 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42410.10 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
11 Computacion Evolutiva 433Fernando Jimnez Barrionuevo11.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43311.2 Un algoritmo gentico simple . . . . . . . . . . . . . . . . . . . . . . . 436
11.2.1 Representacin . . . . . . . . . . . . . . . . . . . . . . . . . . 43611.2.2 Obtencin de la poblacin inicial . . . . . . . . . . . . . . . . 43711.2.3 Funcin de evaluacin . . . . . . . . . . . . . . . . . . . . . . 43711.2.4 Seleccin, muestreo, operadores genticos y sustitucin gene-
racional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43811.2.5 Parmetros de entrada . . . . . . . . . . . . . . . . . . . . . . 44011.2.6 Ejemplo: Optimizacin de una funcin simple . . . . . . . . . 441
11.3 Fundamentos de los algoritmos genticos . . . . . . . . . . . . . . . . 44311.4 Diseo de algoritmos evolutivos . . . . . . . . . . . . . . . . . . . . . 445
11.4.1 Representacin . . . . . . . . . . . . . . . . . . . . . . . . . . 44611.4.2 Esquemas de seleccin, muestreo y sustitucin generacional . 44611.4.3 Operadores de variacin . . . . . . . . . . . . . . . . . . . . . 44811.4.4 Manejo de restricciones . . . . . . . . . . . . . . . . . . . . . . 44911.4.5 Optimizacin multiobjetivo . . . . . . . . . . . . . . . . . . . 45111.4.6 Evaluacin y validacin de algoritmos evolutivos . . . . . . . 456
11.5 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 45711.6 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45811.7 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45811.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
xiv
ndice general
IV TAREAS 471
12 Diagnosis 473Carlos Alonso Gonzlez12.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
12.1.1 Algunas deniciones . . . . . . . . . . . . . . . . . . . . . . . 47412.2 Elementos bsicos de un sistema de diagnosis . . . . . . . . . . . . . . 477
12.2.1 Espacio de bsqueda . . . . . . . . . . . . . . . . . . . . . . . 47712.2.2 Modelo del sistema . . . . . . . . . . . . . . . . . . . . . . . . 47812.2.3 Ejemplo de sistema a diagnosticar . . . . . . . . . . . . . . . . 47812.2.4 Operaciones o subtareas . . . . . . . . . . . . . . . . . . . . . 479
12.3 Diagnosis basada en rboles de fallos . . . . . . . . . . . . . . . . . . 48512.4 Diagnosis basada en modelos de clasicacin simblica . . . . . . . . 489
12.4.1 Clasicacin simple . . . . . . . . . . . . . . . . . . . . . . . . 48912.4.2 Clasicacin jerrquica . . . . . . . . . . . . . . . . . . . . . . 49712.4.3 Otros modelos de clasicacin simblica . . . . . . . . . . . . 50212.4.4 Implementacin de un modelo de clasicacin simblica . . . 50312.4.5 Un sistema de diagnosis clsico: MYCIN . . . . . . . . . . . . 505
12.5 Diagnosis basada en modelos: la aproximacin basada en consistencia 50812.5.1 Motivacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50812.5.2 Diagnosis basada en consistencia . . . . . . . . . . . . . . . . 51012.5.3 Modelo formal de la diagnosis basada en consistencia . . . . . 51312.5.4 Limitaciones de la diagnosis basada en consistencia . . . . . . 51812.5.5 Paradigma computacional: General Diagnostic Engine . . . . 519
12.6 Mtodos y modelos para la diagnosis . . . . . . . . . . . . . . . . . . 52312.6.1 Mtodos de clasicacin . . . . . . . . . . . . . . . . . . . . . 52412.6.2 Mtodos basados en casos . . . . . . . . . . . . . . . . . . . . 52512.6.3 Mtodos basados en modelos . . . . . . . . . . . . . . . . . . 52612.6.4 Origen de los modelos . . . . . . . . . . . . . . . . . . . . . . 526
12.7 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52812.8 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 52912.9 Ejercicios Propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
13 Planicacion 537Eva Onaindia de la Rivaherrera y Antonio Garrido Tejero13.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53713.2 Problema de planicacin . . . . . . . . . . . . . . . . . . . . . . . . . 53913.3 Lenguaje de planicacin PDDL . . . . . . . . . . . . . . . . . . . . . 54113.4 Planicacin en un espacio de estados . . . . . . . . . . . . . . . . . . 543
13.4.1 Bsqueda hacia delante . . . . . . . . . . . . . . . . . . . . . 54313.4.2 Bsqueda hacia atrs . . . . . . . . . . . . . . . . . . . . . . . 545
13.5 Planicacin de orden parcial . . . . . . . . . . . . . . . . . . . . . . . 54813.5.1 Estructura de un plan de orden parcial . . . . . . . . . . . . . 54913.5.2 Bsqueda en un espacio de planes para POP . . . . . . . . . . 551
xv
ndice general
13.5.3 Heursticas para planicacin de orden parcial . . . . . . . . . 55513.6 Planicacin basada en grafos de planicacin . . . . . . . . . . . . . 557
13.6.1 Grafos de planicacin . . . . . . . . . . . . . . . . . . . . . . 55713.6.2 Extraccin de planes: Graphplan . . . . . . . . . . . . . . . . . 56013.6.3 Heursticas basadas en grafos de planicacin . . . . . . . . . 564
13.7 Planicacin basada en satisfacibilidad . . . . . . . . . . . . . . . . . 56513.8 Planicacin para el mundo real . . . . . . . . . . . . . . . . . . . . . 566
13.8.1 Planicacin numrica: tiempo + recursos . . . . . . . . . . . 56813.8.2 Planicacin jerrquica . . . . . . . . . . . . . . . . . . . . . . 57113.8.3 Planicacin con incertidumbre . . . . . . . . . . . . . . . . . 572
13.9 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 57313.10 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57513.11 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
14 Control 589Jos M. Jurez Herrero, Jos J. Caadas Martnez y Roque Marn Morales14.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58914.2 Conceptos fundamentales . . . . . . . . . . . . . . . . . . . . . . . . . 590
14.2.1 Problema de control . . . . . . . . . . . . . . . . . . . . . . . 59014.2.2 Componentes fundamentales de un sistema de control . . . . 59114.2.3 Tipos de sistemas de control . . . . . . . . . . . . . . . . . . . 59114.2.4 Soluciones convencionales . . . . . . . . . . . . . . . . . . . . 593
14.3 Mtodos genricos para control . . . . . . . . . . . . . . . . . . . . . . 59714.3.1 Control convencional frente a control inteligente . . . . . . . . 59714.3.2 Tarea genrica para el Control . . . . . . . . . . . . . . . . . . 599
14.4 Control borroso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60114.4.1 Estructura bsica . . . . . . . . . . . . . . . . . . . . . . . . . 60214.4.2 Variables LHS / RHS . . . . . . . . . . . . . . . . . . . . . . . 60514.4.3 Obtencin de entradas borrosas: fuzzicacin . . . . . . . . . 60614.4.4 Base de Reglas Borrosas . . . . . . . . . . . . . . . . . . . . . 60614.4.5 Mecanismo de inferencias . . . . . . . . . . . . . . . . . . . . 60714.4.6 Obtencin de salidas precisas: defuzzicacin . . . . . . . . . 612
14.5 Arquitecturas y herramientas . . . . . . . . . . . . . . . . . . . . . . . 61414.5.1 Herramientas para control borroso . . . . . . . . . . . . . . . 61414.5.2 Ejemplo de desarrollo de un controlador borroso . . . . . . . . 616
14.6 Arquitecturas de pizarra . . . . . . . . . . . . . . . . . . . . . . . . . 62414.6.1 Metfora de la pizarra . . . . . . . . . . . . . . . . . . . . . . 62414.6.2 Componentes bsicos de un sistema de pizarra . . . . . . . . . 62514.6.3 Ciclo de control . . . . . . . . . . . . . . . . . . . . . . . . . . 62614.6.4 Caractersticas de las arquitecturas de pizarra . . . . . . . . . 630
14.7 Sistemas en tiempo real basados en conocimiento . . . . . . . . . . . . 63214.7.1 Sistemas en tiempo real . . . . . . . . . . . . . . . . . . . . . 63214.7.2 Concepto de sistema en tiempo real basado en conocimiento . 63314.7.3 Caractersticas de los STRBC . . . . . . . . . . . . . . . . . . 633
xvi
ndice general
14.7.4 Eventos asncronos . . . . . . . . . . . . . . . . . . . . . . . . 63414.7.5 Razonamiento no montono . . . . . . . . . . . . . . . . . . . 63414.7.6 Modo de operacin continuado . . . . . . . . . . . . . . . . . 63414.7.7 Datos inciertos o imprecisos . . . . . . . . . . . . . . . . . . . 63514.7.8 Razonamiento temporal . . . . . . . . . . . . . . . . . . . . . 63514.7.9 Tiempo de respuesta garantizado . . . . . . . . . . . . . . . . 63614.7.10 Foco de atencin . . . . . . . . . . . . . . . . . . . . . . . . . 63714.7.11 Herramientas para Sistemas Expertos en Tiempo Real . . . . 637
14.8 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 63914.9 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64014.10 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
V APRENDIZAJE Y MINERIA DE DATOS 647
15 Redes neuronales 649Bertha Guijarro Berdias, scar Fontela Romero y Noelia Snchez Meroo15.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
15.1.1 Qu es una red de neuronas? . . . . . . . . . . . . . . . . . . 64915.1.2 Tipos bsicos de problemas . . . . . . . . . . . . . . . . . . . 65115.1.3 Proceso de entrenamiento o aprendizaje . . . . . . . . . . . . 652
15.2 Mtodos de aprendizaje supervisado . . . . . . . . . . . . . . . . . . . 65415.2.1 Redes de neuronas de una capa: el Perceptrn . . . . . . . . . 65415.2.2 El perceptrn multicapa . . . . . . . . . . . . . . . . . . . . . 65715.2.3 Redes de base radial . . . . . . . . . . . . . . . . . . . . . . . 664
15.3 Mtodos de aprendizaje no supervisados . . . . . . . . . . . . . . . . . 67215.3.1 Mapas autoorganizativos . . . . . . . . . . . . . . . . . . . . . 673
15.4 Mquina de Vectores Soporte . . . . . . . . . . . . . . . . . . . . . . . 67415.4.1 Caso linealmente separable . . . . . . . . . . . . . . . . . . . . 67515.4.2 Caso no linealmente separable . . . . . . . . . . . . . . . . . . 67915.4.3 Mquinas de vectores soporte no lineales . . . . . . . . . . . . 68115.4.4 Mquinas de Vectores Soporte Multiclase . . . . . . . . . . . 682
15.5 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68315.6 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
16 Tecnicas de agrupamiento 691Amparo Vila Miranda y Miguel Delgado Calvo-Flores16.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69116.2 Conceptos bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69216.3 Los datos de partida . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
16.3.1 La matriz de elementos . . . . . . . . . . . . . . . . . . . . . . 69616.3.2 ndices de proximidad: distancias y semejanzas . . . . . . . . 696
16.4 Tcnicas de agrupamiento jerrquico . . . . . . . . . . . . . . . . . . . 699
xvii
ndice general
16.4.1 Ideas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 69916.4.2 Algoritmos para el agrupamiento jerrquico . . . . . . . . . . 700
16.5 Tcnicas de agrupamiento particional . . . . . . . . . . . . . . . . . . 70316.5.1 Ideas iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . 70316.5.2 El mtodo de las k -medias . . . . . . . . . . . . . . . . . . . . 70416.5.3 DBSCAN: un mtodo basado en el anlisis de densidad . . . 707
16.6 Nuevos resultados y extensiones . . . . . . . . . . . . . . . . . . . . . 70916.6.1 Resultados recientes sobre agrupamiento jerrquico . . . . . . 70916.6.2 Extensiones a los mtodos particionales prototpicos: los m-
todos de k-medoides . . . . . . . . . . . . . . . . . . . . . . . 71116.7 Tcnicas de agrupamiento borroso . . . . . . . . . . . . . . . . . . . . 713
16.7.1 Agrupamientos borrosos particionales . . . . . . . . . . . . . . 71416.7.2 Agrupamientos jerrquicos y conjuntos borrosos . . . . . . . . 717
16.8 Herramientas software para el agrupamiento . . . . . . . . . . . . . . 71816.9 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 72016.10 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72116.11 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 721
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
17 Aprendizaje de arboles y reglas de decision 725Csar Ferri Ramrez y Mara Jos Ramrez Quintana17.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72517.2 Induccin de rboles de decisin . . . . . . . . . . . . . . . . . . . . . 72717.3 Aprendizaje de reglas por cobertura . . . . . . . . . . . . . . . . . . . 73217.4 Reestructuracin de reglas . . . . . . . . . . . . . . . . . . . . . . . . 73617.5 Otras aplicaciones de los rboles de decisin . . . . . . . . . . . . . . 73917.6 Extensiones de rboles y reglas de decisin . . . . . . . . . . . . . . . 741
17.6.1 Mtodos multiclasicadores . . . . . . . . . . . . . . . . . . . 74117.7 Sistemas y aplicabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . 74317.8 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 74617.9 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74717.10 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74817.11 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 755
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758
18 Tecnicas de extraccion de reglas 763Mara Jos Ramrez Quintana y Jos Hernndez Orallo18.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76318.2 Tcnicas de extraccin de reglas a partir de modelos de caja negra . . 76618.3 Tcnicas de extraccin de reglas sobre redes neuronales . . . . . . . . 770
18.3.1 Mtodos globales . . . . . . . . . . . . . . . . . . . . . . . . . 77218.3.2 Mtodos locales . . . . . . . . . . . . . . . . . . . . . . . . . . 776
18.4 Tcnicas de extraccin de reglas sobre otros paradigmas . . . . . . . . 77918.5 Tcnicas de extraccin de reglas borrosas . . . . . . . . . . . . . . . . 780
18.5.1 Tcnicas de extraccin directa (caja negra) . . . . . . . . . . 781
xviii
ndice general
18.5.2 Sistemas neuroborrosos (neuro-fuzzy) . . . . . . . . . . . . . . 78418.6 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 78618.7 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78618.8 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78818.9 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792
VI ASPECTOS METODOLOGICOS Y APLICACIONES 799
19 Ingeniera del Conocimiento 801Adolfo Lozano Tello19.1 Introduccin a la Ingeniera del Conocimiento . . . . . . . . . . . . . 80119.2 Adquisicin del conocimiento . . . . . . . . . . . . . . . . . . . . . . . 803
19.2.1 Tcnicas manuales de adquisicin del conocimiento . . . . . . 80419.2.2 Tcnicas semiautomticas de adquisicin del conocimiento . . 80619.2.3 Tcnicas automticas de adquisicin del conocimiento . . . . 80819.2.4 Adquisicin del conocimiento a partir de un grupo de expertos 809
19.3 Sistemas basados en conocimiento . . . . . . . . . . . . . . . . . . . . 81019.3.1 Estructura de los SBCs . . . . . . . . . . . . . . . . . . . . . . 81119.3.2 Propiedades de los SBCs . . . . . . . . . . . . . . . . . . . . . 812
19.4 Mtodos de desarrollo de sistemas basados en conocimiento . . . . . . 81319.4.1 La metodologa CommonKADS . . . . . . . . . . . . . . . . . 815
19.5 Construccin de SBC usando CK . . . . . . . . . . . . . . . . . . . . 81619.5.1 Modelado del contexto en CommonKADS . . . . . . . . . . . 81819.5.2 Modelado conceptual en CommonKADS . . . . . . . . . . . . 82919.5.3 Modelado artefactual en CommonKADS . . . . . . . . . . . . 845
19.6 Lecturas recomendadas . . . . . . . . . . . . . . . . . . . . . . . . . . 85119.7 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85119.8 Ejercicio propuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853
20 Sistemas multiagentes 857Juan Pavn Mestras20.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85720.2 Arquitecturas de agentes . . . . . . . . . . . . . . . . . . . . . . . . . 859
20.2.1 Agentes deliberativos . . . . . . . . . . . . . . . . . . . . . . . 86120.2.2 Agentes reactivos . . . . . . . . . . . . . . . . . . . . . . . . . 86420.2.3 Agentes hbridos . . . . . . . . . . . . . . . . . . . . . . . . . 866
20.3 Sociedades de agentes . . . . . . . . . . . . . . . . . . . . . . . . . . . 86720.3.1 Organizaciones de agentes . . . . . . . . . . . . . . . . . . . . 86820.3.2 Coordinacin en SMA . . . . . . . . . . . . . . . . . . . . . . 86920.3.3 Negociacin, conanza y reputacin . . . . . . . . . . . . . . . 869
20.4 Comunicacin entre agentes . . . . . . . . . . . . . . . . . . . . . . . . 87020.4.1 El lenguaje FIPA-ACL . . . . . . . . . . . . . . . . . . . . . . 872
xix
ndice general
20.4.2 Protocolos de comunicacin . . . . . . . . . . . . . . . . . . . 87420.5 Mtodos, herramientas y plataformas . . . . . . . . . . . . . . . . . . 875
20.5.1 Programacin de agentes . . . . . . . . . . . . . . . . . . . . . 87720.5.2 Plataformas de agentes FIPA . . . . . . . . . . . . . . . . . . 878
20.6 Aplicaciones de los agentes . . . . . . . . . . . . . . . . . . . . . . . . 88020.7 Ejercicios resueltos: Anlisis y diseo de un SMA . . . . . . . . . . . 882
Ejercicios Resueltos: Anlisis y diseo de un SMA . . . . . . . . . . . 88220.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889
21 Vericacion y validacion de sistemas inteligentes 891Vicente Moret Bonillo y Eduardo Mosqueira Rey21.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89121.2 Vericacin de sistemas inteligentes . . . . . . . . . . . . . . . . . . . 893
21.2.1 Cumplimiento de las especicaciones . . . . . . . . . . . . . . 89321.2.2 Vericacin de los mecanismos de inferencia . . . . . . . . . . 89421.2.3 Vericacin de la base de conocimientos . . . . . . . . . . . . 89521.2.4 Inuencia de las medidas de incertidumbre . . . . . . . . . . . 898
21.3 Validacin de sistemas inteligentes . . . . . . . . . . . . . . . . . . . . 89921.3.1 Personal involucrado . . . . . . . . . . . . . . . . . . . . . . . 89921.3.2 Qu validar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90021.3.3 Casustica de validacin . . . . . . . . . . . . . . . . . . . . . 90021.3.4 Validacin contra el experto . . . . . . . . . . . . . . . . . . . 90221.3.5 Validacin contra el problema . . . . . . . . . . . . . . . . . . 903
21.4 Mtodos cuantitativos de validacin . . . . . . . . . . . . . . . . . . . 90421.4.1 Medidas de pares . . . . . . . . . . . . . . . . . . . . . . . . . 90421.4.2 Medidas de grupo . . . . . . . . . . . . . . . . . . . . . . . . . 91021.4.3 Ratios de acuerdo . . . . . . . . . . . . . . . . . . . . . . . . . 913
21.5 Sntesis metodolgica del proceso de validacin . . . . . . . . . . . . . 91821.5.1 Planicacin del proceso . . . . . . . . . . . . . . . . . . . . . 91821.5.2 Fase de aplicacin de tcnicas . . . . . . . . . . . . . . . . . . 92021.5.3 Interpretacin de resultados . . . . . . . . . . . . . . . . . . . 921
21.6 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92221.7 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92321.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934
22 Razonamiento basado en casos 937Jos Manuel Jurez Herrero y Jos Toms Palma Mndez22.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93722.2 Sistemas de Razonamiento Basado en Casos . . . . . . . . . . . . . . 93922.3 Elementos de un SRBC . . . . . . . . . . . . . . . . . . . . . . . . . . 941
22.3.1 Los casos y su descripcin . . . . . . . . . . . . . . . . . . . . 94222.3.2 Librera de casos . . . . . . . . . . . . . . . . . . . . . . . . . 94422.3.3 Determinacin de casos similares . . . . . . . . . . . . . . . . 947
xx
ndice general
22.4 El ciclo RBC. Etapas-RE . . . . . . . . . . . . . . . . . . . . . . . . . 95322.4.1 Recuperar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95422.4.2 Reutilizar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95622.4.3 Revisar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95722.4.4 Retener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95822.4.5 Mantenimiento . . . . . . . . . . . . . . . . . . . . . . . . . . 958
22.5 Aplicaciones de los sistemas RBC . . . . . . . . . . . . . . . . . . . . 95922.6 Herramientas para el desarrollo de SRBC . . . . . . . . . . . . . . . . 96222.7 Lecturas recomendadas y recursos en Internet . . . . . . . . . . . . . 96622.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96722.9 Ejercicios resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96822.10 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 972
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973
23 Reconocimiento de Formas 975Mario Hernndez Tejera, Javier Lorenzo Navarro y Juan Mndez Rodrguez23.1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97523.2 Modelos estadsticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
23.2.1 Clasicador bayesiano de mnimo error . . . . . . . . . . . . . 98023.2.2 Clasicador bayesiano de mnimo riesgo . . . . . . . . . . . . 98223.2.3 Distribuciones normales multivariantes . . . . . . . . . . . . . 98423.2.4 Estimacin de distribuciones . . . . . . . . . . . . . . . . . . . 985
23.3 Modelos geomtricos de la decisin . . . . . . . . . . . . . . . . . . . . 98723.3.1 Funciones discriminantes . . . . . . . . . . . . . . . . . . . . . 98723.3.2 Clasicacin por funciones de distancia . . . . . . . . . . . . . 98923.3.3 Separabilidad Lineal y la dimensin Vapnik-Chervonenkis . . 993
23.4 Aprendizaje de clasicadores lineales . . . . . . . . . . . . . . . . . . 99523.4.1 Procedimiento perceptrn . . . . . . . . . . . . . . . . . . . . 99623.4.2 Procedimientos de mnimo error cuadrtico . . . . . . . . . . 99823.4.3 Mquina de vectores soportes . . . . . . . . . . . . . . . . . . 1001
23.5 Aprendizaje de clasicadores no lineales . . . . . . . . . . . . . . . . . 100523.5.1 Topologa de perceptrones multicapa . . . . . . . . . . . . . . 100523.5.2 Redes de funciones de base radial . . . . . . . . . . . . . . . . 1007
23.6 Seleccin de caractersticas . . . . . . . . . . . . . . . . . . . . . . . . 100923.6.1 Anlisis de componentes principales . . . . . . . . . . . . . . . 101023.6.2 Anlisis de componentes independientes . . . . . . . . . . . . 101123.6.3 Escalado multidimensional . . . . . . . . . . . . . . . . . . . . 1013
23.7 Validacin y comparacin de clasicadores . . . . . . . . . . . . . . . 101423.7.1 Test de clasicadores . . . . . . . . . . . . . . . . . . . . . . . 101523.7.2 Comparacin de prestaciones . . . . . . . . . . . . . . . . . . 1017
23.8 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1022
xxi
Prlogo
Una denicin comnmente aceptada relaciona la disciplina de la Inteligencia Ar-ticial (IA) con el anlisis y el diseo de sistemas articiales autnomos capaces deexhibir un comportamiento inteligente. Se asume que, para que un agente acte inte-ligentemente, debe poder percibir su entorno, elegir y planicar sus objetivos, actuarhacia la consecucin de estos objetivos aplicando algn principio de racionalidad einteractuar con otros agentes inteligentes, sean estos articiales o humanos.
Esta disciplina no es nueva. Hace algo ms de cincuenta aos, el 31 de Agosto de1955, Marvin Minsky, John McCarty, Nathan Rochester y Claude Shannon propu-sieron la celebracin de una reunin de dos meses de duracin, que tuvo lugar en elDartmouth College durante el verano de 1956. Su principal objetivo era discutir: laconjetura de que todos los aspectos del aprendizaje o de cualquier otra caractersti-ca de la inteligencia pueden, en principio, ser descritos de modo tan preciso que sepueda construir una mquina capaz de simularlos? El tema pareca tan novedoso queacuaron un nuevo trmino para l: Inteligencia Articial.
Se pensaba entonces que ste era un objetivo factible, que se alcanzara en unaspocas dcadas. Las previsiones eran, ciertamente, demasiado optimistas. Medio si-glo despus, podemos hacer un balance de los logros conseguidos. Estamos an lejosde ese objetivo genrico. No existen an agentes perfectamente autnomos, con unainteligencia tan completa y tan compleja como la de los seres humanos. Sin embar-go, disponemos ahora de una coleccin extensa y diversa de modelos y tcnicas quenos han permitido construir dispositivos tiles, aunque imperfectos, que facilitan laresolucin de tareas de alta complejidad, inabordables mediante otras tcnicas con-vencionales de la Informtica.
El enfoque de la IA tambin ha cambiado. Unos aos antes de la reunin de Dar-mouth, en 1952, Ashby propona el objetivo, ambicioso tambin, pero ms realista,de construir dispositivos que actuasen como amplicadores de la inteligencia hu-mana. A lo largo del medio siglo transcurrido desde entonces, el campo de la IA haido evolucionando de forma natural hacia esa antigua propuesta de Ashby. Aunqueno es el nico enfoque aceptado, hoy predomina la idea de que la implementacin desistemas convencionales con inteligencia embebida, es un objetivo ms prctico, mstil y ms factible que la bsqueda de la inteligencia general en un nico dispositivo.Hoy proliferan los asistentes inteligentes que, embebidos en aplicaciones de todo tipo,desde sistemas de informacin hasta procesadores de textos, ayudan al usuario en la
Prlogo
realizacin de tareas complejas y proporcionan un valor aadido a los sistemas con-vencionales. Se trata, por tanto, de conseguir una sinergia efectiva entre inteligenciae informacin.
En los ltimos aos, y con la revolucin de las comunicaciones, esta sinergia seha extendido hacia una ecuacin ms completa: Informacin + Inteligencia + Ubi-cuidad. Por poner unos ejemplos, los sistemas de inteligencia ambiental, sensibles alcontexto en el que se mueven, el trabajo hacia una web semntica o los dispositivospara la telemonitorizacin inteligente de parmetros biolgicos, muestran de formapatente hacia donde est evolucionado el campo de la IA.
Sea como sea, estos cincuenta aos de investigacin en IA, no han sido en absolutoimproductivos. De hecho, la IA se ha convertido en unas de las reas ms prolcas encuanto a resultados de investigacin. No podemos obviar que muchos de los desarro-llos que surgieron de grupos de investigacin en IA estn presentes en muchas de lasactividades que comnmente desarrollamos, desde los sistemas de navegacin de losautomviles, hasta los pequeos controladores inteligentes de algunos electrodomsti-cos. Tampoco podemos obviar los avances que se han producidos en campos como larobtica que han supuesto una revolucin en los mtodos de fabricacin. Toda estalabor investigadora ha producido gran cantidad de tcnicas y metodologas que handado lugar a numerosas disciplinas dentro de la IA, que dibujan un panorama queresulta casi imposible de abordar en un slo libro.
La visin de la IA como ingeniera ha predominado sobre la visin de la IA comociencia, y hoy en da disponemos, por tanto, de una amplia variedad de modelos,metodologas, tcnicas y aplicaciones. El peso de la IA dentro del rea de la Inform-tica la convirti hace tiempo, no slo en objeto de investigacin, sino tambin en unobjetivo docente de primer orden dentro de cualquier plan de estudios medianamentecompleto.
Este libro pretende proporcionar una contribucin slida, y razonablemente com-pleta, a la docencia de la IA en los planes de estudio de la Ingenera Informtica. EnInteligencia Articial: Mtodos, Tcnicas y Aplicaciones, se han intentado conjugarlos tpicos clsicos de la IA, que se vienen cubriendo en la docencia de grado, conotros tpicos avanzados que pueden ser ubicados tanto en la docencia de grado comode posgrado.
De esta forma, el libro se ha divido en seis partes. El libro comienza con unaseccin de Introduccin, donde se analizan los diferentes paradigmas en los que sebasa la IA en la actualidad y se proporciona una visin crtica de los retos y loslogros en este campo. Es importante emplazar a los alumnos, ya desde el principio,a abordar el estudio de la IA con un espritu crtico que les permita situar en sujusta medida los contenidos concretos que van a estudiar despus. Con el paso de losaos, el campo de la IA ha ido siendo invadido por una terminologa que, a menudo,es ms ampulosa que descriptiva, empezando por el propio nombre de la disciplina:Inteligencia Articial. Por consiguiente, el objetivo de la primera parte del libro esdibujar un marco general en una escala que, los editores y el autor del primer captulo,entendemos es la correcta.
En la segunda parte, denominada Representacin de Conocimiento e Inferencia,se abordan desde los aspectos clsicos de representacin de conocimiento y tcnicas
xxiv
Prlogo
clsicas de razonamiento, hasta aspectos ms avanzados relacionados con la gestinde la incertidumbre, para de esta forma dar una visin lo ms completa posible dela evolucin que han sufrido los mecanismos para representar conocimiento y razonarsobre l. La tercera parte describe un conjunto de Tcnicas bsicas de la IA que seutilizan en la resolucin de gran cantidad de problemas, entre las que se incluyenlas clsicas tcnicas de bsqueda hasta aspectos ms avanzados como la computacinevolutiva y satisfaccin de restricciones. En la cuarta parte se presentan un conjuntode procesos complejos de resolucin de problemas, que hemos denominado Tareas, quese pueden aplicar en la resolucin de determinadas clases de problemas, como puedenser la planicacin y el diagnstico. La quinta parte est centrada en los aspectos re-lacionados con el Aprendizaje y la Minera de datos, donde se hace una introduccina algunas tcnicas de aprendizaje cubriendo aspectos relacionados con el aprendizajesupervisado y no supervisado, as como tcnicas de aprendizaje no simblicas. Fi-nalmente, la sexta parte trata los Aspectos Metodolgicos y Aplicaciones, y en ellase ha intentado abordar temas relacionados con el anlisis y desarrollo de sistemasinteligentes como la Ingeniera del Conocimiento, los Sistemas Multiagentes y la Ve-ricacin y Validacin, as como algunas aplicaciones, resultado de combinacin dedistintas tcnicas analizadas a lo largo del libro, como el Razonamiento Basado enCasos y el Reconocimiento de Formas.
Cada uno de los captulos ha sido desarrollado por expertos de contrastada repu-tacin en su campo, lo que ha permitido, no slo exponer los aspectos bsicos relacio-nados con el captulo de una forma clara, sino que se ha podido dar una visin msglobal de cada tema indicando referencias bibliogrcas con las que profundizar encada uno de los tpicos.
Sirvan estas lneas para agradecer a todos los autores que han colaborado en laredaccin y correccin de cada uno de los captulos, ya que evidentemente, sin sucolaboracin desinteresada no hubiera sido posible que este proyecto viese la luz.Queremos agradecer la paciencia que han mostrado ante las instrucciones y requeri-mientos que les hemos hecho llegar y a las que han respondido con celeridad. Mencinespecial queremos hacer a la editorial McGraw-Hill, que nos ha prestado todo su apo-yo en el proceso de elaboracin de este libro, y a los profesores Abraham RodrguezRodrguez, del Deptarmento de Informtica y Sistemas de la Universidad de Las Pal-mas de Gran Canaria, y Jos del Sagrado Martnez, del departamento de Lenguajesy Computacin de la Universidad de Almera, por su colaboracin en la correccin devarios captulos de esta obra.
Jos Toms Palma MndezRoque Marn MoralesCoordinadores
xxv
Parte I
INTRODUCCIN
Captulo 1
Aspectos conceptuales de laInteligencia Articial y la
Ingeniera del Conocimiento
Jos Mira MiraUniversidad Nacional de Educacin a Distancia
1.1 Introduccin
Actualmente se acepta, con alto grado de consenso entre los profesionales del cam-po de la computacin, que el propsito general de la IA es desarrollar: (1) Modelosconceptuales, (2) procedimientos de reescritura formal de esos modelos y (3) estrate-gias de programacin y mquinas fsicas para reproducir de la forma ms eciente ycompleta posible las tareas cognitivas y cientco-tcnicas ms genuinas de los siste-mas biolgicos a los que hemos etiquetado de inteligentes [Mira y Delgado, 1995b].Esto nos obliga a aceptar ya desde el comienzo del captulo que el avance de la IAest necesariamente limitado por los avances en las tcnicas de modelado, formaliza-cin y programacin y por la evolucin en los materiales y las arquitecturas de loscomputadores y los dispositivos electromecnicos (robots) en los que se instala elclculo.
Quedmonos inicialmente con la idea de que los cuatro grandes objetivos de laIA son modelar, formalizar, programar e implementar mquinas soporte capaces deinteractuar de forma no trivial con el medio. Esto tambin lo hace la computacin con-vencional y para aclarar la diferencia recurrimos a Leibniz, quien nos deca que todolo que sepamos describir de forma clara, completa, precisa e inequvoca es compu-table. Por eso el conjunto de tareas y mtodos propios de la IA son todas aquellas yaquellos para los que en la actualidad slo disponemos de descripciones poco claras,incompletas, imprecisas y con alto grado de dudas y errores potenciales, debidos a sucomplejidad. Por ejemplo, la percepcin, el razonamiento creativo, la comprensin yproduccin del lenguaje natural o los procesos de aprendizaje.
Aspectos conceptuales de la IA y la IC
Esta aproximacin a los objetivos de la IA conlleva la suposicin subyacentede que efectivamente podemos sintetizar estas tareas cognitivas, de que podremosreducir el lenguaje natural a lenguajes formales, la semntica a la sintaxis, los sm-bolos neurosiolgicos a smbolos estticos, el conocimiento a arquitecturas y, nal-mente, el procesado biolgico de la informacin a un clculo residente en un circuitoelectrnico.
La gran hiptesis de la IA fue que en un nmero corto de aos (10, 20, 30, 40, aho-ra ya 50) iba a ser posible sintetizar los procesos cognitivos y conseguir inteligenciageneral en mquinas (every aspect of learning or any other feature of intelligencecan in principle be so precisely described that a machine can be made to simulateit [McCarthy y otros, 1955; Rich, 1990]). Es decir, que no existan impedimentosfsicos, constitutivos ni formales para este objetivo y que slo era cuestin de recur-sos. Cincuenta aos despus de la conferencia del Dartmouth College no todos losprofesionales del campo estamos de acuerdo con esta armacin, ni tampoco vemosque sea necesaria. No estamos de acuerdo primero por la propia naturaleza generaly abstracta de la palabra inteligencia que se usa para describir una medida globalde la calidad de todos los procesos cognitivos de un ser vivo y de su capacidad deadaptacin a los cambios del medio en el que existen otros seres vivos de compleji-dad comparable. De hecho el trmino inteligencia es un concepto precientco cuyautilidad actual es, cuando poco, discutible. Dentro de la propia psicologa se propone[Gardner, 2004] descomponer el trmino y hablar de inteligencias mltiples o de in-teligencia colectiva intentando poner de maniesto en el primer caso la existencia dehabilidades relativamente autnomas y en el segundo el carcter social y distribuidodel conocimiento humano.
Cuando intentamos concretar ms el signicado del trmino inteligencia, parasaber qu es lo que queremos mimetizar en una mquina, nos encontramos con el con-junto de conocimientos y habilidades a los que hace referencia toda la neurosiologa,la psicologa, la sociologa y la losofa. Parece que se concreta algo al armar que laIA tiene que ver slo con los conocimientos necesarios para la comprensin y la sn-tesis de procedimientos de solucin de problemas complejos que exigen la capacidadde procesamiento simblico y relacional. Pero ahora hay que especicar qu hace queun problema sea complejo y por qu su solucin debe de exigir procesamiento simb-lico. Dos de las formas posibles de contestar a esta pregunta han dado lugar a las dosaproximaciones dominantes en IA: a simblica o representacional y la del conexionis-mo situado. La primera hace nfasis en la va descendente y en el uso de conceptos delllenguaje natural (hechos y reglas) para representar el conocimiento necesario pararesolver problemas de decisin que no necesitan un robot como componente impres-cindible en su implementacin. La segunda hace nfasis en la va ascendente y en eluso de conceptos de ms bajo nivel semntico. Considera la inteligencia como unaforma superior de adaptacin al medio y se apoya en conductas y mecanismos im-plementables en un robot real que tiene que interactuar con un entorno real concreto.Por otra parte, volviendo a la gran hiptesis de la poca fundacional de la IA, tam-poco creemos que sea necesaria la sntesis de inteligencia general en mquinas en elsentido de equivalencia total o clonacin. Por el contrario, la IA como toda cienciae ingeniera, debe de tener un carcter instrumental y sus objetivos no deben de ser
4
Introduccin
otros que (1) ayudar a comprender los procesos neurosiolgicos, cognitivos y socialesy (2) prolongar los analizadores humanos y complementar sus deciencias, pero nonecesariamente construir un humanoide no distinguible de los humanos mediante eltest de Turing [Moor, 1987] o los experimentos conceptuales de Searle [Searle, 1985].
En nuestra opinin los objetivos iniciales de la IA fueron excesivos porque se igno-raron: (1) El carcter general y precientco del trmino y (2) las enormes diferenciasconstitutivas entre el conocer humano y el conocimiento que los humanos hemossido capaces de hacer residir en una mquina de cristal de silicio semiconductor. Laignorancia del primero de estos puntos nos ha llevado a perseguir un objetivo exce-sivo y mal denido. La ignorancia del segundo punto nos ha llevado a olvidar que eltrabajo real est en el desarrollo de arquitecturas, lenguajes y herramientas lgico-matemticas que superponen organizaciones a la electrnica digital, de forma tal quea un observador humano le parece que la mquina es inteligente.
Curiosamente, este intento de aadir espectacularidad y nomenclatura cognitivaexcesiva a nuestros modelos, a nuestros desarrollos formales y a nuestros programas yrobots ha contribuido a oscurecer, al menos parcialmente, los slidos resultados alcan-zados por la IA en particular en tcnicas de representacin e inferencia, en aprendiza-je, robtica, visin articial y sistemas basados en el conocimiento (SBCs). Se hanrealizado avances importantes en las tcnicas de modelado conceptual y formal, en laestructuracin del conocimiento necesario para resolver una tarea en trminos del pa-pel que juegan los distintos elementos (roles) y del plan estratgico de descomposicindel procedimiento de solucin (mtodos). Tambin se ha avanzado en las tcnicas derepresentacin formal (lgica, reglas, marcos, objetos, agentes, redes causales, etc...)y en el tratamiento de la incertidumbre (redes bayesianas, sistemas borrosos) y en lasolucin de problemas para los que disponemos de ms datos que conocimiento (redesde neuronas articiales). Hay avances importantes en la bsqueda de inspiracin enla biologa (computacin de membranas) y en la Fsica (computacin cuntica); seha alcanzado la frontera de la nanotecnologa y se investiga en biomateriales comosoporte fsico de un clculo. Finalmente, cuando las soluciones propuestas por la IAson valiosas, enseguida las integra la informtica convencional, y de esto hay ejem-plos en dominios tan diversos y relevantes como la robtica industrial, la medicina, elarte, la educacin o la WEB. Es decir, independientemente de los excesivos objetivosiniciales y de la carga cognitiva de su nomenclatura, los logros alcanzados por la IAdurante los ltimos cincuenta aos, entendida como automatizacin de procesos conalto contenido cognitivo, son indiscutibles.
El resto de este captulo est estructurado de la siguiente forma. Primero, distin-guimos entre los objetivos de la IA como ciencia de los de la IA como Ingeniera delConocimiento (IC). Despus, comentamos de forma resumida la evolucin histrica yconceptual haciendo nfasis en los aspectos metodolgicos hasta llegar al estado actualcaracterizado por la conveniencia de tres paradigmas bsicos (simblico, conexionistay situado) y un cuarto de carcter sincrtico o hbrido. A continuacin, enumeramosalgunas de las diferencias constitutivas bsicas que justican las discrepancias entrelas expectativas iniciales de la gran hiptesis de la IA y los resultados alcanzados porla IC. Esta distincin entre la perspectiva cientca de la IA y la aplicada nos da piea una serie de recomendaciones que creemos que pueden ayudar al avance de ambas.
5
Aspectos conceptuales de la IA y la IC
1.2 La IA como Ciencia y como IC
Aunque lo usual en IA e IC es mezclar conceptos cognitivos y del lenguaje natural(intencin, propsito, ontologa, semntica, emocin, memoria, aprendizaje,...) conotros computacionales (modelos, inferencias, roles, entidades abstractas y operadoreslgico-matemticos, tablas, autmatas, programas,...) suponiendo que estos conceptostienen el mismo signicado y las mismas funcionalidades en computacin que enhumanos, lo cierto es que no es as. Urge entonces ayudar al lector a distinguir entre losobjetivos de la IA como ciencia e IA como ingeniera (IC) (vase la Figura 1.1) para quesepa de qu hablamos cuando usamos estos conceptos (cul es su referente) y evitar aslos equvocos asociados a suponer que la semntica y la causalidad del lenguaje naturaly la neurosiologa son equivalentes a la semntica y la causalidad de un lenguajeformal y del hardware que lo soporta. Esta mezcla de entidades cognitivas y biolgicascon otras formales y abstractas, junto con la asignacin arbitraria de signicados (elno saber llevar bien la contabilidad, nos dice Maturana [Maturana, 1975]) es una delas causas fundamentales de la disparidad entre el optimismo excesivo de los objetivosiniciales y los nada despreciables resultados actuales de la IA. Una visin ms realistade los problemas y un lenguaje ms ajustado a las matemticas, la lgica y la ingenieraelectrnica ayuda a plantear los problemas y a resolver aquellos para los que tenemossolucin en el estado actual de conocimiento. Cargar de nomenclatura la parte nocomputable del conocer humano no cambia las cosas. Prcticamente, todo el lenguajede la IA y la IC ha sido tomado de la biologa en general y de la neurosiologa,la psicologa cognitiva y la losofa en particular, y esto no est mal siempre queno se olvide la diferencia de signicados porque estimula el proceso de bsqueda desoluciones. Es nefasto, sin embargo, cuando se da por resuelto un problema por elslo cambio de nomenclatura.
,QWHOLJHQFLD$UWLILFLDO
&LHQFLD&RPSUHQVLyQGHORVSURFHVRVFRJQLWLYRV
,QJHQLHUtD7DUHDV\ PpWRGRV GH
VROXFLyQ
1HXURFLHQFLD&RPSXWDFLRQDO
,QJHQLHUtD%LRLQVSLUDGD
Figura 1.1: Distincin entre IA como ciencia e IA como ingeniera.
6
La IA como Ciencia y como IC
1.2.1 IA como Ciencia
Entendida como ciencia la tarea de IA es una tarea de anlisis. Su fenomenologaengloba el conjunto de hechos asociados a la neurologa y la cognicin, desde los nivelessubcelular y neuronal a los mecanismos y organizaciones superpuestas de las queemergen las funciones globales de percepcin, memoria, lenguaje, decisin, emocin yaccin que han dado lugar a lo que llamamos comportamiento inteligente en humanos.
La perspectiva cientca de la IA busca una teora computable del conocimientohumano. Es decir, una teora en la que sus modelos formales puedan ejecutarse enun sistema de clculo y tener el mismo carcter predictivo que tienen, por ejemplo,las ecuaciones de Maxwell en el electromagnetismo. No es sorprendente entonces quecon estos objetivos consideremos excesiva la conjetura fuerte de la IA. Dotar a labiologa y a la psicologa del carcter de ciencia experimental que tiene la fsica es unobjetivo deseable pero de difcil consecucin. Entre otras razones porque todava nodisponemos de los datos necesarios ni, posiblemente, de las matemticas adecuadas.La labor que creemos que debe de realizar en esta tarea la computacin en general y laIA en particular es dotar de herramientas conceptuales y formales a la Neurosiologay la Ciencia Cognitiva. Es decir, potenciar la Neurociencia Computacional y todoslos procedimientos experimentales de estimulacin, clasicacin, e interpretacin yprediccin de resultados.
Siempre ha habido un fuerte debate asociado a las relaciones entre la IA y la cogni-cin con las analogas clsicas mente-programa, cerebro-hardware, y las consiguientesposturas a favor y en contra de la equivalencia entre pensar y computar. Aqu novamos a entrar en estos temas, porque slo nos interesa distinguir entre los objetivoscientcos y los aplicados de la IA para contribuir a aclarar dnde estn los problemasreales en el segundo caso, en la IC. Queda fuera del alcance de este tema los deba-tes psicolgicos y loscos sobre las relaciones mente-cerebro, e incluso las grandespreguntas sobre si algn da podrn o no pensar las mquinas. De momento, vamosa centrarnos en resolver cada vez problemas ms complejos en el sentido de Leibniz.Vamos a ver cmo abordamos la falta de claridad en las especicaciones funcionales,la imprecisin, la incertidumbre y el aprendizaje.
1.2.2 IA como Ingeniera
La rama aplicada de la IA, conocida como Ingeniera del Conocimiento, tiene unosobjetivos ms claros y alcanzables a corto y medio plazo. Sin embargo, tiene tambingrandes dicultades comparada con las otras ingenieras de la materia y la energapor dos razones fundamentales. La primera es que, como alternativa a la materiay a la energa, el nuevo objeto formal de la IC es el conocimiento y ste, como lainformacin, es pura forma. Slo usa la energa como soporte, pero el mensaje esten la estructura relacional y en el consenso entre los distintos observadores externosque debern de dotar del mismo signicado a los smbolos formales y fsicos queconstituyen un clculo.
El conocimiento es ahora objeto de observacin, modelado, formalizacin y trans-formacin por procesos de su mismo nivel o de metaniveles superiores (aprendizaje).
7
Aspectos conceptuales de la IA y la IC
Adems, si queremos que ese conocimiento sea reutilizable, debe de ser impersonal,transferible, vericable experimentalmente y con la misma capacidad de prediccinde una ley fsica. Desafortunadamente, no estamos seguros de disponer de las mate-mticas necesarias para formalizar el conocimiento de los procesos cognitivos de lamisma forma que la fsica dispone del clculo diferencial e integral.
La segunda razn de las dicultades de la IC en comparacin con las dicultadesusuales en otras ingenieras es que la IC no puede apoyarse en una slida teoradel conocimiento porque todava no disponemos de esa teora. As, estamos queriendohacer aviones sin un slido conocimiento de la fsica de uidos. Por consiguiente, parecerazonable dejar el tiempo necesario para que la parte terica de la IA contribuya aobtener una teora computable del conocer humano y, mientras tanto, redenir losobjetivos de la IC de forma ms modesta, teniendo en cuenta el carcter limitado,incompleto y poco preciso del conocimiento del que disponemos sobre los dos tiposde tareas que aborda la IC: (1) Tareas bsicas e inespeccas usuales en humanos,independientemente de su actividad profesional, tales como ver, or, interpretar elmedio, planicar, aprender, controlar las acciones encaminadas a moverse y manipularun medio, etc. y (2) Tareas cientco-tcnicas en dominios estrechos (diagnosticar enmedicina, congurar y disear sistemas, etc...). Es crucial aceptar inicialmente laslimitaciones en el alcance, las funcionalidades y la autonoma de estos sistemas de IA.Estas limitaciones estn asociadas al desconocimiento de la neurosiologa y la lgicade la cognicin y a las diferencias constitutivas entre el cuerpo biolgico y el robot,entre el lenguaje natural y el lenguaje formal, entre la semntica y la sintaxis.
En la mayora de los desarrollos de la IC llamados Sistemas Basados en el Co-nocimiento (SBCs) se procede de acuerdo con los siguientes pasos (vase la Figura1.2): (1) Se parte de una descripcin en lenguaje natural de las interacciones de unhumano con el entorno en el que se desarrolla la tarea que queremos sintetizar. Esdecir, se parte del mtodo usado por el experto humano para resolver esa tarea. (2)Despus se modela esta descripcin usando diferentes metamodelos a los que llama-mos paradigmas (simblico o representacional, conexionista o situado). Cada una deestas formas de modelado conceptual es esencialmente un procedimiento de descom-posicin de la tarea en subtareas hasta llegar al nivel de inferencias primitivas que sonaquellas componentes del razonamiento que ya no necesitan una descomposicin pos-terior (seleccionar, comparar, . . . ) porque ya se pueden implementar usando sloconocimiento del dominio. (3) El tercer paso es la reescritura formal de las inferenciasy los roles estticos y dinmicos de acuerdo con el paradigma elegido. Esta eleccines consecuencia del balance entre los datos y el conocimiento disponibles para resolvercada tarea concreta, del tipo al que pertenecen esos datos disponibles (etiquetados ono etiquetados) y del tipo de conocimiento que demanda la aplicacin. Hay dos tiposesenciales de conocimiento (situado y no situado), funcin de la naturaleza de la in-terfaz necesaria para acoplar un sistema de IA con su medio. El conocimiento situadoest asociado a aquellas situaciones en las que la interaccin con el medio la lleva acabo un sistema electromecnico (un robot), por lo que hay que tener en cuenta lossensores y los efectores que limitan el repertorio de posibles comportamientos inteli-gentes. Alternativamente, el conocimiento no situado est asociado a aquellas otrassituaciones en las que la interfaz entre el sistema de IA y el medio es humana, por
8
La IA como Ciencia y como IC
lo que no hay que preocuparse de sensores ni de efectores. (4) Finalmente, la ltimaetapa del desarrollo de un SBC es programar los operadores. Para aquellas tareas enlas que el interfaz es fsico y no humano (sensores y efectores de un robot concreto),es imprescindible implementar tambin el conocimiento asociado al cuerpo soportedel clculo.
Esta visin de la IA como ingeniera ha demostrado su utilidad como procedimien-to general de solucin de problemas de diagnstico, planicacin y control en un grannmero de dominios de aplicacin. Bajo su paraguas se han desarrollado procedimien-tos de representacin de conocimiento declarativo explcito y de su uso en inferencia,bibliotecas de mtodos, ontologas y otros servidores de componentes de modelado yformalizacin reutilizables.
Otra caso diferente es la potencial validez de esta aproximacin de ingeniera paraexplicar los procesos cognitivos. Ya hemos mencionado que no vamos a entrar aquen ese debate. El lector interesado puede seguir la pista a autores tales como Clancey[Clancey, 1997, 1999], Dreyfus [Dreyfus, 1979, 1994], Searle [Searle, 1989] o Edelman[Edelman, 1987], entre otros.
Figura 1.2: Esquema cualitativo de la IC. Se modela a partir de descripciones enlenguaje natural del procedimiento usado por un humano para resolver una tarea.
9
Aspectos conceptuales de la IA y la IC
1.3 Perspectiva histrica: fundamentosy metodologa
Es curioso observar ahora, cincuenta aos despus de acuar el trmino IA, lopoco que se ha investigado en sus fundamentos y en metodologa, y la excesiva prisamostrada en desarrollar aplicaciones. Los paradigmas dominantes en la actualidad(simblico, conexionista, situado e hbrido) tienen sus fundamentos en los trabajosprevios a 1956 llevados a cabo por la Ciberntica, desde 1943. En ese ao se publicaronlos tres trabajos que pueden considerarse de carcter fundacional:
A Logical Calculus of the Ideas Immanent in Nervous Activity. McCulloch, W.S.,Pitts, W. [McCulloch y Pitts, 1943].
The Nature of Explanation. Craik, K. [Craik, 1943][15]. Behavior, Purpose and Teleology. Rosenblueth, A., Wiener, N., Bigelow, J. [Ro-
senblueth y otros, 1943; Wiener, 1947].
En el primero, W.S. McCulloch y W. Pitts introducen el concepto de neurona for-mal que ha dado origen al paradigma conexionista. En el segundo, K. Craik introducelos fundamentos del paradigma simblico al interpretar el conocimiento humano entrminos de descripciones declarativas y modulares de entidades simblicas de alto ni-vel y de un conjunto de reglas inferenciales usadas para manipular esas descripcionessimblicas. Finalmente en el tercer trabajo, A, Rosenblueth, N. Wiener y J. Bigelowintroducen las bases del paradigma situado al interpretar el comportamiento inteli-gente en trminos de un conjunto de mecanismos de realimentacin. Posteriormente,el trabajo de la escuela de W.S. McCulloch, incluyendo la relevante aportacin deJ. von Neumann, crea las bases de la visin ciberntica de la IA, que busca los fun-damentos de la inteligencia en la enorme red de mecanismos genticos, moleculares,neuronales, metablicos y sociales de los que emerge. El trabajo de A. Turing en 1950complementa los fundamentos del paradigma simblico al proponer un procedimientoexperimental de medir la inteligencia contenida en un programa de IA (lo que hoyconocemos como test de Turing).
Tras estos antecedentes cibernticos, en 1956 se acua el trmino IA y se abandonael conexionismo y el inters por el anlisis del comportamiento y de los mecanismossoporte y se hace nfasis en el paradigma simblico, que parte de descripciones dealto nivel para intentar dotar de inteligencia a un programa, que siempre se suponeque va a tener un usuario humano, por lo que no hay que preocuparse del cuerpodel agente soporte del clculo, ni de los detalles del sistema conexionista que seencarga de ejecutar ese programa.
El optimismo inicial de la IA estuvo basado en limitar su dominio de inters a losmicromundos formales (mundo de los bloques) y a los sistemas capaces de ser des-critos de forma completa con mtodos lgicos, mediante procedimientos generales debsqueda heurstica, anlisis medios-nes y solucionadores generales de problemas.Pronto se reconoce que el mundo real es ms complejo y se empieza a hacer nfasis
10
Perspectiva histrica: fundamentos y metodologa
en las tcnicas de representacin del conocimiento y de su uso posterior en inferen-cia, junto con el desarrollo de lenguajes de programacin orientados a cada una delas tcnicas de representacin (lgica - prolog, reglas - lisp, marcos - orientacin aobjetos).
En la dcada de los setenta se inicia la explosin de aplicaciones de la IA en trmi-nos de sistemas basados en reglas a los que se les llama primero Sistemas Expertos ydespus Sistemas Basados en Conocimiento. El reconocimiento de la insuciencia dela lgica como herramienta nica de representacin da lugar al desarrollo de otras for-mas de representacin e inferencia mediante redes causales y asociativas (semnticas,neuronales y bayesianas) y marcos, objetos y agentes.
Aunque en la etapa dominada por el paradigma simblico (1956-1986) hay unnmero relevante de trabajos basados en los principios de la ciberntica y el cone-xionismo [Craik, 1943; McCulloch y Pitts, 1943], tales como la teora modular deautmatas probabilsticos, las memorias asociativas, el reconocimiento de caracteres,los sistemas autoorganizativos y la traduccin automtica, es en 1986 [Rumelhart yotros, 1986] cuando renace con fuerza la aproximacin neuronal al problema de lainteligencia. En la dcada de los 90 [Arkin, 1998; Brooks, 1991] aparece tambin, enel contexto de la robtica, el inters por la aproximacin situada, cerrando as el lazohistrico que comenz en 1943, con el reconocimiento de la necesidad de usar los tresparadigmas tanto en la perspectiva terica como en la aplicada. La dimensin delproblema as lo exige.
Tal como comentbamos al comienzo de este apartado es curioso que durante todosestos aos hayan sido mnimos los esfuerzos en el fortalecimiento de los fundamentos dela IA, ms all de los desarrollos en torno al proyecto SOAR (1969-1991) [Rosenbloomy otros, 1993] y de algunas crticas de lsofos y psiclogos interesados en la IA, comoDreyfus, Clancey o Searle. De hecho, tal como ya hemos mencionado, el debate msimportante en IA no ha estado relacionado con la Ingeniera, sino con la potencialvalidez del paradigma simblico para explicar los procesos cognitivos.
Algo anlogo ha pasado con los aspectos metodolgicos en los que empez arman-do que el desarrollo de los SBCs era un arte, que no haban reglas ni procedimientosnormalizados e invariantes, reproducibles y reutilizables. En nuestra opinin, slo haytres movimientos dignos de inters en el aspecto metodolgico, ms all de las pro-puestas iniciales de Leibniz, Turing y McCulloch (vase la Figura 1.3): (1) El nfasisen la reutilizacin de componentes de modelado, a travs del desarrollo de bibliote-cas de tareas y mtodos, (2) el desarrollo de ontologas y servidores de terminologaunicada y (3) el trabajo de Newell, Marr, Maturana y Varela para especicar unmarco de niveles y dominios de descripcin de un clculo que permite especicar deforma inequvoca qu parte del conocimiento termina residiendo en la arquitectura deun computador y cul permanece fuera, en el dominio del observador externo y, porconsiguiente todava no es computable. La Figura 1.4 muestra este esquema de nive-les y dominios de descripcin de un clculo y la forma usual en la que nos movemosdentro del marco, desde el dominio del observador del nivel de conocimiento hasta eldominio propio del nivel de los smbolos.
Sobre el nivel fsico (el hardware del computador y del robot) se superpone el nivelde los smbolos (el programa) y sobre este el nivel de conocimiento (en nomenclatura
11
Aspectos conceptuales de la IA y la IC
de Newell) o el nivel de la teora del clculo (en nomenclatura de Marr). Cada nivel esautnomo y se tiene que poder reescribir en trminos de las entidades y relaciones delnivel inferior, dejando fuera parte de su semntica. Para explicar esta distincin entrela semntica y causalidad propias de cada nivel y las que no son computables. J. Miray A.E Delgado [Mira y Delgado, 1987] introdujeron en 1987 la distincin en cada nivelentre el dominio propio del nivel donde la semntica es interna y las cosas ocurrencomo tienen que ocurrir (los contadores cuentan, los multiplexos multiplexan, ...),y el dominio del observador externo (nosotros), donde la semntica es arbitraria ytenemos libertad para asociar signicados a smbolos.
Un aspecto importante para entender la parte computable de la inteligencia huma-na es detallar el conocimiento que se queda fuera cuando vamos atravesando fronterasde dominios y niveles en el proceso de reduccin de un modelo conceptual, primero aun modelo formal y despus a un programa.
Nuestro consejo es que a la hora de valorar las funcionalidades reales de un pro-grama o un robot con supuesta inteligencia tengamos clara la distincin entre lo quepertenece al dominio propio (es decir lo que reside en la CPU del computador y en elcuerpo del robot) y lo que pertenece al dominio del observador (es decir las etiquetaslingsticas y la semntica). As, se nos har evidente la distincin entre el nivel deinteligencia que realmente hemos sido capaces de computar y aquellos otros compo-nentes de la inteligencia humana que slo existen en el lenguaje natural y en la mentedel usuario e intrprete del programa.
Figura 1.3: Pasos metodolgicos en el desarrollo de la IA.
1.4 Paradigmas actuales en IA
Entendemos el concepto de paradigma en el sentido de Kunh [Kuhn, 1971], comouna aproximacin metodolgica a la IA y a la IC que ha sido consensuada entre unamplio grupo de profesionales del campo que la consideran como la forma normal de
12
Paradigmas actuales en IA
'2('3
+$5':$5(
02'(/2)250$/
16
1&
1)
&RQRFLPLHQWRQRFRPSXWDEOH
&RQRFLPLHQWRQRFRPSXWDEOH
&RQRFLPLHQWRQRFRPSXWDEOH
352*5$0$
02'(/2&21&(378$/
Figura 1.4: Niveles y dominios de descripcin de un clculo.
hacer ciencia o ingeniera. Este consenso en un paradigma concreto supone que se estde acuerdo sobre cules son los objetivos y la forma de alcanzarlos. Es decir, sobrecmo plantear las cuestiones y los experimentos, sobre los mtodos para resolver losproblemas y sobre los mecanismos de explicacin y las hiptesis que nos van a dejarsatisfechos. Paradigma es sinnimo de forma de abordar la solucin de un problema.
Centrndonos en la IC, hemos aceptado al comienzo del captulo que sus tareasbsicas eran modelar conocimiento, formalizar los modelos, programar los operadoresformales e implementar fsicamente el soporte de esos programas (el cuerpo delrobot). Por consiguiente, cada paradigma en IC es en esencia una forma de modelar,formalizar, programar e implementar conocimiento, junto con la hiptesis de partidaacerca de qu entendemos por conocimiento.
Aunque veremos al nal de este apartado que slo hay dos tipos de paradigmas, losbasados en representaciones y los basados en mecanismos, es usual distinguir cuatroparadigmas bsicos:
1. Simblico o representacional.
2. Situado o reactivo.
3. Conexionista.
4. Hbrido.
Describimos ahora de forma resumida estos paradigmas mencionando las situacio-nes en las que son ms adecuados en funcin del balance entre datos y conocimientosdisponibles.
13
Aspectos conceptuales de la IA y la IC
1.4.1 El paradigma simblico
Todo paradigma empieza tomando postura sobre qu entendemos por conocimien-to. En el caso del paradigma simblico, llamado tambin representacional, se consideraque todo el conocimiento necesario para resolver una tarea de diagnstico, plani-cacin, control o aprendizaje, por ejemplo, puede representarse usando descripcionesdeclarativas y explcitas en lenguaje natural formadas por un conjunto de conceptos,los hechos, y otro conjunto de reglas de inferencia que describen las relaciones estti-cas y dinmicas conocidas entre esos hechos. As, razonar en el paradigma simblicoes equivalente a especicar un conjunto de reglas de manipulacin de los conceptosde entrada al SBC que genera el resultado del razonamiento, la inferencia.
El conocimiento se separa del experto humano que supuestamente lo posee, seacepta que la descripcin en lenguaje natural es suciente y esa descripcin se des-compone en trminos de entidades (sustantivos) y verbos inferenciales (seleccionar,abstraer, comparar, ...) y de los condicionales de control (si ... entonces ...). Final-mente, estas componentes se clasican y usan de acuerdo con el papel que juegan enun conjunto de modelos estructurales de las tareas que pretendemos resolver.
Este paradigma ha sido el dominante desde 1956 hasta 1986, y en su evolucin seobserva una tendencia progresiva a separar los aspectos genricos (tareas, mtodos,inferencias y roles) de los conocimientos especcos de cada dominio de aplicacin(medicina, robtica, educacin, Web,...). La meta es aproximar la IC a las otras in-genieras, en particular a la ingeniera electrnica, donde nadie discute la utilidad dedisponer de buenos almacenes de componentes reutilizables (contadores, ALUs, me-morias,...) y de procedimientos sistemticos de sntesis a partir de estos componentes,de un modelo estructural de la tarea (esquemas de conectividad en circuitos patrn)y de un conjunto de reglas que especican el diseo a partir de un conjunto de especi-caciones funcionales. Es usual distinguir tres tipos de tareas, de anlisis (monitorizar,clasicar, diagnosticar, . . . ), de sntesis (planicar, congurar, disear, renar, . . . ) yde modicacin (reparar, controlar, supervisar, aprender, . . . ). Cada tarea se corres-ponde con un patrn muy general de razonamiento que especica el tipo de problema,sus objetivos y las actividades necesarias para alcanzarlos. Por ejemplo, se entiendecomo tarea de anlisis toda aquella para la que disponemos a priori de todas las so-luciones posibles (las clases) y el trabajo est en, dado un conjunto de observables,especicar a cul de esas clases pertenece o con cules de ellas y en qu grado soncompatibles esos observables. As, las tareas de anlisis son esencialmente tareas declasicacin. Alternativamente, en las tareas de sntesis no disponemos a priori delos resultados posibles porque se trata de un proceso de diseo y construccin conrestricciones. Finalmente, las tareas de modicacin tienen que ver, en general, conel ajuste de parmetros en la estructura de otras tareas.
La componente tarea es demasiado amplia como para disponer de un almacn detareas resueltas, por lo que a cada tarea se asocia un conjunto de mtodos (establece yrena, propn-critica-modica, abstrae-compara-rena, . . . ) que la descomponenen subtareas y especican el control. El proceso de descomposicin termina cuandose alcanza el nivel de inferencias primitivas, llamada