Está en la página 1de 12

Manual Didáctico de la asignatura:

Ampliación de Sistemas Inteligentes

Grado en Ingeniería Informática - 4º curso.

Código de asignatura: 71014069


Curso: 2022-23

Orientaciones para el estudio,


erratas, aclaraciones sobre contenido del libro base,
y material complementario.

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez


Dpto. de Inteligencia Articial - E.T.S.I. Informática - UNED

Versión del 2022-10-03


(la versión actualizada estará siempre en el curso virtual de la asignatura)

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA


Índice
Información general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Esquema de contenidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Material de estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 Búsqueda avanzada ..................................... 5
2 Computación Evolutiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Planicación ......................................... 8
4 Sistemas multiagente .................................... 9
5 Conjuntos borrosos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Lista de cambios y correcciones en este manual


Se listan a continuación los cambios realizados en cada versión respecto a la anterior (orden de más
reciente a más antigua)
1 de este manual. Solamente se incluyen aquí los cambios o modicaciones

signicativos, relevantes respecto al contenido. No se incluyen en esta lista las erratas tipográcas,
ortográcas o de puntuación no-signicativas ya corregidas que no induzcan a error ni afecten a la
comprensión.

2022-10-03 Versión inicial para el comienzo del curso

Se incluye la información sobre las orientaciones para el estudio especícas de cada tema, erratas,
aclaraciones y comentarios sobre el libro base, y también material complementario.

La composición tipográca de este texto se ha realizado por sus autores, utilizando LyX y LaTeX.

Nota: En este documento, todas las palabras de género masculino que se apliquen a personas, se deben
entender referidas en genérico a cualquiera de los sexos indistintamente.

1
En el curso virtual de la asignatura siempre estará accesible la última versión más moderna.

2
Ampliación de Sistemas Inteligentes 3

Información general
Asignatura: Ampliación de Sistemas Inteligentes (Código: 71014069)
(de la titulación: Grado en Ingeniería Informática)
Equipo docente: José Ramón Álvarez Sánchez <jras@dia.uned.es> (coordinador)
Enrique J. Carmona Suárez <ecarmona@dia.uned.es>
Toda la información básica sobre la contextualización, recomendaciones y requisitos previos, compe-
tencias, resultados, metodología, plan de trabajo y evaluación de la asignatura está especicada en
la Guía de Estudio que está accesible en su versión completa desde un enlace en el curso virtual de
la asignatura:

https://2023.cursosvirtuales.uned.es/dotlrn/grados/asignaturas/71014069-23/
La versión pública de la Guía de la Asignatura también está accesible antes del inicio de curso desde
el listado de asignaturas de la titulación en el portal de la UNED. Es importante que se consulte dicha
guía, en especial la información sobre la forma de evaluación de la asignatura.
Este manual didáctico contiene indicaciones especícas para el estudio y preparación de la asignatura.
En este documento, se proporciona una descripción detallada del temario y de los correspondientes
capítulos del libro base, así como erratas, comentarios y aclaraciones sobre cada tema, y también
posibles materiales y recursos complementarios adicionales o para ampliación de conocimientos.

Esquema de contenidos
Tema 1: Búsqueda avanzada:
ˆ Algoritmos voraces, de ramicación y poda, y de búsqueda local.
Tema 2: Computación evolutiva:
ˆ Algoritmos genéticos simples y fundamentos.
ˆ Diseño de algoritmos evolutivos.
Tema 3: Planicación:
ˆ Problema de planicación. Lenguaje de planicación.
ˆ Planicación de espacio de estados y de orden parcial.
ˆ Grafos de planicación y satisfacibilidad.
ˆ Aplicaciones de planicación.
Tema 4: Sistemas multiagente:
ˆ Arquitecturas, sociedades y comunicación de agentes.
ˆ Métodos, herramientas y plataformas.
ˆ Aplicaciones de los agentes.
Tema 5: Conjuntos borrosos:
ˆ Semántica y teoría de conjuntos borrosos.
ˆ Principio de extensión. Variables borrosas.
ˆ El condicional. Cualicación lingüística.
ˆ Razonamiento borroso. Cuanticación.

