ecoestadistica.com

martes, julio 04, 2006

Paper: como funciona una heurística antivirus??? (Segunda Parte)

Existen 5 métodos típicos que se emplean en matemáticas y estadísticas explotarorias y de modelado. Estos métodos son:

* Tabú search (TS, Búsqueda tabú)
* Genetic algorithms (GA, Algoritmos genéticos)
* Método Hero
* Random ascent (RA, Subida azarosa)
* Simulated annealing (SA, Temple simulado)

La búsqueda tabú

Este algoritmo es francamente útil. Teóricamente, se emplea para poder evitar caer en el cálculo de óptimos locales, que evidentemente no serán óptimos en todo el espacio de soluciones. Este efecto se consigue empleado estructuras de memoria, que retienen las soluciones ya exploradas y que por tanto, serán evitadas en futuras exploraciones, incurriendo en un ahorro computacional interesante.

En motores antivirus heurísticos, las listas tabú pueden emplearse con fines similares: evitar la caída en soluciones locales óptimas que no sean proyectable a un espacio de soluciones mayor. Un buen motor heurístico debe evitar excelentes detecciones proactivas de ciertas familias a costa de no explorar soluciones en otras familias de muestras.

Algoritmos genéticos

Muy interesantes para determinar soluciones heurísticas. En este caso, se toma un universo de soluciones determinada, y se hace un ajuste de puntaje, en función a la calidad de la solución. Se descartan las soluciones menos óptimas y se refunden las restantes en universos menores, a los que se les vuelve a hacer el puntaje. Este proceso iterativo acaba, en un paralelismo con la teoría evolutiva, en la elección de las mejores soluciones.

Este sistema puede ser empleado por motores antivirus para clasificar las posibles soluciones y asignar, para cada caso, puntaciones para poder filtrar en función de la bondad del resultado obtenido para cada aproximación. Sobre el papel, la detección heurística final es la más adecuada.

Método Hero

Un método que suele aplicarse bastante en cosas muy distantes a las soluciones antivirus, la gestión del régimen selvícola y forestal, pero que puede ser empleado en una solución antivirus.

En este caso, se escoge aleatoriamente una solución inicial, en este caso un régimen de comportamiento en la detección. Esta solución inicial se enfrenta a otras soluciones de un modo secuencial, con el fin de determinar si otras soluciones plausibles mejorarían la primera elección. En caso de que se produzca la mejora, la solución original es sustituída por aquella que la mejora. Este proceso se repite hasta que la secuencia finaliza.

Subida azarosa

Parecido al anterior, pero en este caso la secuencia se detiene cuando se alcanza el número máximo de iteraciones de mejora inicialmente establecido, aún no habiendo acabado la secuencia de todas las soluciones posibles a enfrentar con la inicialmente escogida.

Temple simulado

Muy vinculado con las Redes Neuronales, este método está especialmente orientado a universos muestrales tremendamente grandes, donde el tiempo de computación es crítico, y donde por motivos obvios, no podemos invertir años para determinar la solución óptima.

Las iteraciones de optimización parte de un estado actual s0, y contempla estados próximos de solución s1, s2 … sn. El paso a estos estados se realiza si probabilísticamente el estado final se adecúa mejor a los requisitos de optimización establecidos. En motores antivirus, obviamente, los estados sn son estados de solución, entre los que se salta buscando el resultado óptimo.

Redes neuronales. ¿El futuro en la gestión antimalware?


Todos estos métodos son piezas clave de la inteligencia artificial, ya que a fin de cuentas, son métodos de decisión. Las redes neuronales son, con casi toda probabilidad, el máximo exponente de los métodos exploratorios que hemos visto.
Las ventanas de un modelo de red neuronal proporcionarían a un antivirus las mejores ventajas de un sistema de este tipo: Aprendizaje autónomo, organización interna automática, tolerancia a los fallos, flexibilidad y respuestas rápidas en tiempo real.

Origen

ecoestadistica.com