5 research outputs found

    Surrogate Search As a Way to Combat Harmful Effects of Ill-behaved Evaluation Functions

    Full text link
    Recently, several researchers have found that cost-based satisficing search with A* often runs into problems. Although some "work arounds" have been proposed to ameliorate the problem, there has been little concerted effort to pinpoint its origin. In this paper, we argue that the origins of this problem can be traced back to the fact that most planners that try to optimize cost also use cost-based evaluation functions (i.e., f(n) is a cost estimate). We show that cost-based evaluation functions become ill-behaved whenever there is a wide variance in action costs; something that is all too common in planning domains. The general solution to this malady is what we call a surrogatesearch, where a surrogate evaluation function that doesn't directly track the cost objective, and is resistant to cost-variance, is used. We will discuss some compelling choices for surrogate evaluation functions that are based on size rather that cost. Of particular practical interest is a cost-sensitive version of size-based evaluation function -- where the heuristic estimates the size of cheap paths, as it provides attractive quality vs. speed tradeoffsComment: arXiv admin note: substantial text overlap with arXiv:1103.368

    Finding acceptable solutions faster using inadmissible information

    No full text
    Bounded suboptimal search algorithms attempt to find a solution quickly while guaranteeing that its cost does not exceed optimal by more than a desired factor. Typically these algorithms use a single admissible heuristic evaluation function for both guiding search and bounding solution quality. In this paper, we present a new approach to bounded suboptimal search that separates these roles, consulting inadmissible information to determine search order and using admissible information to guarantee quality. Unlike previous proposals, it explicitly estimates expected solution cost and search distance in an attempt to reach a solution within the suboptimality bound as quickly as possible. We show how to construct these estimates during search using information that is readily available yet often overlooked. In an empirical evaluation across six diverse benchmark domains, the new techniques have better overall performance than When resources are plentiful or an optimal solution is required, A * search [1] using a consistent heuristic will find an optimal solution as fast as any equally informed search [2]. However, in many practical settings we must accept suboptimal solution

    Influence-based motion planning algorithms for games

    Get PDF
    In games, motion planning has to do with the motion of non-player characters (NPCs) from one place to another in the game world. In today’s video games there are two major approaches for motion planning, namely, path-finding and influence fields. Path-finding algorithms deal with the problem of finding a path in a weighted search graph, whose nodes represent locations of a game world, and in which the connections among nodes (edges) have an associated cost/weight. In video games, the most employed pathfinders are A* and its variants, namely, Dijkstra’s algorithm and best-first search. As further will be addressed in detail, the former pathfinders cannot simulate or mimic the natural movement of humans, which is usually without discontinuities, i.e., smooth, even when there are sudden changes in direction. Additionally, there is another problem with the former pathfinders, namely, their lack of adaptivity when changes to the environment occur. Therefore, such pathfinders are not adaptive, i.e., they cannot handle with search graph modifications during path search as a consequence of an event that happened in the game (e.g., when a bridge connecting two graph nodes is destroyed by a missile). On the other hand, influence fields are a motion planning technique that does not suffer from the two problems above, i.e., they can provide smooth human-like movement and are adaptive. As seen further ahead, we will resort to a differentiable real function to represent the influence field associated with a game map as a summation of functions equally differentiable, each associated to a repeller or an attractor. The differentiability ensures that there are no abrupt changes in the influence field, consequently, the movement of any NPC will be smooth, regardless if the NPC walks in the game world in the growing sense of the function or not. Thus, it is enough to have a spline curve that interpolates the path nodes to mimic the smooth human-like movement. Moreover, given the nature of the differentiable real functions that represent an influence field, the removal or addition of a repeller/attractor (as the result of the destruction or the construction of a bridge) does not alter the differentiability of the global function associated with the map of a game. That is to say that, an influence field is adaptive, in that it adapts to changes in the virtual world during the gameplay. In spite of being able to solve the two problems of pathfinders, an influence field may still have local extrema, which, if reached, will prevent an NPC from fleeing from that location. The local extremum problem never occurs in pathfinders because the goal node is the sole global minimum of the cost function. Therefore, by conjugating the cost function with the influence function, the NPC will never be detained at any local extremum of the influence function, because the minimization of the cost function ensures that it will always walk in the direction of the goal node. That is, the conjugation between pathfinders and influence fields results in movement planning algorithms which, simultaneously, solve the problems of pathfinders and influence fields. As will be demonstrated throughout this thesis, it is possible to combine influence fields and A*, Dijkstra’s, and best-first search algorithms, so that we get hybrid algorithms that are adaptive. Besides, these algorithms can generate smooth paths that resemble the ones traveled by human beings, though path smoothness is not the main focus of this thesis. Nevertheless, it is not always possible to perform this conjugation between influence fields and pathfinders; an example of such a pathfinder is the fringe search algorithm, as well as the new pathfinder which is proposed in this thesis, designated as best neighbor first search.Em jogos de vídeo, o planeamento de movimento tem que ver com o movimento de NPCs (“Non-Player Characters”, do inglês) de um lugar para outro do mundo virtual de um jogo. Existem duas abordagens principais para o planeamento de movimento, nomeadamente descoberta de caminhos e campos de influência. Os algoritmos de descoberta de caminhos lidam com o problema de encontrar um caminho num grafo de pesquisa pesado, cujos nós representam localizações de um mapa de um jogo, e cujas ligações (arestas) entre nós têm um custo/peso associado. Os algoritmos de descoberta de caminhos mais utilizados em jogos são o A* e as suas variantes, nomeadamente, o algoritmo de Dijkstra e o algoritmo de pesquisa do melhor primeiro (“best-first search”, do inglês). Como se verá mais adiante, os algoritmos de descoberta de caminhos referidos não permitem simular ou imitar o movimento natural dos seres humanos, que geralmente não possui descontinuidades, i.e., o movimento é suave mesmo quando há mudanças repentinas de direcção. A juntar a este problema, existe um outro que afeta os algoritmos de descoberta de caminhos acima referidos, que tem que ver com a falta de adaptatividade destes algoritmos face a alterações ao mapa de um jogo. Ou seja, estes algoritmos não são adaptativos, pelo que não permitem lidar com alterações ao grafo durante a pesquisa de um caminho em resultado de algum evento ocorrido no jogo (e.g., uma ponte que ligava dois nós de um grafo foi destruída por um míssil). Por outro lado, os campos de influência são uma técnica de planeamento de movimento que não padece dos dois problemas acima referidos, i.e., os campos possibilitam um movimento suave semelhante ao realizado pelo ser humano e são adaptativos. Como se verá mais adiante, iremos recorrer a uma função real diferenciável para representar o campo de influência associado a um mapa de um jogo como um somatório de funções igualmente diferenciáveis, em que cada função está associada a um repulsor ou a um atractor. A diferenciabilidade garante que não existem alterações abruptas ao campo de influência; consequentemente, o movimento de qualquer NPC será suave, independentemente de o NPC caminhar no mapa de um jogo no sentido crescente ou no sentido decrescente da função. Assim, basta ter uma curva spline que interpola os nós do caminho de forma a simular o movimento suave de um ser humano. Além disso, dada a natureza das funções reais diferenciáveis que representam um campo de influência, a remoção ou adição de um repulsor/atractor (como resultado da destruição ou construção de uma ponte) não altera a diferenciabilidade da função global associada ao mapa de um jogo. Ou seja, um campo de influência é adaptativo, na medida em que se adapta a alterações que ocorram num mundo virtual durante uma sessão de jogo. Apesar de ser capaz de resolver os dois problemas dos algoritmos de descoberta de caminhos, um campo de influência ainda pode ter extremos locais, que, se alcançados, impedirão um NPC de fugir desse local. O problema do extremo local nunca ocorre nos algoritmos de descoberta de caminhos porque o nó de destino é o único mínimo global da função de custo. Portanto, ao conjugar a função de custo com a função de influência, o NPC nunca será retido num qualquer extremo local da função de influência, porque a minimização da função de custo garante que ele caminhe sempre na direção do nó de destino. Ou seja, a conjugação entre algoritmos de descoberta de caminhos e campos de influência tem como resultado algoritmos de planeamento de movimento que resolvem em simultâneo os problemas dos algoritmos de descoberta de caminhos e de campos de influência. Como será demonstrado ao longo desta tese, é possível combinar campos de influência e o algoritmo A*, o algoritmo de Dijkstra, e o algoritmo da pesquisa pelo melhor primeiro, de modo a obter algoritmos híbridos que são adaptativos. Além disso, esses algoritmos podem gerar caminhos suaves que se assemelham aos que são efetuados por seres humanos, embora a suavidade de caminhos não seja o foco principal desta tese. No entanto, nem sempre é possível realizar essa conjugação entre os campos de influência e os algoritmos de descoberta de caminhos; um exemplo é o algoritmo de pesquisa na franja (“fringe search”, do inglês), bem como o novo algoritmo de pesquisa proposto nesta tese, que se designa por algoritmo de pesquisa pelo melhor vizinho primeiro (“best neighbor first search”, do inglês)

    Estrategia de enrutamiento para la maniobra del enlace a un convoy de vehículos en entornos urbanos, robusta a la incertidumbre en los tiempos de recorrido

    Get PDF
    Esta tesis propone una estrategia de enrutamiento óptima para unidades de transporte inteligente que se mueven de manera autónoma por un entorno urbano conocido. El entorno está definido por un conjunto de calles y cruces (nodos), y en su interior un grupo de unidades móviles independientes se encuentran realizando tareas específicas. Dicho entorno está rodeado por una ruta periférica por la que se mueve continuamente un convoy compuesto por un líder y un número determinado de unidades seguidoras, sin enlace mecánico entre ellos. La misión del convoy es concentrar las unidades independientes antes y después de que hayan realizado, de forma independiente, su tarea. Básicamente, el trabajo se centra en dar solución a la maniobra de enlace consistente en lograr que la unidad independiente (perseguidora), partiendo de su ubicación actual en el interior del mapa, logre alcanzar el nodo periférico idóneo para unirse al convoy. Considerando que este último está limitado a circular por la ruta externa y por tanto no tiene acceso al interior del entorno, el enlace se realizará en uno de los nodos periféricos. El convoy sigue indefinidamente su trayectoria, por lo que la maniobra se considera exitosa siempre que la unidad independiente alcance el nodo de enlace antes que el convoy. El primer objetivo es resolver la maniobra de enlace considerando conocidos los tiempos de recorrido entre los nodos del mapa. Objetivo que incluye dos fases: cálculo del nodo óptimo de enlace y de la ruta que lleve a la unidad perseguidora hasta el mismo. Se entiende por nodo óptimo de enlace aquél que garantiza un tiempo mínimo de maniobra. Además, se ha diseñado un algoritmo de enrutamiento que explora el menor número de nodos posibles lo que garantiza su eficiencia computacional y su idoneidad para su ejecución en tiempo real, de especial interés en entornos complejos. El segundo objetivo es extender estos algoritmos a un entorno donde los tiempos de recorrido entre nodos no son conocidos. Esta incertidumbre, inherente a los tiempos de recorrido de todas las unidades, es propia de escenarios de transporte reales y tiene su origen en diversas fuentes como densidad variable de tráfico, condiciones meteorológicas, momento del día, etc. Para caracterizarla se ha propuesto un modelo gaussiano, donde los tiempos de recorrido son tratados como variables aleatorias parametrizadas por su valor medio y varianza. Por otra parte, este comportamiento no determinista impide garantizar de forma absoluta el éxito seguridad la maniobra de enlace. Por ello, se introduce el parámetro de diseño "Factor de Riesgo", que limita la probabilidad de fallo de la maniobra de enlace. Este factor condiciona además el tiempo de maniobra y el número de re-planificaciones intermedias hasta llegar al nodo final. En la solución propuesta se incluye un centro remoto al que están conectadas de forma inalámbrica todas las unidades de transporte. En el centro remoto se registran los tiempos de recorrido entre nodos consecutivos proporcionados por las unidades de transporte y se estiman los parámetros estadísticos temporales entre nodos no consecutivos mediante técnicas recursivas de Programación Dinámica. Finalmente, se ha procedido a la validación experimental de la propuesta global. En una primera fase se ha recurrido a la herramienta Player/Stage para validar mediante simulación los cálculos desarrollados a partir de un mapa diseñado al efecto. Superada esta, se ha utilizado un demostrador real donde la función de unidad líder y unidad perseguidora ha sido desarrollada por robots Pioneer P3-DX

    Estrategia de enrutamiento para la maniobra del enlace a un convoy de vehículos en entornos urbanos, robusta a la incertidumbre en los tiempos de recorrido

    Get PDF
    Esta tesis propone una estrategia de enrutamiento óptima para unidades de transporte inteligente que se mueven de manera autónoma por un entorno urbano conocido. El entorno está definido por un conjunto de calles y cruces (nodos), y en su interior un grupo de unidades móviles independientes se encuentran realizando tareas específicas. Dicho entorno está rodeado por una ruta periférica por la que se mueve continuamente un convoy compuesto por un líder y un número determinado de unidades seguidoras, sin enlace mecánico entre ellos. La misión del convoy es concentrar las unidades independientes antes y después de que hayan realizado, de forma independiente, su tarea. Básicamente, el trabajo se centra en dar solución a la maniobra de enlace consistente en lograr que la unidad independiente (perseguidora), partiendo de su ubicación actual en el interior del mapa, logre alcanzar el nodo periférico idóneo para unirse al convoy. Considerando que este último está limitado a circular por la ruta externa y por tanto no tiene acceso al interior del entorno, el enlace se realizará en uno de los nodos periféricos. El convoy sigue indefinidamente su trayectoria, por lo que la maniobra se considera exitosa siempre que la unidad independiente alcance el nodo de enlace antes que el convoy. El primer objetivo es resolver la maniobra de enlace considerando conocidos los tiempos de recorrido entre los nodos del mapa. Objetivo que incluye dos fases: cálculo del nodo óptimo de enlace y de la ruta que lleve a la unidad perseguidora hasta el mismo. Se entiende por nodo óptimo de enlace aquél que garantiza un tiempo mínimo de maniobra. Además, se ha diseñado un algoritmo de enrutamiento que explora el menor número de nodos posibles lo que garantiza su eficiencia computacional y su idoneidad para su ejecución en tiempo real, de especial interés en entornos complejos. El segundo objetivo es extender estos algoritmos a un entorno donde los tiempos de recorrido entre nodos no son conocidos. Esta incertidumbre, inherente a los tiempos de recorrido de todas las unidades, es propia de escenarios de transporte reales y tiene su origen en diversas fuentes como densidad variable de tráfico, condiciones meteorológicas, momento del día, etc. Para caracterizarla se ha propuesto un modelo gaussiano, donde los tiempos de recorrido son tratados como variables aleatorias parametrizadas por su valor medio y varianza. Por otra parte, este comportamiento no determinista impide garantizar de forma absoluta el éxito seguridad la maniobra de enlace. Por ello, se introduce el parámetro de diseño "Factor de Riesgo", que limita la probabilidad de fallo de la maniobra de enlace. Este factor condiciona además el tiempo de maniobra y el número de re-planificaciones intermedias hasta llegar al nodo final. En la solución propuesta se incluye un centro remoto al que están conectadas de forma inalámbrica todas las unidades de transporte. En el centro remoto se registran los tiempos de recorrido entre nodos consecutivos proporcionados por las unidades de transporte y se estiman los parámetros estadísticos temporales entre nodos no consecutivos mediante técnicas recursivas de Programación Dinámica. Finalmente, se ha procedido a la validación experimental de la propuesta global. En una primera fase se ha recurrido a la herramienta Player/Stage para validar mediante simulación los cálculos desarrollados a partir de un mapa diseñado al efecto. Superada esta, se ha utilizado un demostrador real donde la función de unidad líder y unidad perseguidora ha sido desarrollada por robots Pioneer P3-DX
    corecore