Material de estudio
El libro base utilizado para los contenidos de esta asignatura se citará en este Manual Didáctico de la
siguiente forma: [Palma Méndez and Marín Morales, 2008] y sus datos son los siguientes:

Inteligencia Articial: Técnicas, Métodos y Aplicaciones


José T. Palma Méndez y Roque Marín Morales (McGraw-Hill, 2008)
ISBN: 978-84-481-5618-3 (también disponible en formato e-book).

La mayor parte de los contenidos de los temas de la asignatura se corresponden con capítulos concretos
de este libro base, que tiene, al nal de cada capítulo, una serie de apartados con:

Universidad Nacional de Educación a Distancia


4 Manual Didáctico de la Asignatura

Lecturas recomendadas, que pueden servir al estudiante para ampliar conocimientos o buscar
explicaciones alternativas de los contenidos.
Un resumen de los contenidos del capítulo.
Un conjunto de ejercicios resueltos, que ayudarán a entender los conceptos explicados en los
contenidos. En algunos capítulos los ejercicios resueltos contienen información más detallada a
modo de ejemplos que amplían los contenidos principales.
Un conjunto de ejercicios propuestos, para que el estudiante pueda ejercitar sus conocimientos.
Una lista de referencias especícas que pueden ser también fuente de información adicional para
extender conocimientos.

Adicionalmente a estas orientaciones que ya van incorporadas en el propio libro base, se especican en
este Manual Didáctico (dentro de las orientaciones de cada tema) los siguientes apartados:

Introducción, objetivos y contexto del tema.


Contenidos: especicación del capítulo del libro base y otro posible material adicional necesario.
Recomendaciones de estudio.

Además de los ejercicios propuestos de cada capítulo del libro base, en este Manual Didáctico pueden
añadirse sugerencias para algunas otras actividades voluntarias no evaluables, tanto de tipo teórico
como práctico, así como también otras fuentes para extender conocimientos sobre cada tema. Las
referencias que se citan en este Manual Didáctico están recopiladas al nal en la sección de Referencias
de la pág. 11.

Las actividades evaluables correspondientes a las pruebas de evaluación continua se especicarán y de-
tallarán en los enunciados correspondientes que estarán disponibles en el curso virtual de la asignatura,
que además será el único medio para su entrega.

Aparte del libro base y de las lecturas recomendadas especícas de cada capítulo, el estudiante puede
encontrar otros ejercicios y explicaciones alternativas sobre algunos de los temas en los libros: [Russell
and Norvig, 2004, Nilsson, 2001].

A continuación, se incluyen las orientaciones de estudio, más erratas, avisos y comentarios, especícos
en apartados numerados correspondientes a cada tema en las páginas de este Manual Didáctico: Tema
1 en la página siguiente, Tema 2 en la página siguiente, Tema 3 en la página 8, Tema 4 en la página 9
y Tema 5 en la página 10.

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez


Ampliación de Sistemas Inteligentes 5

1. Búsqueda avanzada
1.1. Introducción, objetivos y contexto del tema

Aunque los métodos de búsqueda avanzada, que se tratan en este tema, ya habrán sido estudiados
en la asignatura Fundamentos de la Inteligencia Articial de 2º curso por los estudiantes que hayan
iniciado sus estudios de esta titulación en la UNED, es necesario hacer un repaso y dar más énfasis a
estos métodos. Las técnicas de búsqueda avanzada, y en especial los algoritmos de búsqueda local, son
un primer paso hacia los métodos de Computación Evolutiva que se tratarán en el siguiente tema, ya
que éstos también son en cierto modo métodos de búsqueda local.

1.2. Contenidos

Los contenidos teóricos de este tema se corresponden con las secciones 9.5, 9.6 y 9.7 (dentro del capítulo
9, Técnicas basadas en búsquedas heurísticas) del libro base [Palma Méndez and Marín Morales,
2008]. Aunque como hemos dicho, el objetivo de este tema es hacer un repaso de técnicas de búsqueda,
también sería conveniente que el estudiante repase los apartados previos del mismo capítulo 9 del libro
base.

1.3. Recomendaciones de estudio

