Como comparar multi-objetivo Algoritmos

Se você estiver familiarizado com algoritmos , você provavelmente pode adivinhar que os algoritmos multi- objetivos são simplesmente algoritmos que pretendem otimizar mais de uma função em uma única vez . Em certo sentido , os algoritmos multi- objetivas são expansões de problemas de programação linear , em que uma função é a de ser otimizado sob uma série de restrições. Muitas vezes, é útil comparar os algoritmos multi- objetivos que pretendem resolver o mesmo conjunto de problemas , como alguns algoritmos podem ter melhor desempenho do que outros. A única questão remanescente em comparação de algoritmos é determinar que as normas a utilizar para avaliar as comparações. Instruções

um

Comparar tempos de execução dos algoritmos em teoria. Há duas maneiras eficazes para comparar os tempos de execução de algoritmos. Primeiro, você pode usar o ” grande O” notação . Neste método, você olha para a estrutura do código de um algoritmo , o cálculo de quanto tempo vai demorar o código para concluir a execução . O resultado será uma função matemática ( em número de passos ) , o qual pode então ser comparado com outras funções . A função que é menor quando um grande número de passos é colocado na função é mais rápido; isto é, escolher um grande valor para a variável , como n = 9999 e avaliar as duas funções – a função que produz o menor número é o mais rápido. Se você não estiver familiarizado com “grande O ” notação , você pode pular esta parte e comparar os tempos de execução apenas na prática.

2

Comparar tempos de execução dos algoritmos na prática. Este passo deve ser feito , independentemente de você já ter usado “grande O ” notação para comparar os algoritmos. Execute cada algoritmo no mesmo computador . Tempo dos algoritmos e comparar os tempos de execução resultantes. Tente isto com vários conjuntos de circunstâncias de carga , tais como ter vários programas rodando em segundo plano como o algoritmo executa . Nesta circunstância , o computador tem menos RAM disponível, assim você será capaz de ver como os algoritmos comparar com recursos limitados.

3

Compare a saída dos algoritmos . Embora corretos algoritmos multi- objetivos devem convergir para o mesmo conjunto de soluções , devido a pequenos erros no código , muitas vezes é o caso de que as soluções são diferentes por alguma quantia. Comparar essas diferenças através do cálculo da distância Euclidiana entre as soluções . A maioria dos programas de computador oferecem uma função de distância euclidiana para a saída do vetor (a saída de algoritmos multi- objetivas ) . Se você estiver sem essa função , use a seguinte fórmula: sqrt ( sum ( [ soli1 – soli2 ] ^ 2) ), onde ” sqrt ” é a função raiz quadrada , “sum ” é a soma de notação sigma que agrega toda a valores dentro da função “, soli1 ” é a solução ” om ” para o primeiro algoritmo e ” soli2 ” é a solução ” om ” para o segundo algoritmo.

Deixe um comentário