La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Inteligencia Artificial IA7700-T

Presentaciones similares

Presentación del tema: "Inteligencia Artificial IA7700-T"— Transcripción de la presentación:

1 Inteligencia Artificial IA7700-T
M.C. Juan Carlos Olivares Rojas

2 Agenda Repaso básico de IA sobre: Introducción Agentes lógicos
Métodos de Búsqueda Prolog Lisp Planificación

3 Basic Concepts What’s the diference bewtween Artificial Intelligence (AI) and Human Intelligence? All the sucessfully AI Systems are based on human knowledge and experience. Most of the AI Systems can be costructed only when the human intelligence can be expresed in easily form (for instance: if x then y).

4 Basic Concepts AI Systems extend human experts, but never can’t substituting either “taken” most of human intlligence. AI Systems don’t have common sense and generallity of human beings. Human Intelligence are very complex for computing.

5 Basic Concepts If a problem can not be described, then can not be programmed Human Intelligence have these features: Reasoning. Behavior. Use of Metaphores and Analogies. Concepts Creating and Use.

6 Problem Make a Java Program which calculate if a number give for the user is a Perfect Number or not. What are the steps for solving this problem?

7 Inteligence Capacity to solution all clasess of problems
Intelligence is very subjective. “Intelligence Distinguished man of animals” AI is an interdiciplinary science which involves phylosophy, matemathics, biology, electronics, etc,

8 Turing Test Alan M. Turing defined in 1950 one form to check if a machine is intelligent or not. Turing test consist to set two human and one machine in a dark room. The humans and the machine are not visible between their. One human must act like an Interviewer asking some questions to the other participants.

9 Turing Test Turing Test is passed when the interviewer can not distinguished the answer between the human and the machine. The new AI systems required the perception sense to pass the test.

10 AI Genesys Martin Minsky did cotributions to define brain models in computers. ELIZA of Joseph Weizenbaum and JULIA of Mauldin were the first AI Systems with Intelligent Dialagues. The first AI Systems were development for solving some problems like chess.

11 Génesis de la IA In 1956 John McCarthy and Claude Shanon published “Automata Studies” where defined the Automata Theory. In 1956 John McCarthy defined the AI concept, reason why he is considered the AI Father. The AI history is very old. The greeks were the first to use logic to solve a lot of problems.

12 AI Genesys In 1965 Chomsky defined the Formal Languages Theories.
McCulloh and Pits in 1943 define the relations between neurons and simple computational elements. In 1962 Rosenblatt defined the Perceptron and the Neuronal Networks Teories.

13 1.2 Applications Solution Search Logic Expert System Games
Natural Language Recognition Pattern Recognition Robotic Machine Learning Logic Games Neuronal Networks Genetic Algorithms Virtual Reality

14 Maze Problem Additional Homework: Study Graph Theory, Discret Mathematics, Computing Theory (Compilers). Arrays in some high-level programming languages. How a person in a maze can be exit without lost? Are there an optimal solution for the problem?

15 Solution Search The search term appliend in AI, it’s not mean find a specific information piece in a data reporsitory, this term implies to obtain the best solution for a problem. For instance: Finding the shortest path between two cities, or the famus “Travelling Sales Problem” (TSP). This is a NP-Complete (Not Polinomal) Problem.

16 TSP

17 TSP

18 Expert Systems They were the first AI comercial product sucessfully.
These Systems let to introduce some information in an specific knowledge area into a computer (knowledge database), they act like a human expert. These Systems simulate human reasoning by applicating especific knowledge and inferences.

19 Natural Language Processing
It’s a complex problem. For example (in spanish): “Ideas verdes descoloridas duermen furiosamente”, “Ideas furiosamente verdes descoloridas duermen”.

20 Natural Language Processing
“El banco cierra a las 3:00” “Las almejas están listas para comer” “Las almejas están listas para [ser] comidas [por nosotros]”

21 Artificial Vision It’s an application of patter recognition, this area have a lot of application such as: Medical Diagnostic Automatic Signal Processing Automatic Industrial Product Automatic Vigilance Systems OCR (Optical Character Recognition)

22 Robotic This science implies the concepts of perception, motion (spatial reasoning), planning. The main problem autonomous robots are interacting with the human-world, because exists many obstacles unexpected events and dinamic environments.

23 Learning This area studies the way in how computers can obtain new knowledge to solve a problem. In this sense, learning means to make a computer which is able to benefit for the experience obtained.

24 Games AI is applied in games to give more realism and complexity. Also AI gives the “Physics”. The n-queens problem consist in putting n chess queens on an n×n chessboard such that none of them is able to capture any other using the standard chess queen's moves.

25 Games Activitie: Obtain a Solution in a sheet of paper for a 5x5 chessboard. First 100, Second 80, Third 60 pts.

26 Genetic Algorithms It’s a computational technique inspired in biological models which are used to realize eficient search in spatial solution highly huge and complex. Genetic Algorithms are adaptative methods which can used to implement searches and optimization problems. This has given the creation of emergence areas such as evolutionary computation and swarm computing algorithms that rely on events of nature.

27 The Game of Life The Game of Life, also known simply as Life, is a cellular automaton devised by the British mathematician John Horton Conway in It is the best-known example of a cellular automaton. The "game" is actually a zero-player game, meaning that its evolution is determined by its initial state, needing no input from human players. One interacts with the Game of Life by creating an initial configuration and observing how it evolves.

28 The Game of Life The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, live or dead. Every cell interacts with its eight neighbours, which are the cells that are directly horizontally, vertically, or diagonally adjacent. At each step in time, the following transitions occur:

29 The Game of Life Any live cell with fewer than two live neighbours dies, as if by needs caused by underpopulation. Any live cell with more than three live neighbours dies, as if by overcrowding. Any live cell with two or three live neighbours lives, unchanged, to the next generation.

30 Any dead cell with exactly three live neighbours becomes a live cell.

31 The Game of Life

32 The Game of Life Find an initial solution with under 16 live cells. The best aproximation wins 100, second 80, third 60 points. Play the game at:

33 Virtual Reality It’s one of the most recent applications of AI. It’s consist in the construction of programs which achive to fool the human senses, make it belive that we are floating, running or flying in an airplane. This application has been used in a fligth simulator for pilots, astronauts and drivers.

34 Intelligent Systems and Learning
Most of the actual system say that they are intelligents (“smart”). If an application can take autonomous decisions in a real time in independet form, it’s considered intelligent. The main feature of this systems are the “adaptability” like saving energy.

35 Intelligent Systems and Learning
The most important feature of an Intelligent System are the way to representing the knowledge, the way in which the information is retrived and the way in which adquire new knowledge (learning). The representation ways (“explicitation”) of knowledge are diverse and it influences in the retrival informtion and learning ways.