Básicamente, se debe hacer un repaso de conocimientos, y quizá conviene al estudiante hacer una
exploración de otras fuentes sobre algoritmos de búsqueda que se indican en el apartado resumen (9.8)
del mismo capítulo 9.

2. Computación Evolutiva
2.1. Introducción, objetivos y contexto del tema

Como se ha visto en el anterior capítulo, las técnicas de búsqueda avanzada son el centro de la solución
a muchos problemas habituales con sistemas inteligentes. Un caso especial de técnica de búsqueda lo
constituyen las técnicas de computación evolutiva. Por tanto este tema continúa con la idea del tema
anterior al tratar de otras técnicas de búsqueda también avanzadas, aunque en este caso también se
suelen utilizar para la optimización (que es otra forma especializada de búsqueda).

El objetivo de este tema es plantear las técnicas de los Algoritmos Evolutivos en general que engloban
a una familia de técnicas: las Estrategias de Evolución, la Programación Evolutiva, la Programación
Genética y los Algoritmos Genéticos.

2.2. Contenidos

Este tema se corresponde completamente con el capítulo 11 (con el mismo título) del libro base [Pal-
ma Méndez and Marín Morales, 2008]. El capítulo comienza en la introducción por aclarar la nomencla-
tura sobre los diferentes tipos de técnicas de la computación evolutiva para clasicarlos y caracterizar-
los. En el capítulo se describe en primer lugar un algoritmo genético simple, para después profundizar
ligeramente en los fundamentos que sustentan el funcionamiento de los algoritmos genéticos. El resto
del capítulo se dedica al diseño de algoritmos evolutivos y los diferentes aspectos que los denen.

Erratas:
 
En la pág. 437 del libro base, en el apartado 11.2.2, la secuencia de la denición de P (t) comienza
por Xit y debería ser X1t . De la misma forma, la secuencia de la denición de P (0) debería comenzar
por X10 . Es decir, 1 en vez de i en ambos casos.
 

Universidad Nacional de Educación a Distancia


6 Manual Didáctico de la Asignatura
 
En la pág. 439 del libro base, en la 1ª ecuación los subíndices i del sumatorio en el denominador
deben ser j.
En la 2ª ecuación de la misma página, el subíndice i de la probabilidad dentro del sumatorio deber
ser j (el límite del sumatorio es correcto).

 

En la pág. 439, después de la 2ª ecuación, donde dice Repetir m veces los siguientes pasos: debería
decir Repetir los siguientes pasos para cada individuo a seleccionar:. De esta forma sería más
genérico y sirve para cualquier método de sustitución, ya que en este caso está describiendo un
algoritmo simple que usa estrategia elitista (ver pág. 440), por lo que debería ser más especícamente
m − 1 veces.

 

En la pág. 441, en el paso 1 del apartado Representación en el ejemplo 11.2.6, evidentemente la
fórmula, para calcular la representación en base 10 de la secuencia de bits del cromosoma, debe ser
x′ ti =
P22 t
con potencias de 2 y no de 10, es decir, la fórmula correcta es: j=1 bij · 222−j .

 

En la pág. 442, en el ejemplo de cruce se indica que se aplica un punto de cruce en la sexta posición,
pero el resultado en la gura 11.2 en realidad es el de un cruce en la quinta posición. El pie de la
misma gura también indica erróneamente posición 6 y debería indicar posición 5.

 

En la pág. 447, en la selección por ranking lineal, el coeciente amax debe ser el número esperado
de descendientes del mejor clasicado (cuya posición es 1, la menor), y amin el del peor clasicado
(cuya posición es m, la mayor). Además, para que las probabilidades estén normalizadas, debe ser
siempre amin = 2 − amax con 1 < amax ≤ 2. Si amin tuviera otro valor, habría que normalizar las
amax +amin
probabilidades dividiendo por la suma de todas que sería siempre .


2 

En la pág. 449, en la descripción del operador de mutación no-uniforme, en la función
  △ (t, y) aparece
t b
el término
1 t
T que debería ser T . La función correcta es: △ (t, y) = y · 1 − r(1− T ) .

 

