|
|
Come convertire un problema non lineare Programmazione Programmazione Lineare1 Verificare la funzione obiettivo è concava . È possibile eseguire questa operazione dalla prova , utilizzando la definizione rigorosa di concavità o graficamente la funzione . Se si sceglie di rappresentare graficamente la funzione , analizzare il grafico immaginando ogni set di due punti su quella funzione . Chiedetevi : "Se dovessi tracciare una linea tra questi due punti , avrebbe la funzione stessa si trovano sopra quella linea ? " Se la risposta è affermativa, allora la funzione è concava , e si può convertire il problema di programmazione lineare per un problema di programmazione lineare. Scegli punti r rottura lungo l'asse x . Chiamare questi punti di rottura d ( 1 ) , d ( 2 ) , ... , d ( r) . Il numero di punti di rottura che si sceglie non è del tutto importante ; Altri punti di interruzione daranno una conversione più accurata , ma faranno il problema risultante più complicato . Trova le corrispondenti valori della funzione in quei punti di rottura . Li chiamano C (1 ) , c ( 2 ) , ... , c ( r) . Calcolare la pendenza per ogni pezzo della funzione ormai rotto . La pendenza è facilmente calcolato per il " k-esima " pezzo attraverso s ( k) = [c ( k) -c ( k- 1 ) ] /[ d ( k) - d ( k- 1) ] . riscrivere la funzione obiettivo , utilizzando le somme di piste invece che la funzione originale . Se la funzione obiettivo originale era di una funzione di " x ", sarà ora una funzione di " x ( i) , " dove ogni "i" rappresenta il " esimo " pezzo della funzione . In altre parole , si avrà la funzione obiettivo : sum [ x ( i) * s (i) ] per tutti i Riscrivere i vincoli . . Per ogni vincolo , sostituire " x " con le somme di "x ( i) , " come avete fatto per la funzione obiettivo . Inoltre , dare " x ( i) " il limite superiore di d ( i) - d ( i- 1 ) . Questo completa la conversione del problema di programmazione lineare ad uno lineare. Dottorati di ricerca
|
|
Copyright © https://www.educazione.win - Tutti i diritti riservati |