מסנן קלמן

מתוך testwiki
קפיצה לניווט קפיצה לחיפוש
מסנן קלמן עוקב אחר הערכת מצב המערכת והשונות או חוסר הוודאות של ההערכה. ההערכה מעודכנת על פי מודל מעבר מצבים. x^kk1 מסמן את מצב המערכת המוערך בזמן k לפני המדידה ה-k, לפני שהמדידה yk נלקחה בחשבון; Pkk1 הוא ערך אי הוודאות.

מסנן קלמן הוא אלגוריתם המבוסס על מסנן בייסיאני, המקבל כקלט סדרה של מדידות מורעשות של ערכים שונים המייצגים מצב של מערכת בזמן מסוים, ומספק הערכה סטטיסטית של מצב המערכת על סמך תוצאת המסנן בעבר.[1] המסנן נקרא על שם רודולף קלמן, אחד ממפתחיו הבולטים.

למסנן יישומים רבים בטכנולוגיה. אחד היישומים העיקריים הוא בהנחיה, ניווט ובקרה של כלי רכב, במיוחד מטוסים, טילים או רכבי חלל. הוא מיושם רבות בעיבוד אותות ואקונומטריקה.

האלגוריתם מכיל מערכת משוואות והוא עובד בשני שלבים מרכזיים: ראשית, האלגוריתם מספק הערכה של מצב המערכת (כלומר, ערכי המדדים שלה) ושל ערכי אי הוודאות שלהם. בשלב השני, נקלטות התוצאות של המדידות הבאות (בדרך כלל כולל שגיאות מדידה מסוימות). תוצאות אלו מקבלות כל אחת משקל משלה והוא מעדכן באמצעותן את מצב המערכת. משקל כל תוצאה תלוי ברמת האמינות אותה מייחס האלגוריתם לאותה מדידה. המשקלים יכולים להשתנות במשך פעולת המסנן בהתאם לתוצאות המתקבלות בכל מדידה. כך למשל, במידה שמתקבל הפרש גבוה בין ההערכה לבין המדידה, המסנן עשוי להפחית את המשקל שהוא נותן להערכות הקודמות שלו ולהגביר את המשקל הניתן לתוצאה, ולהפך.

האלגוריתם משתמש רק במדידות החדשות ובמצב המערכת כפי שהתקבל מההערכה שלו, ללא התייחסות לערכים קודמים. לפיכך, קל ליישם את האלגוריתם במערכות זמן אמת.

על מנת לקבל תוצאות מיטביות, האלגוריתם נדרש לקבל הערכות נכונות בקשר לדיוק המשתנים המתקבלים. במידה ואין הערכה כזו, תוצאות המסנן תהיינה טובות פחות, אך עדיין טובות בהרבה משימוש בשיטות רגילות, כמו ממוצע נע.

במסנן נעשה שימוש גם במצב בו מעוניינים לאחד את אותה מדידה משני חיישנים שונים ובלתי תלויים לטובת ערך מדויק יותר מכל אחת משתי המדידות.

תיאור מתמטי של מסנן קלמן

פעולת מסנן קלמן כוללת שני שלבים:

  1. חיזוי: הפעלת מודל חיזוי כדי לקבל הערכה של מצב המערכת טרום מדידה (א-פריורי).
  2. עדכון: עדכון ההערכה בעקבות התצפיות/מדידות שהתקבלו בפועל.

נסמן:

  • 𝐱^kk – הערכת מצב המערכת במצב ה-k בהינתן המצב ב-k המצבים שלפניו
  • 𝐏kk – הערכת אי-ודאות מצב המערכת. השונות המשותפת במצב ה-k בהינתן המצב ב-k המצבים שלפניו
  • 𝐅k (לעיתים מסומן ב-Φ) מודל החיזוי המתאר כיצד מתפתחת המערכת במעבר משלב k-1 לשלב k (לפי מודל שמניח החוקר)
  • 𝐮kקלט מבוקר שמכניסים למערכת
  • 𝐁k – איבר המתאר כיצד הקלט משפיע על המערכת (לפי מודל שמניח החוקר)
  • 𝐐k – רעש תהליך. השונות המשותפת של הרעש בתהליך הקידום של מצב המערכת
  • 𝐳k – המדידות והתצפיות בשלב k
  • 𝐑k – רעש מדידה. השונות המשותפת של הרעש שנוצר בתהליך המדידה. שגיאות מדידה, התפלגות תצפיות וכו'.
  • 𝐇k – איבר המתאר את הקשר בין המדידה למצב המערכת.
  • בשלב העדכון אנו נשווה בין התוצאות שחוזה המערכת לבין התוצאות שנמדדו בפועל (תצפיות) ועל-פי זה נתקן את ההערכה.