En la pág. 454, en el primer punto del cálculo de la Distancia de nicho, donde dice: que pertenecen
al mismo frente Pareto que el individuo i., debería decir que pertenecen al mismo rango de no-
dominancia que el individuo i..
Ver más abajo, en el apartado Avisos y Comentarios, la aclaración sobre rango de no-dominancia.
 

Avisos y comentarios:
En un algoritmo evolutivo en general, la nueva población se elige entre la población actual y los
descendientes, P (t) ∪ C(t), pero si se trata de sustitución generacional completa en un algoritmo
genético, lo más habitual (tal como el nombre indica) es que toda la población (o casi toda, si
es con elitismo) se sustituya solo por los descendientes obtenidos después de selección, cruce y
mutación (no de la población actual). Esto es así, porque la población actual ya está representada
en los seleccionados como padres y la tasa de cruce y mutación suele ser baja.
Realmente podemos considerar que hay una gama de estrategias de sustitución generacional en
algoritmos genéticos, desde la sustitución completa sin elitismo donde todos los m individuos
se sustituyen por m descendientes, pasando por algo de elitismo donde uno o unos pocos de
mejor adecuación se mantienen y se sustituye al resto, hasta la sustitución steady-state (estado
estacionario) que es elitista en la que solo se sustituyen unos pocos de la población actual (los
de peor adecuación) y el resto se mantienen.
Se explica la optimización solamente a través de la maximización de una función de adecuación
(función de benecio). Es muy fácil convertir cualquier problema de minimizar una función de
coste en uno de maximizar una función de benecio porque mı́n {f (x)} = máx {g (x)} cuando
g (x) = −f (x).
También podemos suponer que la función de adecuación es positiva, porque se puede transformar
añadiéndole una constante positiva sucientemente grande (el opuesto del mínimo valor, si se
conoce) ya que el orden de los máximos se mantendrá.
En este capítulo se menciona varias veces (págs. 439, 446 y 467 del libro base) el muestreo
estocástico con reemplazamiento, que se reere a que en el proceso de muestreo (o simulación de

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez


Ampliación de Sistemas Inteligentes 7

probabilidades) cuando sale elegido al azar un elemento, éste se vuelve a incluir en el conjunto
para el siguiente muestreo (es decir son procesos aleatorios independientes).
El caso contrario, sin reemplazamiento, indica que una vez elegido un elemento, este ya no está
disponible para la siguiente elección al azar. Cuando se simulan números aleatorios, si el obtenido
ya fue elegido, se descarta y se elige el siguiente número aleatorio hasta que sea distinto de los
que ya han salido.
En las fórmulas para fabricar probabilidades para selección, hay que recordar normalizarlas des-
pués, dividiendo por la suma total. Por ejemplo, en la pág. 447 del libro base, en la 2ª ecuación
para selección por ranking no-lineal, la suma es casi 1 si la población es grande, pero es exacta-
Pm
mente 1 pti = 1 − (1 − q)m .
Si hubiera valores negativos, habría que desplazar todos hacia positivos. Por ejemplo, en la pro-
babilidad para selección proporcional (1ª ecuación de la pág. 439 del libro base), si en algún caso
fit < 0, f ′ ti = fit − mı́n fkt | k = 1, . . . , m

pudiese ser habría que usar en su lugar (tanto en el
numerador como dentro del sumatorio del denominador).
En el método de sustitución steady-state (pág. 447 del libro base), el ranking inverso se utiliza
directamente para elegir por el orden en la lista, pero no para generar ninguna probabilidad
(como se hace en la selección por ranking).
El cruce plano y el cruce BLX-α (pág. 448 del libro base) solo producen un hijo de cada pareja
tal como están denidos. Esto se debe tener en cuenta al calcular la cantidad de individuos a
seleccionar como padres para las parejas que generarán los nuevos descendientes necesarios en el
algoritmo.
Es importante recordar que la aplicación o no de un operador de mutación se decide para cada
gen individualmente (valor aleatorio diferente), y no sobre el individuo completo, salvo algunos
tipos especiales (intercambio mínimo, simplicaciones especícas para exámenes o PEC, etc.).
En la pág. 454 del libro base se reere al rango de no-dominancia, pero no lo explica.
En cada población lo único que conocemos es la relación entre sus individuos según los objetivos a
optimizar (relación de dominancia). Todos los individuos de la población que no sean dominados
por otros tienen rango de no-dominacia 1 (el mejor). Del subconjunto formado por los restantes
individuos, aquellos que no sean dominados por otros de ese subconjunto serán los que tengan
rango de no-dominancia 2, y así sucesivamente.

