|
|
Come confrontare algoritmi multi-obiettivo1 Confronta i tempi di esecuzione degli algoritmi " in teoria. Ci sono due modi efficaci per confrontare i tempi di esecuzione degli algoritmi . In primo luogo , è possibile utilizzare la notazione " O grande " . In questo metodo , si guarda alla struttura del codice di un algoritmo , calcolare quanto tempo ci vorrà il codice per completare l'esecuzione . Il risultato sarà una funzione matematica ( in numero di passi ) , che possono poi essere confrontato con altre funzioni . La funzione che è più piccola quando un gran numero di passi viene messa in funzione è più veloce ; cioè , scegliere un grande valore per la variabile , ad esempio n = 9999 e la valutazione delle funzioni - la funzione che fornisce il numero più piccolo è il più veloce. Se non si ha familiarità con la notazione " O grande " , è possibile saltare questa parte e confrontare i tempi di esecuzione solo in pratica . Confronto tempi di esecuzione degli algoritmi " in pratica . Questo passo dovrebbe essere fatto a prescindere dal fatto che avete già usato la notazione " O grande ", per confrontare gli algoritmi . Eseguire ogni algoritmo sullo stesso computer . Ora gli algoritmi e confrontare i conseguenti tempi di esecuzione . Prova questo con più set di circostanze carico, come quello di avere diversi programmi in esecuzione in background , come l'algoritmo esegue . In questa circostanza , il computer ha meno RAM disponibile , in modo da essere in grado di vedere come gli algoritmi confronta in risorse limitate . confrontare l'output degli algoritmi . Sebbene algoritmi multiobiettivo corretti dovrebbero convergere sullo stesso insieme di soluzioni , a causa di piccoli errori nel codice , è spesso il caso che le soluzioni differiscono di una certa quantità . Confrontare le differenze calcolando la distanza euclidea tra le soluzioni . La maggior parte dei programmi software offrono una funzione di distanza euclidea per l'uscita vettore ( l'uscita di algoritmi multi- obiettivo ) . Se siete senza tale funzione , utilizzare la seguente formula : sqrt ( sum ( [ soli1 - soli2 ] ^ 2) ) , dove " sqrt " è la funzione radice quadrata , "somma" è la somma di notazione sigma che aggiunge tutte le I valori all'interno della funzione , " soli1 " è la soluzione " esima " per il primo algoritmo e " soli2 " è la soluzione " esima " per il secondo algoritmo . Dottorati di ricerca
|
|
Copyright © https://www.educazione.win - Tutti i diritti riservati |