Inteligencia artificial PDF

Title Inteligencia artificial
Course Programación III
Institution Universidad ECCI
Pages 14
File Size 417.3 KB
File Type PDF
Total Downloads 228
Total Views 432

Summary

UNIDAD 2 FASE 2 TUTOR FERNANDO ROJAS GRUPO: 90169_3 ECCI INTELIGENCIA ARTIFICIAL ABRIL 2019 TABLA DE CONTENIDO 3 EN ESPACIO DE ESTADO EN LA INTELIGENCIA ARTIFICIAL 4 CONCLUSIONES 13 REFERENCIAS 14 En el presente trabajo presentaremos una sobre la en espacios de estado, sobre algoritmos de sobre y ra...


Description

UNIDAD 2 FASE 2

TUTOR FERNANDO ROJAS

GRUPO:

90169_3

ECCI INTELIGENCIA ARTIFICIAL ABRIL 2019

TABLA DE CONTENIDO INTRODUCCIÓN

3

BÚSQUEDA EN ESPACIO DE ESTADO EN LA INTELIGENCIA ARTIFICIAL

4

CONCLUSIONES

13

REFERENCIAS BIBLIOGRÁFICAS

14

INTRODUCCIÓN

En el presente trabajo presentaremos una explicación sobre la búsqueda en espacios de estado, sobre algoritmos de búsqueda sobre y razonamiento con incertidumbre en IA, también daremos a conocer el prototipo para nuestro proyecto correspondiente a la fase de diseño del proyecto. Aplicaremos los conceptos de búsqueda en espacios de estado, razonamiento con incertidumbre y algoritmos de búsqueda a nuestro prototipo.

BÚSQUEDA EN ESPACIO DE ESTADO EN LA INTELIGENCIA ARTIFICIAL

1. Búsqueda en espacios de estado

Ejemplo del método Búsquedas de espacios de estado.

El paradigma búsqueda de espacios de estado es el método de aplicación más general, los componentes principales de un sistema de búsqueda son tres: los estados, las reglas u operadores y la estrategia de control. El conjunto de estados representa todas las situaciones por las que el agente puede eventualmente pasar durante la solución del problema, como por ejemplo las configuraciones de los bloques en el problema de planificación de robots, o las secuencias parciales de ciudades en el TSP. En consecuencia, hay que comenzar por elegir un modelo de representación con un nivel de detalle adecuado a las capacidades de percepción y actuación del agente. Los operadores deben modelar las acciones elementales que es capaz de realizar el agente y dependen obviamente del modelo elegido para los estados. Cada operador debe quedar perfectamente definido a partir de una especificación precisa de las condiciones que debe cumplir el estado en el que se aplica y del estado resultante de su aplicación. El conjunto de estados y operadores definen el espacio de búsqueda que, en el paradigma de búsqueda en espacios de estados, tiene forma de grafo dirigido simple. La estrategia de control es la responsable de decidir el orden en el que se van explorando los estados, o lo que es igual, el orden en el que se va considerando la aplicación de los operadores. Una estrategia de control inteligente, o bien informada, debería llevarnos a explorar primero aquellos nodos que están en el mejor camino y que nos conducen hacia una solución óptima. Una búsqueda a ciegas requiera visitar una cantidad de estados mucho mayor que una búsqueda inteligente para encontrar una solución del problema. Por lo tanto, lo que se pretende con un sistema de búsqueda inteligente es encontrar una buena solución del problema, o una solución óptima, visitando la menor cantidad de estados posible.

2. Razonamiento con incertidumbre

Ejemplo del método de Razonamiento con incertidumbre.

El razonamiento es una operación lógica mediante la cual, partiendo de uno o más juicios, se deriva la validez, la posibilidad o la falsedad de otro juicio distinto. Por lo general, los juicios en que se basa un razonamiento expresan conocimientos ya adquiridos o, por lo menos, postulados como hipótesis. Los razonamientos pueden ser válidos (correctos) o no válidos (incorrectos). En general, se considera válido un razonamiento cuando sus premisas ofrecen soporte suficiente a su conclusión. Un razonamiento lógico, en definitiva, es un proceso mental que implica la aplicación de la lógica. A partir de esta clase de razonamiento, se puede partir de una o de varias premisas para arribar a una conclusión que puede determinarse como verdadera, falsa o posible. El razonamiento con incertidumbre es cuando hay Falta de información adecuada para tomar una decisión o realizar un razonamiento, esta falta de información Puede impedir llegar a una conclusión correcta, en este caso se utiliza lo mejor posible la información o el conocimiento que se tiene.

3. Algoritmos de búsqueda en IA

Ejemplo del método Algoritmos de Búsqueda.