2.3. Recomendaciones de estudio

Al estudiar la sección 11.2 del libro base, es recomendable ver también en el almacén de documentos del
curso virtual, dentro de la carpeta Material adicional, el documento  ejemplo-selec-muestr-AG.pdf
con un ejemplo de selección y muestreo como en la sección 11.2.4 aplicados al ejemplo 11.2.6.

Una vez estudiado el contenido teórico (11.1 a 11.4), es importante que el estudiante intente seguir
y comprender bien los dos ejemplos desarrollados en el apartado de ejercicios resueltos (11.7): El
problema del viajante de comercio, y la selección de variables en Minería de Datos. Esta sección incluye
información adicional sobre otras variantes de algoritmos de cruce y mutación en casos especiales.

En el apartado de ejercicios propuestos (11.8) se plantea el problema del Sudoku y se proponen


diferentes alternativas de solución para después poder compararlas. También se puede ver otra so-
lución alternativa desarrollada en la página web de Raúl Expósito: https://raulexposito.com/
sudoku-algoritmo-genetico.html.

2.4. Extensión de conocimientos

Aparte de las lecturas recomendadas en apartado correspondiente en este capítulo del libro base (11.5),
también puede ser interesante el libro [Araujo and Cervigón, 2009], que tiene una perspectiva muy
práctica de los algoritmos evolutivos, para ampliar conocimientos en este tema. Además, la mitad de
ese libro contiene 10 proyectos con ejemplos prácticos de aplicación desarrollados.

Para una ampliación más profunda sobre computación evolutiva se puede ver el libro Carmona Suárez
and Fernández Galán [2019].

Universidad Nacional de Educación a Distancia


8 Manual Didáctico de la Asignatura

3. Planicación
3.1. Introducción, objetivos y contexto del tema

En este tema se plantean métodos para resolver problemas de planicación que en realidad son una
búsqueda de una secuencia de acciones para pasar desde un estado inicial al estado nal deseado.
En cierto modo es una aplicación especial de las técnicas de búsqueda vistas en los temas anteriores.
El objetivo es hacer un recorrido por los diferentes tipos de planicación, para conseguir una visión
general, aunque este tipo de problemas puede ser muy variado.

3.2. Contenidos

Los contenidos de este tema se corresponden por entero con el capítulo 13 del libro base [Palma Méndez
and Marín Morales, 2008]. En la introducción del mismo se dene lo que se entiende por un problema
de planicación y las dicultades añadidas en búsquedas muy complejas. También se explican las
diferentes suposiciones que se hacen sobre el modelo del entorno sobre el que se aplica. A continuación
se hace una denición más formal de un problema de planicación y de un lenguaje apropiado para
describir los algoritmos.

La mayor parte del capítulo se dedica a la planicación en un espacio de estados, a la planicación de


orden parcial y a la planicación basada en grafos de planicación. Se concluye con una breve revisión
de la planicación basada en satisfacibilidad y una aproximación a los problemas de planicación para
el mundo real.

Erratas:
 
En la pág. 547 del libro base, en la gura 13.2, el estado que se obtiene desde el nodo 4 al aplicar
(hacia atrás) el operador cg(p1,c1,cB), debería estar marcado como repetido, ya que contiene el
nodo 1 completo {pos(p1,cB)}, aunque también contenga otros ítems.

 

En la pág. 554 del libro base, en la línea 8, la primera precondición tiene los argumentos cambiados
de orden. Por tanto, las dos precondiciones deben ser: {en(p1,c1),pos(c1,cB)}.

 

En la pág. 562 del libro base, en la tabla 13.2, en el nivel A[2] faltan tres mutex: {dcg(p1,c1,cB)} ×
{mv(c1,cB,cA),cg(p1,c1,cA),dcg(p1,c1,cA)}.
En resumen, en ese nivel A[2] solo hay una pareja de acciones que no es mutex entre sí: mv(c1,cA,cB)
y dcg(p1,c1,cB). Todas las demás combinaciones son mutex.

 

