HMY 799 1: Αναγνώριση Συστημάτων Διαλέξεις 8 9 Ομαλοποίηση (smoothing) Μη παραμετρική αναγνώριση γραμμικών συστημάτων: Παραδείγματα
Συστήματα με θόρυβο Ασυσχέτιστος θόρυβος και στην είσοδο και στην έξοδο: Φ ( ) yx f Φ zu ( f ) γ yx ( f ) = = Φ ( f) Φ ( f) ( Φ ( f) Φ ( f))( Φ ( f) Φ ( f)) c c 1 xx yy uu mm zz ee 1 = 1 c1( f) c( f) c1( f) c( f) Φmm( ) ( f ) = f Φuu ( f ) γ yx ( f ) < 1 Φee( f ) ( f) = Φ ( f ) zz Η βέλτιστη συνάρτηση μεταφοράς υπό την έννοια των ελάχιστων τετραγώνων, δηλ. αυτή που ελαχιστοποιεί το φάσμα του θορύβου εξόδου Φee(f) είναι: Φ yx Hopt = Φ xx m(t) x(t) () x(t) H(f) H(f) z(t) z(t) Γι αυτή την τιμή του Η, ο θόρυβος γίνεται ασυσχέτιστος με την έξοδο z(t)!
Στη γενική περίπτωση: q Y( f) = H ( f) X ( f) E( f) j= 1 q j Φ ( f ) = H ( f) Φ ( f) Φ ( f) yi j ji in j= 1 Για ασυσχέτιστο θόρυβο: q Φ ( f ) = H ( f ) Φ ( f ), i = 1,,..., q Για ασυσχέτιστες εισόδους: j Συστήματα με πολλαπλές εισόδους yi j ji j= 1 q q * yy ( f ) Hi ( f) H j ( f) ij ( f) ee( f) i= 1 j= 1 Φ = Φ Φ x 1 (t) x (t) x q (t) H 1 (f) H (f) H q (f) y 1 (t) y (t) y q (t) () Φ ( f ) = H ( f) Φ ( f), i = 1,,..., q yi i ii q Φ ( f ) = H ( f) Φ ( f) Φ ( f) yy i ii ee i= 1 Μπορούμε με άλλα λόγια να θεωρήσουμε το σύστημα ως σύνολο συστημάτων 1 εισόδου/ 1 εξόδου Φ yi ( f ) Hi ( f ) = Φ ( f ) ii
Γενική περίπτωση: Συστήματα δύο εισόδων * * 1 11 1 1 1 1 Φ ( f) = H Φ H H Φ H H Φ H Φ Φ yy H Φ H Φ H Φ H Φ * * 1 e 1 1 1 e e e ee x 1 (t) H 1 (f) y 1 (t) Φ ( f) = H Φ H Φ Φ y1 1 11 1 e1 Φ ( f) = H Φ H Φ Φ y 1 1 e x (t) H (f) y (t) Μη μοναδιαία συνάφεια μεταξύ των εισόδων: μοναδική λύση H H Φ Φ ( f ) 1 ( f ) Φ ( f ) ( ) ( f ) 1 y y1 Φ f Φy1 1 ( f) = Φ 11 ( f )[1 γ 1 ( f )] Φ Φ ( f ) 1 ( f ) Φ ( f ) ( ) ( f ) 1 y1 y Φ f Φy1 ( f) = Φ( f)[1 γ 1( f)] Ασυσχέτιστες είσοδοι: συστήματα 1 εισόδου Μοναδιαία συνάφεια μεταξύ των εισόδων: Σύστημα 1 εισόδου H ( f ) = H ( f ) H ( f ) H ( f ) 1 3 x 1 (t) H 3 (f) H 1 (f) y 1 (t) x (t) H (f) y (t)
Για ασυσχέτιστο θόρυβο: * 1 11 1 1 Φ ( f) = H ( f) Φ ( f) H ( f) H ( f) Φ ( f) yy * 1 1 Συστήματα δύο εισόδων H ( f ) H ( f ) Φ ( f ) H ( f ) Φ ( f ) Φ ( f ) =Φ ( f) Φ ( f) yx : ye : ee x 1 (t) Για ασυσχέτιστες εισόδους: x (t) Φ ( f ) = H ( f ) Φ ( f ) H ( f ) Φ ( f ) Φ ( f ) yy 1 11 Φ y: x ( f) =Φ vv ( f) = γ y1( f) γ y( f) Φyy ( f) Φ ee( f) = 1 γ y1( f) γ y( f) Φyy ( f) Συνάρτηση πολλαπλής συνάφειας (multiple coherence function) ως: γ yx : Φvv ( f) Φnn( f) ( f ) = = 1 Φ ( f) Φ ( f) yy * 1 11 1 1 Φ vv ( f ) = H ( f ) Φ ( f ) H ( f ) H ( f ) Φ ( f ) yy * 1 1 H ( f) H ( f) Φ ( f) H ( f) Φ ( f) Ισχύει πάντα: 0 γ yx : ( f ) 1 Για ασυσχέτιστες εισόδους: γ yx : = γ y 1 γ y ee ( f ) ( f ) ( f ) H 1 (f) H (f) y 1 (t) y (t)
Μη παραμετρική αναγνώριση γραμμικών συστημάτων Πεδίο χρόνου Ανάλυση κρουστικής απόκρισης (Impulse response analysis) Ανάλυση βηματικής απόκρισης (Step response analysis) Ανάλυση συσχέτισης (Correlation analysis) Είσοδος λευκός θόρυβος g ϕ ( τ ) yu 0( τ ) = σ yt () gt ˆ( ) = α yt () yt ( 1) gt ˆ( () = α Γενικά Ν Ν ˆ ϕ ( τ) = gˆ ( τ)* ˆ ϕ ( τ) yu uu Ν ˆ ϕ (0) Ν Ν Ν ˆ ϕ (0) ˆ ϕ ( 1)... ˆ ϕ ( ( Μ 1)) yu uu uu uu gˆ(0) Ν Ν Ν Ν ˆ ϕ (1) ˆ ˆ ˆ ˆ (1) (0)... ( ( )) (1) yu ϕ ϕ ϕ Μ g uu uu uu =.................. Ν Ν Ν Ν ˆ ϕ ( Μ 1) ˆ ϕ ( Μ 1) ˆ ϕ ( Μ ) ˆ ϕ (0) gˆ( Μ 1) yu uu uu uu 1 Ν ( ) 1 gˆ = Φ Φ uu Ν yu Γραμμική παλινδρόμηση/ / ελάχιστα τετράγωνα y=ugˆ y(1) u(1) 0... 0 gˆ (0) y() u() u(1)... 0 gˆ (1) =.................. y ( ) u ( ) u ( 1)... u ( M 1) gˆ ( Μ 1) T g=uu ˆ ( ) 1 T Uy g 0 (τ) υ(t)
Μη παραμετρική αναγνώριση γραμμικών συστημάτων Πεδίο συχνότητας Ημιτονοειδής ανάλυση (Sine wave testing) ut () = α cos( ω0t) y () t = α G0 ( ω0 )cos( ω0 t G0 ( ω0 )) υ () t transient ϕ = G ( ω ) 0 0 Ανάλυση απόκρισης συχνότητας (Frequency response analysis) Εμπειρική εκτίμηση συνάρτησης μεταφοράς Y ( ) ˆ( ) ω G ω = U ( ω) (μεγάλη διακύμανση για Ν > ) ˆ Φ yu ( ω ) G ( ω ) = Φ ( ω) uu Ανάλυση συνάφειας (Coherence analysis) ( ) yu f γ yu ( f ) = Φ Φ ( f ) Φ ( f ) uu yy g 0 (τ) υ(t)
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) Όπως είδαμε, η εμπειρική συνάρτηση μεταφοράς χαρακτηρίζεται από μεγάλη διακύμανση (ανεξάρτητη του Ν) Μια λύση είναι η ομαλοποίηση στο πεδίο της συχνότητας, χρησιμοποιώντας κατάλληλη συνάρτηση παραθύρου (windowing) Ανάλογη ιδέα με την εκτίμηση πυκνότητας φασματικής ισχύος αλλά διαφορετικός σκοπός: Πυκνότητα φασματικής ισχύος: Εκτίμηση φάσματος από δείγματα σήματος Εδώ έχουμε μια εκτίμηση της συνάρτησης μεταφοράς/ απόκρισης συχνότητας και θέλουμε να πάρουμε μια εκτίμηση με μικρότερη διακύμανση Βασική ιδέα: Η (αληθινή) απόκριση συχνότητας G(ω) είναι ομαλή συνάρτηση του ω, άρα για κοντινές τιμές του ω οι τιμές της G(ω) σχετίζονται μεταξύ τους ˆ Y ( ω) Όμως στα προηγούμενα είδαμε ότι οι τιμές της εκτίμησης G( ω) = είναι ασυσχέτιστες U ( ω) μεταξύ τους Y ( ) Καθώς η εκτίμηση ˆ( ) ω G ω = υπολογίζεται με U ( ω) βάση το DFT εισόδου/ εξόδου, η ανάλυση συχνότητας είναι π/ν δηλ. εξαρτάται από τον αριθμό δειγμάτων Άρα αν η ανάλυση συχνότητας είναι μικρή σε σχέση με το πόσο γρήγορα αλλάζει η ποσότητα G 0 (ω), η ποσότητα ˆ π k π k G ( ), k, ω αντιστοιχεί ουσιαστικά σε ασυσχέτιστες, αμερόληπτες εκτιμήσεις της ίδιας ποσότητας G 0 (ω)
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) Έστω τώρα ότι η G 0 (ω) είναι σταθερή στο διάστημα π k1 π k = ω0 Δ ω < ω < ω0 Δ ω = Μπορούμε να εκτιμήσουμε αυτή την τιμή από τις τιμές π k Gˆ( ), k ( k1, k ) π k 1 π k παίρνοντας απλά το μέσο όρο τους. Ένας καλός τρόπος είναι να χρησιμοποιήσουμε ως βάρη το αντίστροφο της διακύμανσης κάθε εκτιμητέας τιμής, δηλ. α k k= k1 ( ω 0) = k Gˆ( ) k π k Gˆ( ) * α k k= k π k 1 U ( ) όπου το α k αντιστοιχεί στη διακύμανση, δηλ. α = Για μεγάλο Ν, τα αθροίσματα >ολοκληρώματα άρα 0 ˆ( ) ˆ ω Δω α ξg ξ dξ ω 0 Δω U G ω = ( ξ ) ( 0) α = ω0 Δω α ξd ξ ξ Φ ( ) υ ξ ω ω 0 Δ k Φ υ π k ( ) * Σημ. Αποτέλεσμα από στατιστική: Αν έχουμε εκτιμήσεις της ίδιας ποσότητας με διαφορετική διακύμανση, η καλύτερη εκτίμηση (ελάχιστη διακύμανση) της ποσότητας αυτής δίνεται από το άθροισμα με βάρη το αντίστροφο της διακύμανσης της κάθε μέτρησης
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) Αν η συνάρτηση μεταφοράς δεν είναι ακριβώς σταθερή στο διάστημα μεταξύ ( ω : 0 Δ ωω, 0 Δω) Είναι λογικό να πολλαπλασιάσουμε την προηγούμενη σχέση με μια συνάρτηση παραθύρου W(ξ) η οποία δίνει μεγαλύτερο βάρος στις τιμές κοντά στο ω 0, δηλ. ω0 Δ ω ω0 Δω ˆ( ω0 ) = ω0 Δω ( ) G 0 W ( ξ ω ) α Gˆ ( ξ) dξ γ ω Δω W γ 0 ξ ω α dξ 0 ξ ξ Αν το φάσμα του θορύβου Φ υ ( ξ ) είναι γνωστό μπορούμε να υπολογίσουμε την παραπάνω. Αν όχι? Αν το φάσμα θορύβου αλλάζει αργά σε σύγκριση με το πλάτος του παραθύρου, μπορούμε να υποθέσουμε ότι παραμένει σταθερό και ίσο με Φ υ ( ω ). Άρα: U ( ξ ) ( ω ) αξ = Φ υ 0 Έτσι, η (1) απλοποιείται σε: ω0 Δ ω ( ˆ 0) ( ) ( ) 0 ˆ( ) Wγ ξ ω U ξ G ξ dξ ω Δω G ω = ω0 Δω W ( ξ ω ) U ( ξ) dξ 0 γ ω Δω 0 0 0
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) Η παράμετρος γ ελέγχει το πλάτος του παραθύρου γ : πλάτος στο πεδίο της συχνότητας Μεγάλο γ: μειωμένη διακύμανση αλλά αυξημένη απόκλιση (bias): Μέσος όρος περισσότερων συχνοτήτων που μπορεί να διαφέρουν μεταξύ τους Το πλάτος του παραθύρου ελέγχει το συμβιβασμό απόκλισης/διακύμανσης (bias/variance trade off)
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) H εκτίμηση αυτή είναι ισοδύναμη με την: ˆ Φ ( ω) ˆ ( ) yu G ω = Φ ˆ ( ω ) uu Υπολογισμός στην πράξη: 1 ˆ ϕuu ( τ) = unun ( ) ( τ) Φ ˆ n= 1 i ( ) ( ) ˆ uu ω = w uu ( ) e τω γ τ ϕ τ τ = Διαλέγουμε την παράμετρο γ του παραθύρου έτσι ώστε οι συντελεστές Fourier να μηδενίζονται για κάποια τιμή δ όπου δ<<ν. π.χ. παράθυρο Bartlett Παρόμοια υπολογίζουμε και την εκτίμηση ˆ ( ) Φ yu ω
Εμπειρική συνάρτηση μεταφοράς Ομαλοποίηση (smoothing) Άλλος τρόπος ομαλοποίησης (ανάλογος με μέθοδο Welch) Χωρίζουμε τα δεδομένα μήκους Ν σε Μ τμήματα μήκους Κ, υπολογίζουμε την εκτίμηση k ˆ k Y ( ) R G ω R ( ω) =, k 1,,..., M k U ( ω) = R Παίρνουμε το μέσο όρο αυτών των εκτιμήσεων Gˆ M 1 ( ) ˆ k ω = GR( ω) M M k = 1 ή (με βάρη αντίστροφα της διακύμανσης) π k M R ( ) ˆ k β k ω GR( ) ˆ k = 1 R k ( ω0) =, β k( ω) = UR( ω) M R β k ( ω) k = 1 G περιοδόγραμμα κάθε τμήματος
Εκτίμηση φάσματος θορύβου Αν είχαμε μετρήσεις του θορύβου θα μπορούσαμε να εκτιμήσουμε κατευθείαν το φάσμα (συνήθως δεν τις έχουμε) Στην πράξη αφού πάρουμε την εκτίμηση gt ˆ( ) μπορούμε να εκτιμήσουμε τις τιμές του θορύβου ως εξής: M 1 ˆ υ() t = yt () gˆ ( τ) ut ( τ) = yt () Gqut ˆ ( ) () τ =0 και να εκτιμήσουμε το φάσμα του, χρησιμοποιώντας αυτές τις τιμές. Ακόμη μπορούμε να εκτιμήσουμε το φάσμα από τη σχέση (ασυσχέτιστος θόρυβος) Φ ( ω) =Φ ( ) ( ) yy zz ω Φυυ ω Φ ( ω) yu Φ zz ( ω) = G0 ( ω) Φ ( ω) = uu Φ ( ω) uu ˆ Φ ( ω ) ˆ ( ) ˆ yu ω =Φ yy ( ω) Φ υυ ˆ Φ ( ω) g (τ) uu 0 z(t) υ(t)
Παράδειγμα Δυναμική απόκριση βιοϊατρικού συστήματος (ανθρώπινος αστράγαλος) Γραμμική ΔΕ δεύτερης τάξης Είσοδος: ροπή, Έξοδος: θέση Ιδανική περίπτωση: GW Ευρυζωνική περίπτωση: ΒΠ Φιλτράρισμα, 00 Hz Βαθυπερατή περίπτωση: ΒΠ Φιλτράρισμα, 50 Hz Θόρυβος: 10 db
Φάσματα εισόδου/εξόδου Παράδειγμα
Παράδειγμα Μη παραμετρική αναγνώριση (πεδίο χρόνου): Ελάχιστα τετράγωνα (Α) «αληθινή» (Β) Ιδανική περίπτωση χωρίς θόρυβο (C) Ευρυζωνική χωρίς θόρυβο (D) Ευρυζωνική, 10 db θόρυβος (E) Βαθυπερατή χωρίς θόρυβο (F) Βαθυπερατή, 10 db θόρυβος
Μη παραμετρική αναγνώριση (πεδίο συχνότητας) Παράδειγμα
Έστω τo σύστημα: Παράδειγμα Σύστημα ARX Σ 1 h 1 Σ 1 e,u ασυσχέτιστα h υ(t) h 1
Κρουστική απόκριση, απόκριση συχνότητας B=[0 1]; A=[1-0.8]; h1true = impz(b,a); [H,W] = freqz(b,a); Προσομοίωση Σ1 Σ 1 h 1
e,u ασυσχέτιστα Προσομοίωση Σ1 h 1 z(t) Ν=104; B=[0 1]; A=[1-0.8]; u=randn(,1); z=filter(b,a,u); e=randn(,1); y=ze;
Συσχέτιση μεταξύ εισόδου/εξόδου Προσομοίωση Σ1 h 1 [czu,lags]=xcorr(z,u,'biased'); [cyu,lags]=xcorr(y,u,'biased');
Συσχέτιση μεταξύ εισόδου/εξόδου Προσομοίωση Σ1 h 1 [czu,lags]=xcorr(z,u,'biased'); [cyu,lags]=xcorr(y,u,'biased');
Ανάλυση συσχέτισης Μη παραμετρική αναγνώριση: Ανάλυση συσχέτισης Η είσοδος πλησιάζει λευκό θόρυβο, άρα Σ 1 h 1 Ν=104; M=45; hest_zu=czu(floor(length(czu)/)1:floor(length(czu)/)m1)/(var(u)); hest_yu=cyu(floor(length(cyu)/)1:floor(length(czu)/)m1)/(var(u));
Ανάλυση συσχέτισης Τι γίνεται για διαφορετικές τιμές του Ν? Σ 1 h 1 Ν=50 Ν=100
Ανάλυση συσχέτισης Τι γίνεται για διαφορετικές τιμές του Ν? Χρειαζόμαστε πολλά δεδομένα για να πάρουμε καλή εκτίμηση Σ 1 h 1 Ν=10000 Ν=1000000
Στο πεδίο της συχνότητας Cross spectral density in Matlab: cpsd [Tzu,w] = tfestimate(u,z); [Tyu,w] = tfestimate(u,y); Απόκριση συχνότητας Σ 1 h 1
Απόκριση συχνότητας Άλλη εντολή για υπολογισμό απόκρισης συχνότητας (system identification toolbox): spa datyu=iddata(y,u,1); datzu=iddata(z,u,1); spayu=spa(datyu); spazu=spa(datzu); plot (spayu) plot (spazu) Σ 1 h 1
Απόκριση συχνότητας ETFE Εμπειρική εκτίμηση συνάρτησης μεταφοράς (system identification toolbox): etfe datyu=iddata(y,u,1); hetfe_yu=etfe(datyu); hetfe_yu5=etfe(datyu,5); 5); h 1 Σ 1
Απόκριση συχνότητας ETFE Εμπειρική εκτίμηση συνάρτησης μεταφοράς (system identification toolbox): etfe datyu=iddata(y,u,1); hetfe_yu10=etfe(datyu,10); hetfe_yu50=etfe(datyu,50); 50); h 1 Σ 1
Τι γίνεται σε αυτή την περίπτωση? Ανάλυση κρουστικής απόκρισης Έστω ότι η είσοδος είναι ένας κρουστικός παλμός πλάτους α Για α=3: Χωρίς θόρυβο (ή με ελάχιστο θόρυβο) -> καλή εκτίμηση Σε αντίθετη περίπτωση -> κακή εκτίμηση, π.χ. για e (0, σ ) Σ 1 h 1
Alpha=3; z_step=filter(b,a,u_step); h_step=diff(z_step)/alpha; Ανάλυση βηματικής απόκρισης α=3 ˆ yt () yt ( 1) h h 1() t = 1 α Σ 1
Θόρυβος: επηρεάζει πολύ τα αποτελέσματα Ανάλυση βηματικής απόκρισης ˆ yt () yt ( 1) h h 1() t = 1 α Σ 1
Χωρίς ρςθόρυβο Με θόρυβο: e (0,1) Ν=104; M=45; U_mat=zeros(,M); for i=1:, for j=1:m, if (i-j)>=0 U_mat(i,j)=u(i-j1); end; end; end; hls_nons=pinv(u_mat) mat)*z; hls_noise=pinv(u_mat)*y; Ελάχιστα τετράγωνα Σ 1 h 1 y = Ugˆ y(1) u(1) 0... 0 gˆ (0) y() u() u(1)... 0 gˆ (1) =.................. y ( ) u ( ) u ( 1)... u ( M 1) gˆ ( Μ 1) T g=uu ˆ ( ) 1 T Uy