חיזוי

הערכת מצב המערכת (א-פריורי) 𝐱^kk1=𝐅k𝐱^k1k1+𝐁k𝐮k
הערכת אי ודאות השגיאה. שונות משותפת (א-פריורית) 𝐏kk1=𝐅k𝐏k1k1𝐅kT+𝐐k

עדכון

חישוב ההפרש בין התצפיות לתחזית 𝐲~k=𝐳k𝐇k𝐱^kk1
חישוב אי הוודאות (השונות המשותפת) 𝐒k=𝐑k+𝐇k𝐏kk1𝐇kT
חישוב הגבר קלמן מיטבי (optimal Kalman gain) 𝐊k=𝐏kk1𝐇kT𝐒k1
עדכון מצב המערכת (פוסטריורי) 𝐱^kk=𝐱^kk1+𝐊k𝐲~k
עדכון הערכת אי הוודאות (שונות משותפת) (פוסטריורי) 𝐏k|k=(𝐈𝐊k𝐇k)𝐏k|k1(𝐈𝐊k𝐇k)T+𝐊k𝐑k𝐊kT=(𝐈𝐊k𝐇k)𝐏k|k1
ההתאמה בין המדידות להערכה המעודכנת 𝐲~kk=𝐳k𝐇k𝐱^kk

התאמות למסנן קלמן

האלגוריתם המקורי של מסנן קלמן מתאים להנחות יסוד מסוימות, למשל מודל החיזוי צריך להיות ליניארי, הרעש מוגדר גאוסיאני ועוד התניות כפי שמפורט לעיל. לצורך פתרון של מערכות פיזיקליות שאינן עונות על הנחות היסוד פותחו "מסנני קלמן" מתקדמים.

Extended Kalman Filter (EKF) - מסנן קלמן מקורב ליניארית

מסנן זה טוב למקרים בהם מודל החיזוי f(x) אינו מהצורה הליניארית Fx, אך קירוב שלו מסדר ראשון הוא "מספיק טוב". לביצוע קירוב מסדר ראשון גוזרים את מודל החיזוי f ומקבלים מודל חיזוי ליניארי מהצורה הרצויה Fx (כאשר F משתנה בכל צעד זמן לפי הנגזרת של f)[2].

Optimized Kalman Filter (OKF) - מסנן קלמן מיועל

השימוש במסנן קלמן מחייב קביעה של המטריצות 𝐐k ו-𝐑k. מקובל להתייחס למטריצות אלה כמייצגות של השונות המשותפת של רעש התהליך ורעש המדידה, בהתאמה. לפיכך, מקובל לשערכן בכלים סטטיסטיים לשערוך שונות משותפת. עם זאת, כאשר המערכת אינה מקיימת את הנחות המודל של מסנן קלמן, משמעות הרעש כבר אינה מוגדרת היטב. במקרה זה, OKF נמנע מלהגביל את 𝐐k ו-𝐑k כמייצגים של הרעש, ובמקום זאת מתייחס אליהם כאל פרמטרים כלליים של המסנן. בגישה זו, ניתן להשתמש בכלים מקובלים באופטימיזציה כדי לייעל פרמטרים אלה ישירות לטובת המטרה הסופית - שערוך מיטבי של מצב המערכת. היתרון המרכזי בגישה זו הוא השימוש בלמידה מנתונים לצורך "פיצוי" על פערים בהנחות המודל. תכונה זו מאפשרת התמודדות עם הפרות שונות של הנחות המודל (כגון ליניאריות, רעש לבן, ואתחול נורמלי) גם כאשר אינן ידועות למשתמש.[3]

שימושים

ניתן להשתמש באלגוריתם למערכות הגנה אווירית כגון כיפת ברזל כאשר מתגלה איום על ידי מכ"ם, המיקום והמהירות ההתחלתיים של הרקטה או הפגז הנכנסים נמדדים. מדידות אלו רועשות מטבען בשל אופי זיהוי המכ"ם והסביבה. מסנן קלמן משמש להערכת המצב (מיקום, מהירות ואולי תאוצה) של הקליע בהתבסס על מדידות ראשוניות אלו. לאחר מכן ניתן לחזות את המהירות העתידיים של הקליע בשלבי הזמן הבאים.

שימוש נוסף הוא במערכות מיפוי רובוטי.

קישורים חיצוניים

תבנית:ויקישיתוף בשורה

הערות שוליים

תבנית:הערות שוליים

תבנית:בקרת זהויות