En la pág. 577 del libro base, en la gura 13.7, dentro del apartado 2 del ejercicio resuelto 13.1, en
el nodo resultante de la expansión por desapilar(A,?x) a partir del nodo 2, no debería aparecer ya
sujeto(A), que está en los efectos positivos y deberían aparecer sobre(A,?x), libre(A) y rob-libre
de las precondiciones, y en caso de que ?x=B, también desaparecería libre(B) por estar en efectos
positivos libre(?x).
 

Avisos y comentarios:
En el apartado de heurísticas basadas en grafos de planicación del libro base (pág. 564), las
deniciones de hmáx2 y hmáxk , se reeren al máximo coste de las parejas o de las tuplas, respec-
tivamente. El coste de pareja o tupla es el primer nivel en el que los dos de la pareja, o todos los
de la tupla, pueden coexistir (no son mutex y han aparecido en el grafo de planicación).

3.3. Recomendaciones de estudio

Después del estudio de los contenidos teóricos (apartados 13.1 al 13.8) es muy importante el seguimiento
detallado de los ejercicios resueltos (13.10) en el cual se aplican las técnicas explicadas en el capítulo
a un problema del mundo de bloques. Los ejercicios propuestos son interesantes para descubrir otros

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez


Ampliación de Sistemas Inteligentes 9

casos y aplicaciones. Aunque las lecturas recomendadas (13.9) son quizá demasiado extensas para los
objetivos de este tema, sí pueden dar una visión (junto con la extensa lista de referencias) sobre lo
amplio y variado que es el problema de la planicación en los Sistemas Inteligentes.

4. Sistemas multiagente
4.1. Introducción, objetivos y contexto del tema

Una vez vistos los sistemas de búsqueda avanzada, tanto de técnicas heurísticas (tema 1) como mediante
Algoritmos Evolutivos (tema 2), más su extensión a problemas de planicación (tema 3), en este tema
se tratarán técnicas de resolución, y en cierto modo también de búsqueda, basadas en la comunicación
entre varios agentes.

El objetivo global del tema por tanto, es describir cómo se pueden distribuir diversos sistemas inteli-
gentes, o incluso tareas individuales, entre diferentes máquinas (físicas o virtuales) que se comunican
para sacar benecio de ese paralelismo de componentes.

4.2. Contenidos

El estudio de este tema se corresponde íntegramente con el capítulo 20 (con el mismo título) del libro
base [Palma Méndez and Marín Morales, 2008]. Después de la introducción, en la cuál se describe
lo que se entiende por agentes en Inteligencia Articial, se pasa a la descripción detallada de los
aspectos que denen la arquitectura de agentes deliberativos, reactivos e híbridos. A continuación se
tratan los aspectos de coordinación y colaboración entre los agentes, así como de su comunicación para
organizarse. Finalmente, se tratan las herramientas para programar agentes y sus posibles aplicaciones.

4.3. Recomendaciones de estudio

Aparte de los aspectos teóricos en los apartados del 20.1 al 20.6 del capítulo 20 en el libro base, es
importante que cada alumno estudie y comprenda los ejemplos que se dan en el apartado de ejercicios
resueltos (20.7), en el cual se presenta el análisis y diseño de un sistema multiagente para un sistema
de recomendación.

Además ese ejercicio se puede complementar con los ejercicios propuestos (20.8), en los que se sugiere
instalar la herramienta JADE para implementar los agentes del ejercicio resuelto, así como aplicarlo
a otros requisitos y pruebas. Aunque no es estrictamente necesaria para la asignatura, quienes deseen
probar la plataforma JADE encontrarán en la pestaña de documentación de la página web de JADE
un apartado sobre Tutoriales y guías, dentro del cual se encuentra el "JADE Administration Tutorial"
que es html online, y que explica
2 cómo instalar y probar los ejemplos que vienen con JADE. Es

recomendable leerlo antes de empezar, porque aunque la plataforma es en Java y el ejecutable ya está
precompilado, los ejemplos (y los agentes que se diseñen) habrá que compilarlos en Java. Solo será
necesario descargar JADE base (no los addons, ni los third party contributions).