Un algoritmo de búsqueda es una herramienta para resolver problemas, en inteligencia Artificial se utiliza el Algoritmo General de Búsqueda en Grafos (AGBG), el cual parte de un grafo dirigido simple definido implícitamente a partir de un nodo inicial y una serie de operadores o reglas de producción. Cada regla tiene un coste no negativo, concretamente debe existir un valor real ε > 0 tal que el número de reglas con un costo menor o igual que ε sea finito. De este modo no existen caminos en el espacio de búsqueda con un número infinito de nodos y un costo acotado. Además, el grafo debe ser localmente finito, es decir que cada nodo o estado tiene un número finito de sucesores, aunque no necesariamente finito. En el grafo hay uno o varios estados solución y el objetivo de la búsqueda es encontrar el camino de coste mínimo desde el nodo inicial a los estados objetivo. Para realizar las operaciones de rectificación de los nodos es necesario registrar explícitamente todo el espacio de búsqueda desarrollado hasta el momento. Para ello, se añade un campo adicional a la entrada de cada nodo n en la TABLA. Esta entrada registra la lista de sucesores de n, así como los costes desde n a cada uno de ellos, para cada nodo n expandido. Si el nodo n no ha sido aún expandido, esta lista será nula.

Prototipo del Proyecto

from sklearn.datasets import load_iris import numpy as np from sklearn import tree import graphviz from sklearn.metrics import accuracy_score as acc_rate iris = load_iris() # Mira el conjunto de datos print(iris.feature_names) # nombre de las características print(iris.data) # Datos para las 4 características. print(iris.target_names) # nombre de los objetivos print(iris.target) # datos para los objetivos # Elija al azar 1/3 de las muestras como datos de prueba np.random.seed(123) test_idx = np.random.randint(0, len(iris.target), len(iris.target) // 3) # datos de entrenamiento train_data = np.delete(iris.data, test_idx, axis=0) train_target = np.delete(iris.target, test_idx) # datos de prueba test_data = iris.data[test_idx] test_target = iris.target[test_idx] # entrenar el modelo # inicializar un objeto clasificador de árbol de decisión con argumentos dados clf = tree.DecisionTreeClassifier(criterion='entropy', splitter='best') # Se pueden colocar muchos argumentos en el objeto. clf.fit(X=train_data, y=train_target) # hacer predicción print('\nThe target test data set is:\n', test_target) print('\nThe predicted result is:\n', clf.predict(test_data)) print('\nAccuracy rate is:\n', acc_rate(test_target, clf.predict(test_data))) # visualizando el arbol dot_data = tree.export_graphviz(clf, out_file=None, feature_names=iris.feature_names, class_names=iris.target_names,

filled=True, rounded=True, impurity=False, special_characters=True) graph = graphviz.Source(dot_data) graph.render("iris")

4. Cómo aplica búsqueda en espacio de estado en el prototipo.

Para poder aplicar la búsqueda en espacio de estado en el prototipo que estamos desarrollando, haremos una breve descripción de este, el prototipo corresponde a un algoritmo de identificación de tipos de flores, partiendo de datos básicos almacenados en la base de datos, los cuales serán comparados con el escaneo de diferentes flores, el sistema estaría en la capacidad de dar el nombre técnico de la flor.

Formulación del problema: -

Estados: Varios tipos de flores. Acciones: Identificar el tipo exacto de flor con su nombre técnico de acuerdo con sus características básicas: (tamaño de pétalos, cantidad de pétalos, forma, colores, tipo de pistilo, etc.)

Solución: Encontrar la manera más adecuada para alimentar la base de conocimiento del algoritmo con el fin de arrojar los resultados esperados y que el código realice el trabajo para el cual fue diseñado. Componentes del problema: -

Estado Inicial: Cualquier estado puede ser designado como inicial. Función sucesor: Genera estados legales al intentar la toma de muestras como datos de prueba. Test objetivo: Comprobar que se identifique de manera correcta el tipo de flor en el momento que se tome la muestra. Costo del camino: número de pasos que lo componen.

5. Como aplica algoritmos de búsqueda en el prototipo.

Partimos de que un algoritmo de búsqueda es una herramienta utilizada para resolver problemas, en inteligencia Artificial y que utiliza el Algoritmo General de Búsqueda en Grafos (AGBG), el cual parte de un grafo dirigido simple definido implícitamente a partir de un nodo inicial y una serie de operadores o reglas de producción para llegar a una conclusión general. Estos algoritmos trabajan con grandes cantidades de datos almacenados en una lista o en cualquier estructura de datos, en nuestro prototipo los datos están almacenados en una librería de Python llamada iris la cual contiene datos básicos como color del pétalo, longitud de los pétalos, textura de los pétalos etc. de los diferentes tipos de flores. El algoritmo busca un determinado valor dentro de una estructura de datos: en este caso busca el tipo de flor de acuerdo a las características que le hemos brindado, un algoritmo puede utilizar diferentes técnicas de búsqueda, como, por ejemplo: búsqueda lineal o secuencial, búsqueda binaria o dicotómica etc.



Con la siguiente línea del programa (prototipo) está importando la librería o base de datos para que el algoritmo pueda realizar la búsqueda:

from sklearn.datasets import load_iris



Con la siguiente línea del programa (prototipo) le estamos diciendo al algoritmo que datos buscar dentro de la librería, para que nos proporcione una salida:

