מדעי החיים והרפואה מדעים מדוייקים וטכנולוגיה מדעי החברה מדעי הרוח

להבין את המצב בשטח

חוקרים בנו אלגוריתמים שמטרתם להתאים פעולות של רובוטים לתנאי שטח מורכבים, ולגרום להם לשתף פעולה

איך גורמים לרובוטים לבצע משימות אנושיות? בינה מלאכותית היא ענף במדעי המחשב שחוקר את היכולת לתכנת מחשבים כך שיפעלו כמו המוח האנושי. תכנון אוטומטי (Automated Planning) הוא תחום בבינה מלאכותית שעוסק בבניית אלגוריתמים לייצור תוכניות – סדרות של פעולות – שיבצעו סוכנים אוטונומיים כגון רובוטים לצורך השגת מטרות.

“מטרת התכנון האוטומטי היא לתכנת מערכות שניתן יהיה לשלוט בהן, שיבצעו משימות וישיגו את התוצאות שאנו מייחלים להן. כך למשל פועלת הגשושית (רכב החלל) של סוכנות החלל נאס”א למאדים; היא מבוססת על אלגוריתם תכנון שמייצר עבורה סדרת פעולות – כך שתגיע למקומות הרלוונטיים ותבצע את הניסויים המבוקשים”, מסביר פרופ’ רונן ברפמן מהמחלקה למדעי המחשב באוניברסיטת בן גוריון, אשר ביחד עם צוותו עוסק בתכנון אוטומטי ובונה אלגוריתמים שרובוטים יוכלו להריץ בעתיד.

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

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

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

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

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

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

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