El último apartado de los ejercicios propuestos hace referencia a la plataforma ART (Agent Reputation
and Trust testbed ) que, lamentablemente, ya no está disponible online para hacer comparaciones o
competiciones .
3

2
Atención a la nomenclatura de los comandos de consola en el tutorial, que es para entornos MS-Windows. Por
ejemplo, en entornos Linux el separador de directorios es la barra inclinada a la derecha "/" (en vez de a la izquierda),
el separador de caminos en el classpath es dos puntos ":" (en vez del punto y coma), etc.
3
Todavía es posible descargar el código fuente que se usaba en la plataforma para las competiciones: https://
sourceforge.net/projects/art-testbed/files/latest/download

Universidad Nacional de Educación a Distancia


10 Manual Didáctico de la Asignatura

5. Conjuntos borrosos

5.1. Introducción, objetivos y contexto del tema

En este último tema se aborda una parte del problema de tratar con sistemas de información compleja
o incompleta. Nos centraremos en una de las técnicas de representación que más se aplica como son los
conjuntos borrosos. Estas técnicas también se conocen por el nombre de lógica borrosa o lógica difusa
(como traducción del nombre en inglés:  fuzzy logic), cuando se aplican y adaptan los formalismos de
la lógica a los conjuntos borrosos o conjuntos difusos (del inglés:  fuzzy sets). Los conjuntos borrosos
permiten aplicar formalismos a expresiones semánticas más cercanas al lenguaje natural que tienen
una dicotomía clara y precisa.

5.2. Contenidos

Se estudia este tema en el capítulo 7 completo del libro base [Palma Méndez and Marín Morales, 2008].
Después de la introducción y de la denición formal de los conjuntos borrosos con su semántica, se
tratan las teorías de conjuntos borrosos y la variable lingüística. A continuación se estudian el principio
de extensión, las relaciones borrosas y el condicional cuando se aplican a conjuntos borrosos. El tema
concluye con la cualicación lingüística, el razonamiento borroso y la cuanticación.

Erratas:
 
En la pág. 275 del libro base, en la fórmula de la resta borrosa, es evidente que bajo el operador
supremo debe aparecer z = x − y, en concordancia con la fórmula general dada al principio del
apartado 7.6 en la pág. 274.
 
 
En la pág. 276 del libro base, en el párrafo después de la fórmula de la división borrosa, donde dice:
debe satisfacerse que b2α > 0, debe decir: debe satisfacerse que b1α > 0, ya que todo el intervalo
debe ser mayor que
1 2
cero y bα ≤ bα .
En la última frase de ese mismo párrafo, cuando se considera que A y B no están restringidos a R+ ,
debe entenderse que para que el resultado sea número borroso, B (denominador) solo puede estar o
todo en positivo, o todo en negativo (para que sea convexo sin que su soporte incluya el cero), al
hacer la composición con las partes positiva o negativa del numerador, A, que sí puede tener ambas
partes, incluido el cero, para que la división sea número borroso. Realmente, solo es necesario hacer
la división componiendo las partes positivas y negativas cuando el denominador es negativo. Si el
denominador el positivo, no afecta al orden y se puede hacer todo junto.
 
 
En la pág. 284 del libro base, en la sexta línea, debe decir que se realiza una extensión cilíndrica de
M en H × U , para que concuerde con el dominio de la relación S denida anteriormente.
 
 
En el ejemplo 7.4, en la pág. 296 del libro base, para mostrar la aplicación del cardinal relativo en
más de un predicado hay que usar un cuanticador relativo. Por tanto, donde dice aproximadamente
cinco debe decir la gran mayoría de.
En la pág. 297, el párrafo después de la primera ecuación de la solución debe quedar de la siguiente
forma:

Si nuevamente tomamos como denición del cuanticador Q=la gran mayoría el número
borroso denido en el lado derecho de la Figura 7.13, tenemos que g = µQ (96,38 %) = 1.
Por tanto el predicado es cierto.
 

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez


Ampliación de Sistemas Inteligentes 11
 
En el ejercicio resuelto 7.2, en la pág. 300 del libro base, en el enunciado, al nal de la sentencia a
representar, faltan las palabras que cero. Por tanto la primera frase del enunciado debe quedar así:

