stringtranslate.com

Algoritmo en línea

En informática , un algoritmo en línea [1] es aquel que puede procesar su entrada pieza por pieza en forma serial, es decir, en el orden en que la entrada ingresa al algoritmo , sin tener toda la entrada disponible desde el principio. .

Por el contrario, un algoritmo fuera de línea recibe todos los datos del problema desde el principio y debe generar una respuesta que resuelva el problema en cuestión. En la investigación de operaciones , el área en la que se desarrollan los algoritmos en línea se denomina optimización en línea .

Como ejemplo, considere los algoritmos de clasificación clasificación por selección y clasificación por inserción : la clasificación por selección selecciona repetidamente el elemento mínimo del resto sin clasificar y lo coloca al frente, lo que requiere acceso a toda la entrada; por tanto, es un algoritmo fuera de línea. Por otro lado, la ordenación por inserción considera un elemento de entrada por iteración y produce una solución parcial sin considerar elementos futuros. Por tanto, la clasificación por inserción es un algoritmo en línea.

Tenga en cuenta que el resultado final de una ordenación por inserción es óptimo, es decir, una lista correctamente ordenada. Para muchos problemas, los algoritmos en línea no pueden igualar el rendimiento de los algoritmos fuera de línea. Si la relación entre el rendimiento de un algoritmo en línea y un algoritmo fuera de línea óptimo es acotada, el algoritmo en línea se llama competitivo . [1]

No todos los algoritmos fuera de línea tienen una contraparte en línea eficiente .

En teoría gramatical se asocian con las gramáticas rectilíneas .

Definición

Como no conoce todos los datos de entrada, un algoritmo en línea se ve obligado a tomar decisiones que luego pueden resultar no óptimas, y el estudio de los algoritmos en línea se ha centrado en la calidad de la toma de decisiones que es posible en este entorno. El análisis competitivo formaliza esta idea comparando el rendimiento relativo de un algoritmo en línea y fuera de línea para la misma instancia de problema. Específicamente, el ratio competitivo de un algoritmo se define como el ratio del peor de los casos entre su coste dividido por el coste óptimo, sobre todos los insumos posibles. El ratio competitivo de un problema en línea es el mejor ratio competitivo logrado por un algoritmo en línea. Intuitivamente, el ratio competitivo de un algoritmo da una medida de la calidad de las soluciones producidas por este algoritmo, mientras que el ratio competitivo de un problema muestra la importancia de conocer el futuro de este problema.

Otras interpretaciones

Para otros puntos de vista sobre entradas en línea a algoritmos , consulte

Ejemplos

Algunos algoritmos en línea :

Problemas en línea

Un problema que ejemplifica los conceptos de algoritmos en línea es el problema del viajero canadiense . El objetivo de este problema es minimizar el costo de alcanzar un objetivo en un gráfico ponderado donde algunos de los bordes no son confiables y es posible que se hayan eliminado del gráfico. Sin embargo, que un borde ha sido eliminado ( fallido ) solo se revela al viajero cuando llega a uno de los puntos finales del borde. El peor caso para este problema es simplemente que todos los bordes no confiables fallan y el problema se reduce al habitual problema de ruta más corta . Se puede realizar un análisis alternativo del problema con la ayuda del análisis competitivo. Para este método de análisis, el algoritmo fuera de línea sabe de antemano qué bordes fallarán y el objetivo es minimizar la relación entre el rendimiento de los algoritmos en línea y fuera de línea. Este problema es PSPACE completo .

Hay muchos problemas formales que ofrecen más de un algoritmo en línea como solución:

Ver también

Referencias

  1. ^ ab Karp, Richard M. (1992). "Algoritmos en línea versus algoritmos fuera de línea: ¿Cuánto vale conocer el futuro?" (PDF) . Congreso IFIP (1) . 12 : 416–429 . Consultado el 17 de agosto de 2015 .
  2. ^ Dochow, Robert (2016). Algoritmos en línea para el problema de selección de cartera. Springer Gabler.

enlaces externos