36 Intelligent Systems and Learning
Always that a model is developed it has two represetation: logical and physical. This representations need “mapping” to working together. When we have a real life problem, this have to mapping in a computer schema for working in a computational system.

37 Intelligent Syst. and Knowledge
Tacking back to the Maze Problem ¿How can be represent this model and the knowledge? It can be represented with a matrix, graph, finite state machine, etc. Also it must rules for play this game. If we don’t have the two representations we can not understand and learn the game.

38 Intelligent Systems and Knowledge
In general, knowledge s define by laws and particular languages. Languages define rules. The same knowledge is structured in diferents represtentation such as database, semantic networks, frames, conceptual maps, etc., but after all it must have the same meaning (semantics).

39 Homework and Activity Activity: programming the Game of Life using a High-Level language with a 8x8 matrix. The program can be in text mode and the user only can set the initial configuration. Using a BitMap Matrix (0 and 1 values) Activity: programming the right-hand heuristic for solve a maze introduced for a used.

40 Homework and Activity ExtraPoint: programming a maze generator. The maze only have one input and one output (It can be the same that input). The maze generation must be ordened by a algorithm using a spatial solution search. An easy way is put the input and output, generate one path (the correct path) and later generate other incorrect paths, beginning of the correct path.

41 Maze Generator We must try to don´t generate a loop

42 Cellular Automata It’s a discrete model studied in computing, mathematics, biology and microstructure modeling. It consists of a regular grid of cells, each in one of a finite number of states. The grid can be in any finite number of dimensions. Time is also discrete, and the state of a cell at time t is a function of the states of a finite number of cells (neighborhood) at time t − 1.

43 Cellular Automata These neighbors are a selection of cells relative to the specified cell, and do not change (though the cell itself may be in its neighborhood, it is not usually considered a neighbor). Every cell has the same rule for updating, based on the values in this neighbourhood. Each time the rules are applied to the whole grid a new generation is created.

44 Cellular Automata Rule 30 Pattern 111 110 101 100 011 010 001 000
State 1 Rule 110 Pattern 111 110 101 100 011 010 001 000 State 1

45 Semantic Networks They are other simple form to explicity knowledge, They are conformed by graphs which coding knowledge in a taxonomic form. Nodes represent categories and Edges represents the relations between this categories. There are two types of special relatinoships: Is-A y la Have-A.

46 Semantic Networks We can access throught of each concepts to infer knowledge. The scripts are other way to represent knowledge. They are composed by components called slots, these are a set of elements concept-values. Scripts are more easily to ntroduce than mind maps.

47 Semantic Networks

48 Script Script Example: Printers Subset_of: Office_Machine
Superset_of: {Laser_Printer, Inject_Printer} Feed_Source: Door_Socket Author: Juan_Perez Date: 07_January_2008

49 Onthologies Other way to represent knowledge with a lot of use recently is Onthology, It’s consist of relations between distinct concepts like definitions. Onthologies can be represented throught languages such as XML. Knowledge representation has a great importance this is the reason because actually we talk about Knowledge Engineering.

50 Semantic Networks Onthologies act like a dictionary. Some elements like agents used this information to represent and retrieve knowledge. Frames are structure used to represent values, restricctions, process, relation, etc. Frames represent with tuples one propertie of an object. Object-Oriented Programming was originated by Frames.

51 Concept Mind

52 Onthology

53 Activity Represent one object (one diferent per student, e.g. Wireless Network Card, Telephone, Cow, etc.) and all its features with an Ontology, Script and Frame.

54 The Description and Match Method
It’s used for AI problem solving and It’s one the most basic method. The first step consists to identified all features of an object. Later, It realice a seach in a well-define set of objects. It needs two very import methods: the extractor and evaluator of knowledge.

55 The Desc. and Match Method
When the match process is doing, one posibility is the object don’t be the same pattern in the knowledge Database. This is the reason because We need a Similarity Function. For Example (In Spanish): AMOR Love a person or thing for over all things Word composeb dy 4 characters: ‘A’, ‘M’, ‘O’ and ‘R’ yuxtapuestos

56 The Desc. and Match Method
AMOR = AMOR Exact Macth AMOR = ROMA 0% similarity but contains for characters Amor = AMOR 25% similarity, contains all character but in uppercase Amor = Cariño 0% similarity but the same meaning Amor = Amar 75% it’s a consequence

57 The Desc. and Match Method
Circle Description: Figure formed by al the points which distance are equidistant of the center point in an angle of 0 a 360 grades. Properties: Center (point) Diametrer (twice radio) Areas

58 The Desc. and Match Method
100% Similarity = = ?% Have the same form but diferent size and color ?% Have the same high but diferent width = ?% Have the same color =