7.2. Representar mediante conjuntos borrosos el signicado d la sentencia menos de apro-


ximadamente 15 voltios mayor que cero.

De la misma forma en el último párrafo del mismo ejercicio 7.2, donde dice ...puede utilizar como
signicado de mayor el conjunto..., debe decir: ...puede utilizar como signicado de mayor que
cero el conjunto..., para que tenga sentido usar (1, 1, ∞, ∞), ya que en este ejercicio se trata de
números
 enteros. 

Avisos y comentarios:
En el ejercicio resuelto 7.2 de la pág. 300 en el libro base, se utiliza una notación compacta para
representar las distribuciones trapezoidales, que son muy usadas como función de pertenencia en
números borrosos. Se puede ver un ejemplo de este tipo de distribución, dibujado en la parte
izquierda de la gura 7.13 (pág. 294) del libro, para el cuanticador aproximadamente cinco
que en este caso se corresponde con la notación C = (2, 4, 6, 8). Esta notación puede ser útil
al realizar operaciones aritméticas borrosas de suma o resta por la relación sencilla entre los
intervalos de la representación (núcleo y soporte).
Una distribución trapezoidal se puede representar como C = (a, b, c, d), donde a ≤ b ≤ c ≤ d, y
el intervalo cerrado [b, c] es el núcleo de C ]a, d[ es el soporte de C . Si se
y el intervalo abierto
utiliza como función de pertenencia el valor para un punto x sería:

x−a
 b−a si a < x < b

    
x−a d−x si b ≤ x ≤ c
1
C (x) = máx 0, mı́n , 1, = d−x
b−a d−c 
 d−c si c < x < d


0 en el resto

Cuando b = c, la distribución trapezoidal se puede utilizar para representar funciones de per-


tenencia con forma triangular, muy habituales en números borrosos como los del ejemplo en la
gura 7.6 del libro base (pág. 277), que se podrían escribir como distribuciones trapezoidales:
A=(1.5, 2, 2, 2.5) y B=(2.5, 3, 3, 3.5).
Al principio del apartado 7.6.1 del libro base (pág. 275), cuando se dene un número borroso,
falta la condición adicional de que el conjunto borroso también debe tener un soporte acotado.
Es decir, que el grado de pertenencia debe ser cero en casi todo el conjunto de números reales R,
excepto en un intervalo acotado (el soporte).
En la pág. 284 del libro base, en el último párrafo de la sección 7.7.4, la segunda opción del
ejemplo se obtiene realmente de la imagen del conjunto M a través de la relación S  que, tal
como se indica en la pág. 282, es equivalente a la proyección de S ∩ Ex (M ). Por esto, la segunda
opción queda igual que la proyección de la primera opción.

5.3. Recomendaciones de estudio

Aparte del extenso contenido teórico, en el capítulo correspondiente a este tema se incluyen bastantes
ejercicios resueltos (7.14) que son necesarios para aanzar los conocimientos, más unos cuantos ejercicios
propuestos para completarlos.

Universidad Nacional de Educación a Distancia


12 Manual Didáctico de la Asignatura

Referencias
Lourdes Araujo and Carlos Cervigón. Algoritmos Evolutivos: Un Enfoque Práctico. Ra-Ma, 2009.
ISBN 978-84-7897-911-0.

Enrique J. Carmona Suárez and Severino Fernández Galán. Fundamentos de la Computación Evolutiva.
Marcombo, 2019. ISBN 9788426727558.

Nils J. Nilsson. Inteligencia Articial: Una nueva síntesis. McGraw-Hill, 2001. ISBN 978-84-481-2824-
1.

José T. Palma Méndez and Roque Marín Morales, editors. Inteligencia Articial: Técnicas, Métodos
y Aplicaciones. McGraw-Hill, 2008. ISBN 978-84-481-5618-3.

Stuart Russell and Peter Norvig. Inteligencia Articial: Un Enfoque Moderno. Pearson, 2 edition,
2004. ISBN 9788420540030.

José Ramón Álvarez Sánchez - Enrique J. Carmona Suárez

También podría gustarte