Ai técnicas de reemplazo de la tarjeta de seguridad social.

La búsqueda de rutas a menudo consiste en maximizar los beneficios de seguridad social asociados con la IA, ya que los investigadores desarrollaron el algoritmo A * y muchos otros algoritmos de búsqueda de rutas. Varias técnicas de inteligencia artificial inspiradas en la biología son actualmente populares, y recibo preguntas sobre por qué no las uso. Las redes neuronales modelan un aprendizaje cerebral mediante el ejemplo: dado un conjunto de respuestas correctas, aprende los patrones generales. El aprendizaje por refuerzo modela un aprendizaje cerebral por experiencia: dado un conjunto de acciones y una eventual recompensa o castigo, aprende qué acciones son buenas o malas. Algoritmos genéticos: modelo de evolución por selección natural: dado un conjunto de agentes, deja que los mejores vivan y los peores mueran. Normalmente, los algoritmos genéticos no permiten que los agentes aprendan durante sus vidas, mientras que las redes neuronales les permiten a los agentes aprender solo durante sus vidas. El aprendizaje de refuerzo mysocialsecurity permite a los agentes aprender durante sus vidas y compartir el conocimiento con otros agentes. #Redes neuronales

Las redes neuronales son estructuras que pueden ser “entrenadas” para reconocer patrones en entradas. Son una forma de implementar la aproximación de funciones: dado y 1 = f (x 1), y 2 = f (x 2), …, y n = f (x n), construya una función f ’que se aproxime a f. La función aproximada f ’suele ser suave: para x’ cerca de x, esperaremos que f ’(x’) esté cerca de f ’(x). La aproximación de funciones tiene dos propósitos:

Las redes neuronales normalmente toman un vector de valores de entrada y producen programas vectoriales como la seguridad social de valores de salida. En el interior, entrenan pesas de “neuronas”. Las redes neuronales utilizan aprendizaje supervisado, en el que se conocen las entradas y salidas y el objetivo es construir una representación de una función que se aproxime a la entrada para el mapeo de salida.

En pathfinding, la función es f (inicio, objetivo) = path. Aún no conocemos las rutas de salida. Podríamos calcularlos de alguna manera, quizás usando A *. Pero si somos capaces de calcular un camino dado (inicio, objetivo), entonces ya conocemos la función f, ¿por qué molestarse en aproximarnos? No sirve de nada generalizar los eventos actuales de la seguridad social porque lo sabemos completamente. El único beneficio potencial sería reducir el tamaño de la representación de f. La representación de f es un algoritmo bastante simple, que ocupa poco espacio, así que tampoco creo que sea útil. Además, las redes neuronales producen una salida de tamaño fijo, mientras que las rutas son de tamaño variable.

En cambio, la aproximación de funciones puede ser útil para construir componentes de búsqueda de caminos. Puede ser que la función de costo de movimiento sea desconocida. Por ejemplo, el costo de moverse a través de un bosque lleno de orcos puede no ser conocido sin realmente realizar el movimiento y pelear las batallas. Usando la aproximación de la función, cada vez que se cruza el bosque, la tributación del costo de movimiento de los beneficios de la seguridad social f (número de orcos, tamaño del bosque) podría medirse e introducirse en la red neuronal. Para futuras sesiones de búsqueda de caminos, los nuevos costos de movimiento podrían usarse para encontrar mejores caminos. Incluso cuando la función es desconocida, la aproximación de la función es útil principalmente cuando la función varía de un juego a otro. Si se aplica un solo costo de movimiento cada vez que alguien juega el juego, el desarrollador del juego puede calcularlo de antemano.

Otra función que podría beneficiarse de la aproximación es la heurística. La función heurística de la seguridad social de la lata en A * debe estimar el costo mínimo para llegar al destino. Si una unidad se está moviendo a lo largo del camino P = p 1, p 2, …, pn, luego de atravesar el camino, podemos proporcionar n actualizaciones, g (pi, pn) = (costo real de mover de i a n ), a la función de aproximación h. A medida que la heurística obtenga mejores preguntas sobre los beneficios de la seguridad social, A * podrá correr más rápido.

