|
Cómo comparar los algoritmos multiobjetivoSi 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 . 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. 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. programas de doctorado
Artículos relacionados
Artículos recomendados
|
Derechos de autor © https://www.aprender.cc - Todos los derechos reservados |