Cómo comparar los algoritmos multiobjetivo

Si está familiarizado con los algoritmos , usted probablemente puede adivinar que los algoritmos multiobjetivo son simplemente algoritmos que tengan la intención de optimizar más de una función en un solo momento . En un sentido , los algoritmos multiobjetivo son expansiones de problemas de programación lineal , en la que una función es la de ser optimizado en virtud de una serie de limitaciones . A menudo es útil comparar los algoritmos multi-objetivo que pretenden resolver el mismo conjunto de problemas , ya que algunos algoritmos pueden funcionar mejor que otros. La única pregunta que queda en algoritmos que comparan es determinar cuáles son las normas a utilizar para evaluar las comparaciones. Instrucciones Matemáticas 1

Compara tiempos de funcionamiento de los algoritmos " en teoría. Hay dos formas efectivas para comparar los tiempos de ejecución de algoritmos. En primer lugar , puede utilizar la notación "big O". En este método, nos fijamos en la estructura del código de un algoritmo, el cálculo de cuánto tiempo va a tomar el código termine de ejecutarse . El resultado será una función matemática ( en número de pasos ) , que luego se puede comparar con otras funciones . La función que es menor cuando se pone en la función de un gran número de pasos es más rápido; es decir , elegir un valor grande para la variable , tal como n = 9,999 y evaluar ambas funciones - la función que produce el número más pequeño es el más rápido . Si usted no está familiarizado con la notación "big O" , puede omitir esta parte y comparar los tiempos de funcionamiento sólo en la práctica .
2

comparar tiempos de funcionamiento de los algoritmos " en la práctica. Este paso se debe realizar independientemente de si ya ha utilizado la notación "big O " para comparar los algoritmos. Ejecutar cada algoritmo en el mismo equipo . Tiempo de los algoritmos y comparar los tiempos de funcionamiento resultantes. Intente esto con varios conjuntos de circunstancias de carga , tales como tener varios programas corriendo en el fondo como el algoritmo realiza . En esta circunstancia, el equipo tiene menos RAM disponible , por lo que será capaz de ver cómo se comparan los algoritmos en los recursos limitados.
3

Comparar la salida de los algoritmos. Aunque los algoritmos de múltiples objetivos correctos deberían converger en el mismo conjunto de soluciones , debido a los pequeños errores en el código , a menudo es el caso que las soluciones difieren en cierta cantidad . Comparar estas diferencias mediante el cálculo de la distancia euclídea entre las soluciones . La mayoría de los programas de software ofrecen una función de la distancia euclídea de vector de salida (la salida de los algoritmos multi-objetivo ) . Si no tiene esa función , utilice la siguiente fórmula: sqrt (sum ( [ soli1 - soli2 ] ^ 2 ) ), donde " sqrt " es la función de la raíz cuadrada, " suma " es la suma de notación sigma que añade toda la valores dentro de la función , " soli1 " es la solución " imo" para el primer algoritmo y " soli2 " es la solución " imo" para el segundo algoritmo.