מסנן קלמן

אלגוריתם

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

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

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

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

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

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

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

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

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

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

נסמן:

  •   – הערכת מצב המערכת במצב ה-k בהינתן המצב ב-k המצבים שלפניו
  •   – הערכת אי-ודאות מצב המערכת. השונות המשותפת במצב ה-k בהינתן המצב ב-k המצבים שלפניו
  •   (לעיתים מסומן ב-Φ) מודל החיזוי המתאר כיצד מתפתחת המערכת במעבר משלב k-1 לשלב k (לפי מודל שמניח החוקר)
  •  קלט מבוקר שמכניסים למערכת
  •   – איבר המתאר כיצד הקלט משפיע על המערכת (לפי מודל שמניח החוקר)
  •   – רעש תהליך. השונות המשותפת של הרעש בתהליך הקידום של מצב המערכת
  •   – המדידות והתצפיות בשלב k
  •   – רעש מדידה. השונות המשותפת של הרעש שנוצר בתהליך המדידה. שגיאות מדידה, התפלגות תצפיות וכו'.
  •   – איבר המתאר את הקשר בין המדידה למצב המערכת.
  • בשלב העדכון אנו נשווה בין התוצאות שחוזה המערכת לבין התוצאות שנמדדו בפועל (תצפיות) ועל-פי זה נתקן את ההערכה.

חיזוי עריכה

הערכת מצב המערכת (א-פריורי)  
הערכת אי ודאות השגיאה. שונות משותפת (א-פריורית)  

עדכון עריכה

חישוב ההפרש בין התצפיות לתחזית  
חישוב אי הוודאות (השונות המשותפת)  
חישוב הגבר קלמן מיטבי (optimal Kalman gain)  
עדכון מצב המערכת (פוסטריורי)  
עדכון הערכת אי הוודאות (שונות משותפת) (פוסטריורי)  
ההתאמה בין המדידות להערכה המעודכנת  

התאמות למסנן קלמן עריכה

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

EKF - מסנן קלמן מקורב ליניארית עריכה

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

שימושים עריכה

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

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

קישורים חיצוניים עריכה

  מדיה וקבצים בנושא מסנן קלמן בוויקישיתוף