59 The Desc. and Match Method
It`s used in multiples branches such as: Digital Fingerprint Recognition Voice Recognition Natural Language Recognition Software Requirement Validation Etc. We must represent in a correct form the knowledge if We can compare.

60 The Farmer, Fox, Goose and Wheat Problem
A farmer wants to move himself, a silver fox, a fat goose, and some tasty grain across a river, from the west side to the east side. Unfortunately, his boat is so small he can take at most one of his possessions across on any trip. Worse yet, an unattended fox will eat a goose, and an unattended goose will eat grain, so the farmer must not leave the fox alone with the goose or the goose alone with the grain. What is he to do?

61 The Farmer, Fox, Goose and Wheat Problem
¿Se puede utilizar el método de descripción y pareamiento?

62 The Farmer, Fox, Goose and Wheat Problem

63 Activity In a Software Development Company 5 programers implement the same algorithms obtained the follow results: Programmer LOC Return Function Call 1 66 20 2 41 10 3 68 5 8 4 90 34 75 12 14

64 Activity The enterprise needs to know how are the best pair (pair programing). For trying to solve this problem We need to define a similarity function such as: s(v, w)=|p1-q1| + |p2-q2| + |p3-q3| Where: v and w are programmers represent in the form of (p1, p2, p3)

65 Activity pi is a propertie
We also need a criteria for similarity in this case consider the lower punctuation as the best solution. Programming the solution to obtain the best pair. Programming the solution to obtain the best pair in a specific propertie

66 Activity If We changed the criteria in where LOC are more important 60% than the other properties, how must be the new similarity function? If We need one group with the 3 best programmer, how must be the similarity function?

67 Analogy Problems It’s other form to problem solving tha it’s used in AI. Analogy is a special type of relation that define how are objects represented los objetos de una categoría y como obtener sus predecesores y antecesores inmediatos. Generalmente se habla de análogo cuando se tiene el mismo tipo de relación aun cuando sean entidades diferentes.

68 Problemas de Analogías
Alguna vez nos hemos preguntado ¿por qué en la mayoría de los exámenes de admisión generalmente son más importantes que los de conocimientos? Por que en la mayoría de los casos el conocimiento de cierta forma se puede adquirir pero la forma de aprender y razonar es sumamente complicado. En muchos casos son más importantes las reglas que el conocimiento.

69 Problemas de Analogías
En matemáticas y en el área de programación se utiliza mucho la analogía para resolver problemas. De acuerdo con Polya, para resolver problemas se necesita de los siguientes pasos: 1) Comprender el problema 2) Concebir un plan 3) Ejecutar el plan y, 4) Examinar la solución.

70 Problemas de Analogías
C 1 2 3 4 ¿Cómo quedarían D y 5?

71 Problemas de Analogías
¿Qué problemas se presentan con la Abstracción de la Figura D o bien de la Figura 3? La resolución de problemas por analogía tiene como base cierto conocimiento previo en ocasiones difícil de obtener. A B C 1 2

72 Reconocimiento de Abstracciones
A lo largo de esta presentación se ha podido comprobar que prácticamente el problema está resuelto si el problema está descrito. El reconocimiento de abstracciones es un concepto muy subjetivo dado que éstas son combinaciones de estados mentales y eventos. Los SI se basan fundamentalmente en reglas ECA (Evevento-Condición-Acción)

73 Reconocimiento de Abstracciones
Generalmente respondemos a estímulos (eventos), y en base a ellos vemos cuales son importantes para nosotros y nos comportamos de cierta manera. Para lo que a una persona le representa algo para otra representa cosas totalmente distintas. La abstracción permite llegar a cierto tipo de conclusiones y preguntas resueltas.

74 Interpretación del Conocimiento
La interpretación del conocimiento, es decir la utilización de ese conocimiento es un factor muy importante que aun la IA no ha podido definir bien. El conocimiento se puede interpretar de muchas formas y sus áreas de aplicación son diversas. Existen muchas corrientes filosóficas que le tratan de dar sentido al conocimiento: empirismo y racionalismo científico.

75 Interpretación del Conocimiento
Se pretende que las reglas y hechos (base de conocimientos) permitan resolver problemas y que a su vez de la resolución de estos problemas se obtenga nuevos conocimientos.

76 Homework Make a survey (Caracterization) about the frecuencie of each character in Spanish Alfabet. For example, in % how many ‘c’ appears. This surve will aplied on Inteligent Cryptoanalisys System. Research about cryptograph system by transposition and substitution algorithms.

77 Métodos Ciegos Las redes son grafos dirigidos, simples con pesos donde se tienen dos nodos especiales: un origen y un destino sin entradas y salidas respectivamente. Las redes se utilizan en muchos problemas de computación, desafortunadamente para muchos problemas, el espacio de soluciones es grandísimo por lo que la búsqueda se volvería muy extensa.

78 Métodos Ciegos De esta forma, se necesitan de mejores mecanismos de búsqueda. En muchas ocasiones el espacio de búsqueda se puede reducir simplemente con observar simetrías, ignorar detalles y encontrar las abstracciones apropiadas. Un ejemplo muy representativo de este problema es el espacio de soluciones que se obtiene en el juego puzzle de las ocho piezas. Se requieren de 9! = 362,880 nodos para representar las posibles opciones.

79 Métodos Ciegos El primer método de búsqueda optimizada es el de búsqueda primero en anchura. La idea de este método es buscar primero en todos los nodos de un mismo nivel sin tener que recurrir por todos los niveles del grafo. Para ello se necesita definir una función de estados sucesores que indique los nodos que se producirán al aplicar todos los operadores a dicho nodo.

80 Métodos Ciegos Existen otras variantes de este método como la búsqueda de coste uniforme, la cual visita los nodos de acuerdo a sus pesos. El algoritmo BFS (Breadth First Search) es el siguiente: Sea G = (V, A) un grafo conexo, V’ = un conjunto de vértice V, A’ un vector de arcos inicialmente vacío y P un vector auxiliar inicialmente vacío:

81 Búsqueda en Anchura Se introduce el vértice inicial en P y se elimina del conjunto. Mientras V’ no sea vacío repetir los puntos 3 y 4. En otro caso parar. Se toma el primer elemento de P como vértice activo.

82 Búsqueda en Anchura Si el vértice activo tiene algún vértice adyacente que se encuentre en V’: Se toma el de menor índice. Se inserta en P como último elemento. Se elimina de V’. Se inserta en A’ el arco que le une con el vértice activo. Si el vértice activo no tiene adyacentes se elimina de P.

83 Búsqueda en Profundidad
También se le conoce como vuelta atrás. Consume menos memoria que el método en anchura pero en algunas ocasiones puede ser contraproducente por lo que se llega a limitar su profundidad. Los ejemplos más utilizados en búsqueda de profundidad son los algoritmos de preorden, enorden, postorden. Los cuales trabajan sólo con arboles binarios.

84 Búsqueda Heurística Heurística viene del griego heuriskein, que significa descubrir. De la misma palabra se deriva la exclamación: ¡Eureka!

85 Homework Investigar que problemas de los visto en clases pueden resolver a través de Búsqueda en Anchura y en Profundidad. Investigar que otro tipo de problemas pueden ser resueltos utilizando búsquedas en anchura y en profundidad.

86 Backtracking Este algoritmo consiste en un recorrido en profundidad o anchura analizando sus posibles estados futuros y regresando al estado previo si no fue posible una solución satisfactoria. El problema de las n reinas se soluciona de esta forma al igual que otros problemas

87 Problema del Caballo En un tablero de n*n (donde n>2) encontrar todos los movimientos de un caballo que sin repetir ninguna casilla llenen cada una de las casillas del tablero.

88 Problema del Caballo Recordar que los caballos se mueven en forma de L una posición en un sentido (vertical/horizontal) y dos en el otro sentido (horizontal/vertical). Por ejemplo si se mueve una posición al frente, se tendrá que mover la pieza dos posiciones a la izquierda o a la derecha. Tarea: programar el problema del Caballo. Se parte por heurística de una posición X de la matriz.

89 Problema del Caballo La matriz está inicializada con 0s. Se coloca un 1 en la primera posición. Se escoge una nueva solución que no esté ocupada colocando el siguiente número (secuencia del viaje). Si todas las celdas están ocupadas se debe regresar a la solución anterior y tratar con un nuevo camino. Se necesita ir guardando las celdas ya visitadas en un nivel

90 Problema del Caballo El algoritmo termina cuando o se llenan todas las celdas o cuando se tiene la “mejor” solución (más celdas llenas). Se recomienda utilizar búsqueda por anchura calculando previamente el espacio de solución de cada nivel. El usuario deberá dar el tamaño de la matriz y la posición inicial del caballo y el programa deberá mostrar la matriz con los movimientos del caballo.

91 Búsqueda Heurística Heurística viene del griego heuriskein, que significa descubrir. De la misma palabra se deriva la exclamación: ¡Eureka! El algoritmo más conocido de este tipo es el A* que basa su funcionamiento en obtener dos distancias del origen a la raíz y de la raíz al nodo objetivo. f(n) = g(n) + h(n)

92 La mejor trayectoria Es otro algoritmo heurístico que trata de encontrar la mejor trayectoria depende de lo que se trate. Ejemplo de este tipo de algoritmos se encuentra la ruta crítica, la ruta más corta, el canal con más ancho de banda, etc. A los algoritmos heurísticos reciben el nombre de búsqueda informada, mientras que los ciegos son búsquedas no informadas.

93 La mejor trayectoria Las heurísticas no son otra cosa que estrategias de búsquedas informada. Desafortunadamente las heurísticas no lo miden todo, simplemente pretende encontrar una solución lo mejor posible al problema. Un método heurístico más avanzado lo comprenden los algoritmos genéticos.

94 Trayectorias Redundantes
Son algoritmos que pretenden eliminar todos aquellos espacios que no son soluciones viables dado que consume mucho tiempo. Los algoritmos de planificación son un ejemplo de este tipo de herramientas. Se debe cuidar de no repetir estados. Una posible solución es ver la simetría de los árboles.

95 La Mejor Trayectoria Son dependientes a los máximos y mínimos locales.
En la naturaleza nos basamos mucho en como trabajan los organismos como las abejas y en fenómenos físicos como el recocido simulado.

96 Problema del Cajero Automático
Los cajeros automáticos (ATM por sus siglas en inglés) son dispositivos embebidos cuya función consiste en despachar a clientes proporcionando dinero en efectivo. Cuentan con recursos finitos en este caso billetes de distintas nominaciones $1000, 500, 200, 10 y 50 en distintas cantidades. Al solicitar una cantidad el cajero debe “ingeniarselas” para dar la mejor combinación de dinero.

97 Problema del Cajero Automático
Se debe brindar de una buena combinación ya que sino se pueden acabar los billetes de cierta denominación pudiendo dejar sin operaciones a muchos clientes. Una heurística balanceada muy simple pero poco eficiente consiste en repartir dinero de una denominación hasta tratar de completar la suma (por ejemplo dar billetes muy altos –puede ser bajos pero no es tan eficiente- y después completarlos con los de siguiente denominación).

98 Problema del Cajero Automático
Esta solución da como resultado que primero se acaben todos los billetes de una denominación. Una solución simple y más eficiente es repartir dinero en forma balanceada, empezando por billetes de altas denominaciones hasta bajas. Este esquema es más justo ya que va quitando billetes por igual, desgraciadamente esta es su deficiencia ya que un billete de 50 tendría un peso igual a uno de 500.

99 Problema del Cajero Automático
Una mejor solución consiste en ponerle ponderación a cada recurso (billete) de acuerdo a su valor monetario y a la cantidad de recurso disponible, por lo que se ocuparía una función de similaridad que quizás tenga que ser dinámica y quizás no muy sencilla de calcular.

100 Problema del Cajero Automático
En general existen diversas alternativas de solución para el mismo problema. En el caso de los cajeros se prefiere una heurística de acabar primero los billetes más grandes ya que de los chicos hay mayor cantidad.

101 Problema del Cajero Automático
Otra solución de entre las mejores consiste en crear diversas soluciones para después comparar aquellas que sean más benéficas, pero esto requiere de tiempo y de espacio. Este problema se puede solucionar a través de autómatas (gramáticas), búsquedas ciegas, búsquedas heurísticas y algoritmos de planificación.

102 Problema del Cajero Automático
Tarea: realizar un programa que funcione como cajero automático. El usuario deberá introducir un valor a retirar y el cajero deberá indicarle la combinación de dinero. El programa debe preguntar la cantidad de billetes al inicio de la simulación, por lo que se puede calcular el total de dinero. Existe un límite máximo de retiro de $4000 en múltiplos de 50

103 Problema del Cajero Automático
El cajero deberá validar que la cantidad no se pase y que el sistema la pueda dar (que sea múltiplo y haya recurso). En caso de que el sistema por falta de recurso del sistema no pueda cubrir la cantidad total, se dará lo que quede en el cajero activando una alarma de dinero no disponible. El programa en cada transacción mostrará la cantidad de billetes disponibles así como la combinación de billetes entregada.

104 Problema del Cajero Automático
El programa deberá mostrar cuantos clientes ha atendido (este parámetro será el que mida el desempeño del sistema para las mismas entradas). Se deberá ejecutar el programa n veces hasta que se acabe el dinero. Se recomienda que se realice una opción de simulación en donde se generen retiros al azar.

105 Árboles y Búsqueda con Adversarios Métodos Algorítmicos
En este tipo de búsqueda no sólo importa los movimientos de una persona o proceso implica además considerar otro factor cambiante llamado jugador adversario. Todo método de búsqueda con adversario debe de tener los siguientes elementos: estado inicial, función sucesor, test terminal y una función de utilidad que ayuda a determinar los pesos.

106 Búsqueda con Adversarios
El algoritmo más representativo es el algoritmo minimax donde a un jugador se le asigna las propiedades de max y al otro min. Las decisiones de que ruta tomar se toman en base a la siguiente función: vMiniMax(n) = Utilidad(n) si n es un estado terminal ó max elemento s perteneciente a sucesores(n) vMiniMax(s) si n es un estado MAX ó

107 Búsqueda con Adversarios
min elemento s de sucesores(n) vMiniMax(s) si n es un estado min. Por ejemplo para el juego del gato, la función para vMiniMax contaría todas aquellas posiciones que están libres para MAX – todas aquellas posiciones para MIN. Si la posición es ganadora para MAX devuelve un número infinito positivo, si la posición es ganadora para MIN

108 Algoritmo Minimax Función MiniMax(Estado) Devuelve Acción V ← Valor_Max(Estado) devolver Acción de Sucesores[Estado] con valor V. Función Valor_Max(Estado) Devuelve Utilidad Si test_terminal(Estado) Entonces Devolver Utilidad[Estado] V ← –∞

109 Algoritmo Minimax Para cada S ∈ sucesores[Estado] Hacer V ← Max(V, Valor_MIn(S)) devolver V Función Valor_Min(Estado) Devuelve Utilidad Si test_terminal(Estado) Entonces Devolver Utilidad[Estado] V ← ∞

110 Algoritmo Minimax Para cada S ∈ sucesores[Estado] Hacer
V ← Min(V, Valor_Max(S)) devolver V

111 Poda Alfa-Beta Es muy parecido al algoritmo de MiniMax pero permite no expandir nodos que no se vayan a ocupar. En un juego es imposible o impráctico realizar todo el árbol de juego. Una mejor forma es almacenar los elementos del árbol que ya se tienen para que no haya necesidad de volver a calcularlos.

112 Poda Alfa-Beta Es un algoritmo que pretende mejor al algoritmo minimax calculando dos valores umbrales, que representan las cotas inferior (Alfa) para los nodos maximizantes y una cota superior (Beta) para los nodos minimizantes. Función Alfa-Beta(Estado) Devuelve Acción V ← Valor_Max(Estado, –∞, ∞) devolver Acción de Sucesores[Estado] con valor V.

113 Poda Alfa-Beta Función Valor_Max(Estado,Alfa,Beta) Devuelve Utilidad Si test_terminal(Estado) Entonces Devolver Utilidad[Estado] V ← –∞ Para cada S ∈ sucesores[Estado] Hacer V ← Max(V, Valor_Min(S,Alfa,Beta)) Si V ≥ Beta Entonces devolver V Alfa ← Max(Alfa,V) devolver V

114 Poda Alfa-Beta Función Valor_Min(Estado,Alfa,Beta) Devuelve Utilidad Si test_terminal(Estado) Entonces Devolver Utilidad[Estado] V ← ∞ Para cada S ∈ sucesores[Estado] Hacer V ← Min(V, Valor_Max(S,Alfa,Beta)) Si V ≤ Alfa Entonces devolver V Beta ← Min(Beta,V) devolver V

115 Árboles y Búsqueda con Adversarios Métodos Heurísticos
Las heurísticas pueden ser muy variadas y depender del tipo de juego. Para el juego de ajedrez, se puede definir matemáticamente una función que permita encontrar la mejor jugada a realizar. Como se puede hacer esto?, a través de la colocación de valores a los distintos tipos de elementos como los caballosmreyna, etc.

116 Representación del Conocimiento
El conocimiento debe estar expresado en un lenguaje simbólico para que pueda ser reconocido por una computadora o ‘agente’. Los agentes pueden consultar a la base de conocimientos para resolver problema o bien agregar nuevos conocimientos. Los agentes pueden obtener esta nueva información a través de la inferencia lógica.

117 Representación del Conocimiento
Inicialmente el agente cuenta con unos conocimientos básicos llamados antecedentes o hechos. Se cuenta con una serie de reglas que definen la forma de deducir conocimiento. El agente pregunta a estas reglas y hechos para poder razonar que opción le conviene más ejecutar.

118 El Juejo del Wumpus Percepciones: (4 sensores) Acciones:
{Hedor, Brisa, Resplandor, Nada} El agente no percibe su situación Acciones: Ir hacia adelante, girar izda/dcha 90º Agarrar (estando en la casillla) Disparar (sólo una flecha) Objetivo: salir con el oro lo antes posible 1000 ptos: salir con el oro 1 pto penaliza cada acción. Penaliz. Máxima: ptos

119 Lógica de Proposiciones
La sintaxis nos indica cuáles son los enunciados que se pueden construir. Los enunciados atómicos se componen de una sola proposición. Una proposición tiene un solo valor de verdad: Verdadero o Falso.

120 Lógica de Proposiciones
Los enunciados complejos se forman a partir de enunciados más simples y el empleo de conectivos lógicos. Los Conectivos Lógicos son cinco: NO (~) también conocida como Negación. Y (^) también conocida como Conjunción. O (v) también conocida como Disyunción. Implicación (⇒) también conocida como Condicional. Sí y sólo si (⇔) también conocida como Bicondicional.

121 Lógica de Proposiciones
Las expresiones que contienen conectivos lógicos se interpretan siguiendo el orden de precedencia que corresponde al mostrado en la tabla anterior. Por ejemplo: ~P ^Q v R ⇒ S equivale a: (~(P) ^(Q v R)) ⇒ S Además, se emplean los paréntesis para evitar ambigüedades.

122 Lógica de Proposiciones
La semántica nos define las reglas que permiten determinar el valor de verdad de un enunciado respecto de algún modelo. Con dos símbolos proposicionales existen 4 modelos posibles para cada uno de los 5 conectivos lógicos, ¿Cómo quedarían las tablas de verdad?

123 Lógica en Wumpus Regresemos al mundo del Wumpus para visualizar la construcción de la base de conocimiento. Notación: Bij indica que hay brisa en la celda (i,j). Pij indica que hay un pozo en la celda (i,j). A partir de un conocimiento inicial: E1: ~P11

124 Lógica en Wumpus Cuando hay brisa en una casilla implica que en una casilla contigua hay un pozo: E2: B11 ⇔ P12 v P21 Ahora agregamos la primera percepción, no se percibe brisa en la celda (1,1): E3: ~B11 ¿Cómo relacionar los enunciados 2 y 3 para obtener nuevo conocimiento?

125 Lógica de Proposiciones
Cuando los resultados de una Tabla de Verdad son todos verdaderos, a esa proposición compuesta se le llama Tautología. Como ejemplo tenemos a: (p v ~p) Cuando los resultados de una Tabla de Verdad son todos falsos, a esa proposición compuesta se le llama Contradicción. Como ejemplo tenemos a: (p ^ ~p)

126 Lógica de Proposiciones
Básicamente la inferencia es la implementación de una implicación. Los enunciados conocidos como verdaderos forman parte del antecedente. El consecuente es un nuevo enunciado cuya veracidad se desprende de los anteriores. Simbólicamente se representa así: antecedente :: consecuente

127 Lógica de Proposiciones
La equivalencia lógica se presenta cuando dos enunciados α y β tienen los mismos valores de verdad para el mismo conjunto de modelos. A continuación mostramos una tabla con las equivalencias lógicas más comunes: Doble Negación: ~( ~p ) ≡ p

128 Lógica de Proposiciones
Leyes Conmutativas ( p v q ) ≡ ( q v p ) ( p ^ q ) ≡ ( q ^ p ) Leyes Asociativas ( p v q ) v r ≡ p v ( q v r ) ( p ^ q ) ^ r ≡ p ^ ( q ^ r )

129 Lógica de Proposiciones
Leyes Distributivas p v ( q ^ r ) ≡ ( p v q ) ^ ( p v r ) p ^ ( q v r ) ≡ ( p ^ q ) v ( p ^ r ) Leyes de Idempotencia ( p v p ) ≡ p ( p ^ p ) ≡ p

130 Lógica de Proposiciones
Leyes de DeMorgan ~( p v q ) ≡ ~p ^ ~q ~( p ^ q ) ≡ ~p v ~q Leyes de Identidad ( p v ~p ) ≡ t ( p ^ ~p ) ≡ f ( p v f ) ≡ p ( p v t ) ≡ t

131 Lógica de Proposiciones
Leyes de Identidad ( p v f ) ≡ f ( p v t ) ≡ p Leyes de la Implicación (p ⇔ q) ≡ (p ⇒ q) ^ (q ⇒ p) (p ⇒ q) ≡ (~q ⇒ ~p) (q ⇒ p) ≡ (~p ⇒ ~q) (p ⇒ q) ≡ (~p v q)

132 Lógica de Proposiciones
Reglas de Inferencias La siguiente implicación lógica se llama Modus Ponens y corresponde a la siguiente inferencia: p ^ ( p ⇒ q ) :: q Ejemplo: p: Estudio p ⇒ q: Si estudio aprobaré Matemáticas q: Entonces, Aprobaré Matemáticas

133 Lógica de Proposiciones
La siguiente implicación lógica se llama Modus Tollens y corresponde a la siguiente inferencia: ( p ⇒ q ) ^ ~q :: ~p Ejemplo: p ⇒ q: Si estudio apruebo Matemáticas ~q: No aprobé Matemáticas ~p: Entonces, no Estudié

134 Lógica de Proposiciones
La siguiente implicación lógica se llama Silogismo Hipotético y corresponde a la siguiente inferencia: ( p ⇒ q ) ^ ( q ⇒ r ) :: ( p ⇒ r ) Ejemplo: p ⇒ q: Si estudio apruebo Matemáticas q ⇒ r: Si apruebo Matemáticas me regalan un auto p ⇒ r: Entonces, Si estudio me regalan un auto

135 Lógica de Proposiciones
La siguiente implicación lógica se llama Silogismo Disyuntivo y corresponde a la siguiente inferencia: ( p v q ) ^ ~p :: q Ejemplo: p v q: Hay que estudiar Francés o Alemán ~p: No estudio Francés q: Entonces, Estudio Alemán

136 Lógica de Proposiciones
La simplificación conjuntiva consiste en eliminar uno de los términos de una conjunción: ( p ^ q ) :: q o también: ( p ^ q ) :: p Por el otro lado, la amplificación disyuntiva permite agregar un nuevo término: p :: ( p v q )

137 Lógica en Wumpus Se tiene que: E2: B11 ⇔ P12 v P21 E3: ~ B11
Por lo que tenemos el siguiente razonamiento: E4: (B11 ⇒ (P12 v P21)) ^ ((P12 v P21) ⇒ B11) E5: ((P12 v P21) ⇒ B11) E6: ~B11 ⇒ ~(P12 v P21) E7: ~(P12 v P21) E8: ~P12 ^ ~P21

138 Lógica en Wumpus Del razonamiento anterior concluimos que no hay un pozo en la casilla (1,2) ni en la (2,1). Ahora veamos el razonamiento cuando el agente llega a la celda (1,2). E9: ~B12 E10: B12 ⇔ P11 v P13 v P22 E12: ~P22

139 Lógica en Wumpus Concluimos que no hay pozo ni en la casilla (1,3) ni en la (2,2). E11: ~P13 E12: ~P22 Pero cuando el agente visitó la celda (2,1) percibió una brisa: E13: B21 E14: B21 ⇔ P11 v P31 v P22

140 Lógica en Wumpus Dado que ya verificamos que no hay pozo en las celdas (1,1) y (2,2), resulta evidente la conclusión que: E15: P31 Es conveniente que nuestra base de conocimiento esté basada solamente en conjunciones y disyunciones.

141 ( p11 v … v p1k ) ^ … ^ ( pn1 v … v pnk )
Lógica Proposicional Cualquier enunciado compuesto puede ser transformado a uno equivalente que esté en la FNC La Forma Normal Conjuntiva es la conjunción de n disyunciones de k elementos: ( p11 v … v p1k ) ^ … ^ ( pn1 v … v pnk )

142 Lógica Proposicional A continuación se describe un procedimiento para convertir a nuestra FNC: Eliminar ⇔ usando la equivalencia: (p ⇔ q) ≡ (p ⇒ q) ^ (q ⇒ p) Eliminar ⇒ usando la equivalencia: (p ⇒ q) ≡ (~p v q)

143 Lógica Proposicional Simplificar ~ usando las equivalencias:
~( ~p ) ≡ p ~( p v q ) ≡ ~p ^ ~q ~( p ^ q ) ≡ ~p v ~q Finalmente, aplicar la ley distributiva donde sea necesario. p v ( q ^ r ) ≡ ( p v q ) ^ ( p v r )

144 Lógica Proposicional E2: B11 ⇔ (P12 v P21)
(B11 ⇒ (P12 v P21)) ^ ((P12 v P21) ⇒ B11 ) (~B11 v P12 v P21) ^ (~(P12 v P21) v B11 ) (~B11 v P12 v P21) ^ ((~P12 ^ ~P21) v B11 ) (~B11 v P12 v P21) ^ (~P12 v B11) ^ (~P21 v B11)

145 Lógica Proposicional Para demostrar que una implicación BC :: α es válida, se utiliza el método de reducción al absurdo. Esto es, probar que su negación: BC ^ ~α es una contradicción. Para ello se lleva a la FNC y luego se prueba que es equivalente a una cláusula vacía.

146 Lógica Proposicional Probar que: E2 ^ E4 :: ~P12.
(B11 ⇔ (P12 - P21)) ^ ~B11 :: ~P12 Se convierte a FNC: (~B11 v P12 v P21) ^ (~P12 v B11) ^ (¿P21 v B11) ^ ~B11 :: ~P12

147 Lógica Proposicional Y para probar por reducción al absurdo, tenemos la negación: (~B11 v P12 v P21) ^ (~P12 v B11) ^ (~P21 v B11) ^ ~B11 ^ P12 El proceso de simplificación funciona como sigue: Si tomamos los primeros dos paréntesis, observamos que contienen a: ~B11 y B11, respectivamente.

148 Lógica Proposicional Como no pueden ser ambos verdaderos simultáneamente, entonces, o (P12 v P21) o bien (~P12 ) son verdaderos, lo que se reduce a la siguiente expresión: (P12 v P21 v ~P12) Como (P12 v ~P12 ) es una tautología, la expresión anterior se reduce a: (P21)

149 Lógica Proposicional Similarmente, los dos paréntesis siguientes, también contienen a: ~B11 y B11, por lo que la expresión simplificada queda: (~P21) Como ambas no pueden ser verdaderas, la conjunción resulta en una expresión nula.

150 Ejercicios ( p ⇒ q ) ^ ( q ⇒ r ) p ^ ( p ⇒ q ) ((p ^ q) ⇔ (p v ~q))
((~(p ⇒ q) ^ r ) v ~(p ⇔ ~q))

151 Lógica de Predicados Hay que aprovechar la característica declarativa y la composicionalidad de la lógica proposicional. Para ello definimos dos tipos de elementos: Los objetos (Agente, Flecha, Wumpus, Pozo) Las relaciones entre ellos, generalmente vinculadas por un verbo. El Agente lanzó una Flecha

152 Lógica de Predicados Las relaciones unitarias también se conocen como Propiedades y se vincula un objeto con una característica por el verbo SER: La Pelota es roja. Las Funciones son un tipo especial de relación que involucra un solo objeto y devuelven un valor: El padre de Uno más que

153 Lógica de Predicados Uno sumado a Dos es igual a Tres
Objetos: Uno, Dos y Tres. Relación: es igual a. Función: sumado a; el resultado es un objeto, llamado: Uno sumado a Dos. Las Casillas que rodean al Wumpus apestan. Objetos: Casillas y Wumpus. Relación: que rodean al. Propiedad: apestan.

154 Lógica de Primer Orden La lógica de primer orden se construye sobre: Hechos, Objetos y Relaciones. La lógica de primer orden es universal porque puede expresar cualquier cosa que pueda ser programada. El dominio de un modelo es el conjunto de objetos que contiene.

155 Lógica de Primer Orden Una relación binaria es un conjunto de pares ordenados. Por ejemplo, si Hugo, Paco y Luis son hermanos se denota así: H = { (Hugo, Paco), (Hugo, Luis), (Paco, Luis), Por ejemplo, si Pepe es el padre de Hugo, Paco y Luis, tenemos entonces:

156 Lógica de Primer Orden Padre_de(Hugo) → Pepe Padre_de(Paco) → Pepe
Padre_de(Luis) → Pepe Padre_de(Pepe)  ? A continuación se muestra la gramática de la LPO en BNF.

157 Lógica de Primer Orden Los símbolos se agrupan en tres clases:
Símbolos de constante, que representan a los Objetos. Cada símbolo constante nombra a exactamente un objeto en el mundo, no todos los objetos necesitan tener nombres y algunos pueden tener más de un nombre. Ejemplo: Juan, Casa, Wumpus.

158 Lógica de Primer Orden Símbolos de predicado, que representan a las Relaciones. Ejemplos: Vecino, Hermano, … Símbolos de función. Ejemplos: Coseno, Padre_de, Oficina_de Los símbolos de predicado y de función tienen una Aridad que establece el número de argumentos.

159 Lógica de Primer Orden 〈Enunciado〉 → 〈Sentencia Atómica〉 | (〈Enunciado〉〈Conector〉〈Enunciado〉) | 〈Cuantificador〉〈Variable〉…〈Enunciado〉 | ~〈Sentencia〉 〈Sentencia Atómica〉 → 〈Predicado〉(〈Término〉…) | 〈Término〉 = 〈Término〉 〈Término〉 → 〈Función〉(〈Término〉…) | 〈Constante〉| 〈Variable〉

160 Lógica de Primer Orden 〈Conector〉 → . | - | ⇔ | ⇒
〈Cuantificador〉 → ∀ | ∃ 〈Constante〉 → Martin | | Gato | X | … 〈Variable〉 → a | x | s | … 〈Predicado〉 → Previo | Gusta | Llueve | Falla | … 〈Función〉 → Padre_de | Cabello_de | Oficina_de | …

161 Lógica de Primer Orden Un término es una expresión lógica que se refiere a un objeto. Los símbolos constantes son términos Los símbolos de función son términos. Las variables también son términos. Una sentencia atómica está formada por un símbolo predicado seguido por una lista entre paréntesis de términos.

162 Lógica de Primer Orden Por ejemplo: Hermano(Roberto,Juan) indica que Roberto es el hermano de Juan. Las sentencias atómicas pueden tener argumentos que son términos complejos: Casado(Padrede(Roberto),Madrede(Juan)) Se pueden usar conectores lógicos para construir sentencias más complejas.

163 Lógica de Primer Orden Ejemplo:
Hermano(Roberto,Juan) ∧ Hermano(Juan,Roberto) Es verdadero si Juan y Roberto son hermanos, pues la relación es simétrica. Los cuantificadores nos permiten expresar propiedades de colecciones de objetos.

164 Lógica de Primer Orden Hay dos cuantificadores en lógica de primer orden: universal y existencial. Cuando un enunciado abarca a todos los posibles valores del dominio de una variable, entonces se emplea el Cuantificador Universal, que se denota por ∀. El cual se enuncia con frases similares a: “Para todos …”, “Todos …” Ejemplo: Todos los gatos son mamíferos.

165 Lógica de Primer Orden Esta proposición es falsa si al menos un solo valor de la variable no satisface al enunciado. La representación simbólica es: ∀x Gato(x) ⇒ Mamifero(x) Sin embargo, mucha gente cae en el error de interpretarla como: ∀x Gato(x) ∧ Mamifero(x)

166 Lógica de Primer Orden Aparentemente son equivalentes, pero esta segunda forma es más fuerte que la anterior, pues la primera será verdadera cuando el antecedente es falso ( x es un perro) Cuando un enunciado indica que al menos uno de los posibles valores del dominio de una variable, entonces se emplea el Cuantificador Existencial, el cual se denota por ∃.

167 Lógica de Primer Orden Y se enuncia con frases similares a: “Hay ...” o “Existe ...” o “Para algunos ...” Ejemplo: En mi clase hay mujeres. Esta proposición es falsa si no existe ningún valor de la variable que satisfaga al enunciado. La representación simbólica es: ∃x Alumnodemiclase(x) ∧ Mujer(x)

168 Lógica de Primer Orden Semejante al caso anterior, mucha gente cae en el error de interpretarla como: ∃x Alumnodemiclase(x) ⇒ Mujer(x) Pero esta segundo enunciado es más débil que el anterior y sería verdadero para los estudiantes que no están en mi clase. Se pueden realizar afirmaciones muy complejas si se anidan cuantificadores.

169 Lógica de Primer Orden Sin mezclar tipos de cuantificadores, podemos decir cosas como: ∀x,y Hermano(x,y) ⇒ Hermano(y,x) También podemos mezclar cuantificadores, ∀x ∃y Buenopara(x,y) “Todos somos buenos para alguna cosa" ∃y ∀x Buenopara(x,y) “Alguien es bueno para todo"

170 Lógica de Primer Orden Se pueden cambiar los cuantificadores mediante la negación. Considerar la sentencia: ∀x ~Gusta(x,Verduras) “Para todo x, x no le gustan las verduras." Es equivalente a decir: “No existe un x que le gusten las verduras.“ ~∃x Gusta(x, Verduras)

171 Lógica de Primer Orden Similarmente, los siguientes enunciados son equivalentes: ∃x P = ~∀x ~P ∀x P = ~∃x ~P ~∀x P = ∃x ~P ∀x ~P = ~∃x P Con frecuencia el símbolo de igualdad se incluye como un símbolo especial.

172 Lógica de Primer Orden Ejemplo: Padre(Juan) = José
Afirmar que el objeto que es padre de Juan es el mismo que el objeto José. Los axiomas capturan los hechos básicos acerca de un dominio. Ejemplos: ∀x,y Padre(x,y) ⇔ Hijo(y,x) ∀x,y Abuelo(x,y) ⇔ ∃z Padre(x,z) . Padre(z,y) ∀x Masculino(x) ⇔ ~Femenino(x)

173 Lógica de Primer Orden Algunos axiomas son considerados como Definiciones. Los axiomas son luego usados para probar teoremas. FOL en Wumpus: El primer paso es definir la interface entre el agente y el mundo.

174 FOL Wumpus Un ejemplo de percepción sería:
Percepción([Hedor,Brisa,Brillo,Nada,Nada],5) El vector de percepciones contiene 5 elementos que son: Hedor, Brisa, Brillo, Golpe con un muro y Grito. Además incluye un sexto elemento para el tiempo. Las acciones posibles del agente pueden ser las siguientes:

175 FOL Wumpus Girar(Derecha) Girar(Izquierda) Avanzar Disparar Tomar
Para determinar cuál es la mejor acción, el agente realiza una petición como esta: PREGUNTAR(BC, ∃x MejorAcción(x,5))

176 FOL Wumpus Esta petición retornará una lista de acciones posibles, tal como: {a/Tomar}. Antes de realizar esa acción, el agente deberá DECIR a la base de conocimiento su decisión de hacer la acción de Tomar: DECIR(BC, Acción(5)=Tomar) Reglas de diagnóstico: nos llevan de los efectos observados a sus causas.

177 FOL Wumpus Por ejemplo: si una casilla tiene brisa significa que una casilla adyacente tiene un pozo. ∀x Brisa(x) ⇒ ∃y Adyacente(y,x) ∧ Pozo(y) Reglas Causales: reflejan conclusiones respecto de las percepciones y sus causas. Por ejemplo: un pozo en una casilla provoca brisa en todas las casillas adyacentes. ∀y Pozo(y) ⇒ [∀x Adyacente(x,y) ⇒ Brisa(x)]

178 Lógica de Primer Orden La Ingeniería del Conocimiento es un proceso general para la construcción de una base de conocimiento. A continuación se describen los pasos de este proceso: Identificación de la tarea. Recopilación del conocimiento. Decidir el vocabulario. Codificar el conocimiento.

179 Deducción Automática Para el hecho: Contrata(Telmex,Toño), podemos construir índices para las siguientes peticiones: Contrata(Telmex,Toño) ¿Contrata Telmex a Toño? Contrata(x,Toño) ¿Quién Contrata a Toño? Contrata(Telmex,y) ¿A quién Contrata Telmex? Contrata(x,y) ¿Quién Contrata a quién?

180 Deducción automática El primer paso consiste en transformar los enunciados en sentencias lógicas. Posteriormente se aplican las técnicas anteriores para convertirlas en un conjunto de cláusulas positivas de primer orden. Luego se encadenan esos conocimientos para obtener nuevos enunciados.

181 Deducción Automática Pasar a FNC la siguiente base de conocimientos:
Asterix es un galo Los romanos que son amigos de algún galo odian a César Asterix ayudó a Marco Marco es amigo de quien le ayuda Quien odia a algún romano, lucha contra él Marco es romano

182 Deducción Automática Asterix es un galo galo(Asterix) (en FNC)
Los romanos que son amigos de algún galo odian a César ∀x [romano(x) . (∃y galo(y) . amigo(x, y)) ⇒ odia(x,Cesar)]

183 Deducción Automática Reemplazando la cláusula existencial:
∀x [romano(x) . (galo(G) . amigo(x, G)) ⇒ odia(x,Cesar)] Asterix ayudó a Marco ayuda(Asterix,Marco) (en FNC) Marco es amigo de quien le ayuda ∀x [ayuda(x,Marco) ⇒ amigo(Marco, x)]

184 Deducción Automática Quien odia a algún romano, lucha contra él
∀x ∃y [romano(y) . odia(x, y) ⇒ lucha(x, y)] Reemplazando la cláusula existencial: ∀x [romano(R) . odia(x, R) ⇒ lucha(x, R)] Marco es romano romano(Marco) (en FNC)

185 Deducción Automática Los Miembros del equipo de tenis son: Juan, Sara, Beto y Elena. Juan está casado con Sara. Beto es hermano de Elena. El cónyuge de un miembro del equipo también es miembro del equipo.

186 Deducción Automática La última reunión fue en casa de Juan.
Representar los enunciados anteriores en lógica de predicados. Demostrar que: La última reunión fue en casa de Sara. Elena no está casada. Agregue los hechos que necesite para las demostraciones.

187 Deducción Automática A Paco le gustan los cursos fáciles.
Los cursos de Física son difíciles. Los cursos de Humanidades son fáciles. El curso de Ética es del área de Humanidades. ¿Qué curso le gustaría tomar a Paco?

188 Deducción Automática A Beto le gusta la comida italiana.
En un restaurante hay comida mexicana a no ser que se anuncie explícitamente lo contrario. En “La Conchita” no anuncian que tipo de comida sirven.

189 Deducción Automática A las personas no les gusta ir a restaurantes donde sirven comida que no es de su preferencia. ¿Se puede concluir que a Beto no le gusta ir a “La Conchita”?

190 Deducción Automática Formaliza los siguientes hechos:
Todo dragón está feliz si todos sus hijos pueden volar. Los dragones verdes pueden volar. Un dragón es verde si es hijo de al menos un dragón verde. Demuestra por resolución que la conjunción de los hechos anteriores implica que: Todos los dragones verdes son felices.

191 Deducción Automática Considere las siguientes relaciones:
Feliz(x) para x es feliz. Volar(x) para x puede volar. Verde(x) para x es verde. Dragón(x) para x es dragón Rojo(x) para x es rojo. Hijo(x,y) para x es hijo de y.

192 Referencias Russel, S. y Norving, P. (2004). Inteligencia Artificial. Un Nuevo enfoque. Pearson Prentice Hall, España Nilsson, N. (2001). Inteligencia Artificial. Una nueva síntesis. McGraw-Hill, España. Winston, P. (1992) Artificial Intelligence, 3ra. Edición, Addison-Wesley.

193 Referencias Decker, R. y Hirshfield, S. (2001). Máquina Analítica. Introducción a las Ciencias de la Computación con Uso de Internet, Thomson, México. Capítulo 9 Inteligencia Artificial pp Hernández, V. (2007). Mapas Conceptuales La gestión del Conocimiento en la Didáctica. Segunda Edición, México: Alfaomega.

194 Referencias G. Polya, (1982), “Cómo Plantear y Resolver Problemas”, traducción al español de “How to Solve It”, Ed. Trillas, México, 1982, ISBN: Montes, M. y Villaseñor L. (2008) Fundamentos de Inteligencia Artificial Métodos básicos de solución de problemas, Instituto Nacional de Astrofísica, Óptica y Electrónica, Puebla, México.

195 ¿Preguntas?

Descargar ppt "Inteligencia Artificial IA7700-T"

Presentaciones similares

Anuncios Google