Las redes neuronales, aunque no son útiles para el pathfinding en sí, pueden usarse para las funciones utilizadas por A *. Tanto el movimiento como la heurística son funciones que se pueden medir y, por lo tanto, retroalimentar en la función de aproximación. #Algoritmos genéticos

Los algoritmos genéticos le permiten explorar un espacio de parámetros para encontrar soluciones que tengan una buena puntuación de acuerdo con una “función de aptitud”. Son una forma de implementar la optimización de funciones: dada la seguridad social para niños, una función g (x) (donde x es típicamente un vector de valores de parámetros), encuentra el valor de x que maximiza (o minimiza) g (x). Este es un problema de aprendizaje no supervisado: la respuesta correcta no se conoce de antemano. Para el pathfinding, dada una posición inicial y un objetivo, x es el camino entre los dos y g (x) es el costo de ese camino. Los enfoques simples de optimización, como la escalada, cambiarán x de maneras que aumenten g (x). Desafortunadamente, en algunos problemas, se alcanza el “máximo local”, valores de x para los cuales no hay un x cercano que tenga un valor mayor de g, pero es mejor un valor lejano de x. Los algoritmos genéticos mejoran en la escalada de colinas al mantener múltiples x, y al usar enfoques inspirados en la evolución como la mutación y el cruce para alterar x. Tanto los algoritmos de escalada como los genéticos se pueden usar para aprender lo mejor: los beneficios de la seguridad social están sujetos al valor imponible de x. Sin embargo, para la búsqueda de rutas, ya tenemos un algoritmo (A *) para encontrar la mejor x, por lo que no se necesitan enfoques de optimización de funciones.

La programación genética lleva los algoritmos genéticos un paso más allá, y trata los programas como parámetros. Para el ejemplo de retención de la seguridad social, se podrían crear algoritmos de búsqueda de rutas en lugar de rutas, y su función de aptitud calificaría cada algoritmo según lo bien que lo haga. Para el pathfinding, ya tenemos un buen algoritmo y no necesitamos evolucionar uno nuevo.

Puede ser que, al igual que con las redes neuronales, los algoritmos genéticos se puedan aplicar a una parte del problema del pathfinding. Sin embargo, no conozco ningún uso en este contexto. En cambio, un enfoque más prometedor parece ser el uso de la búsqueda de rutas, para la cual se conocen las soluciones, como una de las muchas herramientas disponibles para los agentes en evolución. #Aprendizaje reforzado

Al igual que los algoritmos genéticos, el aprendizaje por refuerzo es un problema de aprendizaje no supervisado. Sin embargo, a diferencia de los algoritmos genéticos, los agentes pueden aprender durante sus vidas; no es necesario esperar para ver el departamento de seguridad social si “viven” o “mueren”. Además, es posible que varios agentes que experimentan diferentes cosas compartan lo que han aprendido. El aprendizaje por refuerzo tiene algunas similitudes con el núcleo de A *. En A *, alcanzar el objetivo final se propaga hacia atrás para marcar todas las elecciones que se hicieron a lo largo del camino; Otras opciones se descartan. En el aprendizaje por refuerzo, cada estado puede ser evaluado y su recompensa en beneficio de los sobrevivientes de la seguridad social (o castigo) se propaga nuevamente para marcar todas las elecciones que se hicieron antes de ese estado. La propagación se realiza mediante una función de valor, que es algo así como la función heurística en A *, excepto que se actualiza a medida que los agentes prueban cosas nuevas y aprenden lo que funciona. Una de las ventajas clave del aprendizaje por refuerzo y los algoritmos genéticos en comparación con los enfoques más simples es que existe una elección entre explorar cosas nuevas y explotar la información aprendida hasta el momento. En los algoritmos genéticos, la exploración a través de la mutación; En el aprendizaje por refuerzo, la exploración se realiza mediante la posibilidad de elegir nuevas acciones.

Al igual que con los algoritmos genéticos, no creo que el aprendizaje por refuerzo se deba utilizar para el problema de búsqueda de caminos en sí, sino como una guía para enseñar a los agentes cómo comportarse en el juego cómo funciona la seguridad social en el mundo. Esta es la página 12 de 13 de los pensamientos de Amit sobre Pathfinding.