iris = load_iris()

test_idx = [0, 50, 100]

De esta manera con los datos de entrada el algoritmo proporciona una salida, no se trata de una serie de pasos a seguir como en un algoritmo corriente, este algoritmo de búsqueda hace uso de la inteligencia artificial para el mismo tomar la decisión por donde continuar y cual solución es la mas adecuada.

6. Como aplica razonamiento con incertidumbre al proyecto. Teniendo en cuenta que el razonamiento con incertidumbre es el razonamiento aproximado o inexacto de la información. De manera general, sólo se conoce con certeza una pequeña parte de un determinado dominio del mundo, la información restante puede ser incierta por diversas causas, tales como: imprecisión, incapacidad para tomar medidas adecuadas, falta de conocimiento, vaguedad, etc. Por lo tanto, aplicado al prototipo, al identificar los tipos de flores de acuerdo con los parámetros hay que tener en cuenta variables como el tamaño de las flores, la forma puede ser la misma pero las variables pueden ser infinitas, para lo cual hay variables aleatorias que irán surgiendo a medida que aumenten los parámetros de búsqueda, por lo tanto, el modelo de entorno puede ser dinámico, existiendo agentes externos que lo modifican sin conocimiento del planificador. Básicamente, se utiliza un método cuantitativo para obtener los resultados, el cual consiste en la realización de medidas (áreas, longitudes, tamaños, entre otros), para ello, la planificación conforme para entornos parcialmente observables y sin posibilidad de monitorización, que generan planes para todos los posibles mundos a partir de distintos estados iniciales, dará como resultado infinitas variaciones de datos en la captura de información y posterior alimentación de la base de datos de conocimiento, al haber X variedades de flores habrán X variedades de datos a tener en cuenta. También, a su vez será aplicado en posibilidades de nuevas especies que puede que sean descubiertas y posteriormente clasificadas. 7. Que algoritmo aplica en el proyecto en construcción Consideramos que se basa en un algoritmo de búsqueda dicotómica (binaria), este se utiliza cuando el vector en el que queremos determinar la existencia de un elemento está previamente ordenado. Este algoritmo reduce el tiempo de búsqueda considerablemente, ya que disminuye exponencialmente el número de iteraciones necesarias. Está altamente recomendado para buscar en arrays de gran tamaño. Por ejemplo, en uno conteniendo 50.000.000 elementos, realiza como máximo 26 comparaciones (en el peor de los casos). Para implementar este algoritmo se compara el elemento a buscar con un elemento cualquiera del array (normalmente el elemento central): si el valor de éste es mayor que el del elemento buscado se repite el procedimiento en la parte del array que va desde el inicio de éste hasta el elemento tomado, en caso contrario se toma la parte del array que va desde el elemento tomado hasta el final. De esta

manera obtenemos intervalos cada vez más pequeños, hasta que se obtenga un intervalo indivisible. Si el elemento no se encuentra dentro de este último entonces se deduce que el elemento buscado no se encuentra en todo el array.

CONCLUSIONES

En el presente trabajo presentamos una explicación sobre la búsqueda en espacios de estado, sobre algoritmos de búsqueda sobre y razonamiento con incertidumbre en IA, también dimos a conocer el prototipo para nuestro proyecto correspondiente a la fase de diseño del proyecto. Aplicamos los conceptos de búsqueda en espacios de estado, razonamiento con incertidumbre y algoritmos de búsqueda a nuestro prototipo.

REFERENCIAS BIBLIOGRÁFICAS

Búsqueda en espacios de estado, heurística o ciega

Palma Méndez, J. T., & Marín Morales, R. (2008). Inteligencia artificial: Métodos, técnicas y aplicaciones. España: McGraw-Hill. Pag.392-412. Obtenido de https://bibliotecavirtual.ECCI.edu.co:2538/lib/ECCIsp/reader.action? docID=3194970&query=sistemas+basados+en+el+conocimiento

Razonamiento con incertidumbre Palma Méndez, J. T., & Marín Morales, R. (2008). Inteligencia artificial: Métodos, técnicas y aplicaciones. España: McGraw-Hill. Pag.209-249. Obtenido de https://bibliotecavirtual.ECCI.edu.co:2538/lib/ECCIsp/reader.action? docID=3194970&query=sistemas+basados+en+el+conocimiento

Algoritmos de búsqueda en profundidad y por amplitud. Palma Méndez, J. T., & Marín Morales, R. (2008). Inteligencia artificial: Métodos, técnicas y aplicaciones. España: McGraw-Hill. Pag.309-347. Obtenido de https://bibliotecavirtual.ECCI.edu.co:2538/lib/ECCIsp/reader.action? docID=3194970&query=sistemas+basados+en+el+conocimiento

Análisis de Algoritmos Pinargote María, (2014), Inteligencia Artificial: Algoritmos evolutivos, Sites Google, recuperado de: https://sites.google.com/site/mayinteligenciartificial/inteligenciaartificial/algoritmos-evolutivos...


Similar Free PDFs