Un algoritmo adaptativo es un algoritmo que cambia su comportamiento en el momento de su ejecución, [1] en función de la información disponible y de un mecanismo de recompensa (o criterio) definido a priori. Dicha información podría ser la historia de los datos recibidos recientemente, información sobre los recursos computacionales disponibles u otra información adquirida en tiempo de ejecución (o conocida a priori ) relacionada con el entorno en el que opera.
Entre los algoritmos adaptativos más utilizados se encuentra el algoritmo de mínimos cuadrados medios (LMS) de Widrow-Hoff , que representa una clase de algoritmos de descenso de gradiente estocásticos utilizados en el filtrado adaptativo y el aprendizaje automático. En el filtrado adaptativo, el LMS se utiliza para imitar un filtro deseado al encontrar los coeficientes de filtro que se relacionan con la producción del mínimo cuadrado medio de la señal de error (diferencia entre la señal deseada y la real).
Por ejemplo, la partición estable, que no utiliza memoria adicional, es O ( n lg n ), pero dada O ( n ) de memoria, puede ser O ( n ) en el tiempo. Tal como se implementa en la biblioteca estándar de C++ , stable_partition es adaptativa y, por lo tanto, adquiere tanta memoria como puede (hasta lo que necesitaría como máximo) y aplica el algoritmo utilizando esa memoria disponible. Otro ejemplo es la ordenación adaptativa , cuyo comportamiento cambia según la preclasificación de su entrada.
Un ejemplo de algoritmo adaptativo en sistemas de radar es el detector de tasa constante de falsas alarmas (CFAR).
En el aprendizaje automático y la optimización , muchos algoritmos son adaptativos o tienen variantes adaptativas, lo que generalmente significa que los parámetros del algoritmo, como la tasa de aprendizaje , se ajustan automáticamente de acuerdo con las estadísticas sobre la optimización hasta el momento (por ejemplo, la tasa de convergencia ). [2] Los ejemplos incluyen recocido simulado adaptativo , descenso de coordenadas adaptativo , cuadratura adaptativa , AdaBoost , Adagrad , Adadelta, RMSprop y Adam . [3]
En la compresión de datos , los algoritmos de codificación adaptativa como la codificación Huffman adaptativa o la predicción por coincidencia parcial pueden tomar un flujo de datos como entrada y adaptar su técnica de compresión en función de los símbolos que ya han encontrado. [4]
En el procesamiento de señales , el códec ATRAC ( codificación acústica de transformación adaptativa ) utilizado en las grabadoras MiniDisc se denomina "adaptativo" porque la longitud de la ventana (el tamaño de un "fragmento" de audio) puede cambiar según la naturaleza del sonido que se comprime, para intentar lograr la estrategia de compresión con el mejor sonido.
{{cite book}}
: |website=
ignorado ( ayuda )