סוכנים ונמלים A(ge)nts אלגוריתמים מבוזרים לחקירת הרשת מאמרים : A Distributed Ant Algorithm for Efficiently Patrolling a Network A Distributed Ant Algorithm.

Slides:



Advertisements
Similar presentations
מבוא למדעי המחשב לתעשייה וניהול
Advertisements

תרגילי חזרה. General Things to Remember Be careful to identify if we’re talking about gains or costs (because the search cost is always negative) Check.
חיפוש בינה מלאכותית אבי רוזנפלד. סוכנים פותרי בעיות Reflex agents לא יכולים לתכנן קדימה כדי לחפש, יש צורך לייצר מודל לחפש בו !
גרף מכוון Directed Graph a b c f g ed h צמתים חוג עצמי קשתות.
Recitation #9. Q1 גרף מכוון מורכב מקבוצה של צמתים (nodes) ומקשתות מכוונות (arcs) המחברות ביניהם. כל קשת מכוונת יוצאת מצומת אחד ונכנסת לצומת אחר. ( בגרפים.
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות : המשתמש יבחר קובץ שעליו הוא רוצה לבצע את האנליזה, וילחץ עליו עם כפתור ימני בעכבר. יפתח תפריט ובו.
גרפים ממשקלים גרף ממשקל הוא גרף עם משקל לכל קשת עץ פורש הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הן קשתות הגרף.
מסדי נתונים תשס " ג 1 תכנון סכמות (Design Theory) מסדי נתונים.
משטר דינמי המשך – © Dima Elenbogen :55 חידה שכדאי לעבור עליה: 2011/ho/WCFiles/%D7%97%D7%99%D7%93%D7%94%20%D7%A2%D7%9D%20%D7%91%D7%95%D7%A0%D7%95%D7%A1.doc.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
R. Bar-Yehuda © 1 Graph theory – תורת הגרפים 2.4 Directed Trees – עצים מכוונים מבוסס על הספר : S. Even, "Graph Algorithms",
Power Consumption Awareness by using a Pedometer המעבדה לרשתות מחשבים המעבדה לרשתות מחשבים סמסטר אביב תשס " ח סמסטר אביב תשס " ח מנחים: איתי דברן – המעבדה.
יפעת קוליקנט, מכון ויצמן למדע1 פרק 7, אלגוריתם Ra לפתרון בעית הקטע הקריטי במערכות מבוזרות.
R. Bar-Yehuda © 1 קומבינטוריקה למדעי - המחשב – הרצאה #14 Graph theory – תורת הגרפים Chapter 1: PATHS IN GRAPHS – 1. מסלולים.
By Irina Polansky Deriving Mechanism Singularity Positions through the Graph Theory Duality Principle The Iby and Aladar Fleischman Faculty of Engineering.
מה החומר למבחן ? כל החומר שנלמד בהרצאות ובתרגולים. לגבי backtracking: לא תידרשו לממש אלגוריתם, אך כן להבין או להשלים מימוש נתון. אחת משאלות המבחן מבוססת.
עבודה סמינריונית Prelude to Ukkonen algorithm ON-LINE CONSTRUCTION OF SUFFIX TREES מגישים : עיד מוחמד טיבי פיראס.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
היום נדבר אל נושא אחד בתורת הגרפים. ובהמשך נשתמש בכלים אלו לפתרון כמה בעיות גאומטריות ובפרט להוכחת Szemeredi Trotter theorem.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
משפט ההרכבה Composition Theorem תהי C מחלקה של פונקציות בוליניות תהי נגדיר סדרת פונקציות שניתנות לחישוב בזמן פולינומיאלי.
בהסתברות לפחות למצא בעיה במודל PAC עבור בהסתברות ε הפונקציה f טועה מודל ONLINE 1. אחרי כל טעות הפונקציה משתפרת 2. מספר הטעיות קטן.
A. Frank File Organization Pile File Measures. 2 A. Frank Steps in analysis of file organization בהערכת מבנה קובץ, נתייחס ל - 6 שלבים / צעדים : 1. תאור.
מסדי נתונים תשס " ג 1 תכנון סכמות – אלגוריתם פירוק לתבניות בצורת BCNF מסדי נתונים.
צביעת גרפים: הגדרה: G=(V,E) גרף בלתי מכוון. צביעת G ב-K צבעים 1
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
Synchronizers - מסנכרנים הדמיית רשת סינכרונית ברשת אסינכרונית.
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
תזכורת: גרפים גרף (G=(V,E V|=n, |E|=m| מכוון \ לא מכוון דרגה של קדקד
אלגוריתמים מבוזרים אלגוריתם המבוצע על ידי קבוצת מעבדים אוטונומיים המחוברים ביניהם (ברשת). המעבדים מתקשרים ע"י העברת הודעות (ז.מ.) ברשתות מחשבים:  שכבה.
מודל ONLINE לומדמורה 1. כל ניתן לחישוב בזמן פולינומיאלי 2. אחרי מספר פולינומיאלי של טעיות ( ) הלומד לא טועה ז"א שווה ל- Littlestone 1988.
מבוא כללי למדעי המחשב תרגול 3. לולאות while לולאות while while (condition) { loop body } במקרה של קיום התנאי מתבצע גוף הלולאה ברגע שהתנאי לא מתקיים נצא.
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
שאלה 1 נתון כביש ישר עם תחנות דלק בנקודות , בנקודת המוצא נתונה מכונית עם תא דלק שמספיק ל-100 ק"מ. מחיר מילוי תא הדלק בתחנה.
The Cyclic Multi-peg Tower of Hanoi מעגלי חד-כווני סבוכיות הפתרון בגרסאות עם יותר מ-3 עמודים.
Ray 7 דוגמא אלגוריתם 1.קבל דוגמאות 2. פלט f a עבור הדוגמה a המינימלית החיובית ?
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
גרפים - Graphs גרף G(V,E) מורכב מקבוצת צמתים V וקבוצת קשתות E.
R. Bar-Yehuda © 1 קומבינטוריקה למדעי - המחשב – הרצאה #16 EULER GRAPHS גרפים אויילרים מבוסס על הספר : S. Even, "Graph Algorithms",
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
משטר דינמי – © Dima Elenbogen :14. הגדרת cd ו -pd cd - הזמן שעובר בין הרגע שראשון אותות הכניסה יוצא מתחום לוגי עד אשר אות המוצא יוצא מתחום.
תזכורת : אלגברה ליניארית מסקנה קלט : וקטורים פלט : האם u תלוי ליניארית ב קלט : מערכת של n משואות לינאריות ב -m נעלמים. פלט : פתרון, או שאין כזה. אלגוריתם.
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א מודל הלמידה מדוגמאות Learning.
עקרון ההכלה וההדחה.
תחשיב היחסים (הפרדיקטים)
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
עצים בינאריים - תזכורת דרגת צומת שורש עלה צומת פנימי מרחק בין 2 צמתים
מה היום ? - - חזרה מהירה. - קריאה וכתיבה לקבצים. - בניית תוכנית כתיבה low-level - בניית ערוץ גלובלי והדגמה מול חומרה - low-level DAQ, פולימורפיזם וטריגר.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Points on a perimeter (Convex Hull) קורס – מבוא לעבוד מקבילי מבצעים – אריאל פנדלר יאיר ברעם.
Lecture 13 Maximal Accurate Forests From Distance Matrix.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
- אמיר רובינשטיין מיונים - Sorting משפט : חסם תחתון על מיון ( המבוסס על השוואות בלבד ) של n מפתחות הינו Ω(nlogn) במקרה הגרוע ובממוצע. ניתן לפעמים.
אתרי מתמטיקה באינטרנט לפניכם מספר אתרים מעניינים ללימוד מתמטיקה תוך כדי משחק ותרגול. אנו מניחים שמצגת זו מביאה מספר קטן מן האתרים הקיימים ברשת. אין ספק.
. Sequence Alignment Tutorial #3 © Ydo Wexler & Dan Geiger.
או: למה ואיך לשווק ולמתג את הקורס שלכם
מספרים אקראיים ניתן לייצר מספרים אקראיים ע"י הפונקציה int rand(void);
SimpliciTI RF Network for M2M Connection Presenters: Assaf Matalon
FAA FAA (int s, int val) { temp = s; s = s + val; return temp; }
Presentation prepared by Rakefet Menda
מבוא למדעי המחשב סיבוכיות.
מבנה נתונים ואלגוריתמים
משימת חקר מכוון ללמידה משמעותית
Marina Kogan Sadetsky –
תרגול 11 NP complete.
אלגוריתמי קרוב לבעיית Densest k-Subgraph
חזרה חלקית על תרגול 12 גרף G=(V,E)
Presentation transcript:

סוכנים ונמלים A(ge)nts אלגוריתמים מבוזרים לחקירת הרשת מאמרים : A Distributed Ant Algorithm for Efficiently Patrolling a Network A Distributed Ant Algorithm for Efficiently Patrolling a Network Vladimir Yanovski, Israel A. Wagner and Alfred M. Bruckstein ANTS: Agents, Networks, Trees and Subgraphs Israel A. Wagner, Michael Lindenbaum and Alfred M. Bruckstein ומיכאל שליו מציגים : עמוס שור

תוכן המצגת שני אלגוריתמים מבוזרים לחקירת הרשת : EAW – Edge Ant Walk VAW – Vertex Ant Walk

Richard P. Feynman העלה לראשונה את האפשרות לשאוב מהטבע רעיונות לביזוריות בתחום הרובוטיקה העלה לראשונה את האפשרות לשאוב מהטבע רעיונות לביזוריות בתחום הרובוטיקה למה מסלולי הנמלים ישרים כל – כך ? למה מסלולי הנמלים ישרים כל – כך ? התשובה לשאלה ניתנה בשנת 1993 ע " י התשובה לשאלה ניתנה בשנת 1993 ע " י פרופ ' אלפרד ברוקשטיין

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

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

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

פתרון למקרה של רובוט אחד הפתרון – מעגל אוילר הפתרון – מעגל אוילר מעגל אוילר – מעגל בגרף G(V,E) בו עוברים על כל קשת פעם אחת מעגל אוילר – מעגל בגרף G(V,E) בו עוברים על כל קשת פעם אחת

מספר רובוטים מעגל אוילר לא מתאים מעגל אוילר לא מתאים פתרון : מעגל אוילר מורחב פתרון : מעגל אוילר מורחב מעגל אוילר מורחב – מעגל בו עוברים על כל קשת מספר זהה של פעמים מעגל אוילר מורחב – מעגל בו עוברים על כל קשת מספר זהה של פעמים

פתרונות קיימים לסריקה DFS תנאי עצירה תנאי עצירה מתאים לסוכן בודד מתאים לסוכן בודד לא חסין לשינויים ברשת לא חסין לשינויים ברשת תדירות ביקורים בקשתות איננה אחידה תדירות ביקורים בקשתות איננה אחידה Random Walk Random Walk חשוף לשונות גדולה בבחירת הקשתות חשוף לשונות גדולה בבחירת הקשתות

Edge Ant Walk 1 Initialization:t=0; for every edge e=u → v in graph G set σ(e) = 0 Rule Edge-Ant-Walk 1 (1) Find the edge e = u → v with a minimal value of σ(e) among the edges emanating from u; break ties randomly. (2) σ(e) := t; (3) t := t + 1; (4) u := v; (5) Go to (1). end Edge-Ant-Walk 1

Edge Ant Walk 1 (cont.) האלגוריתם תמיד יבחר בקשת חדשה כל עוד קיימת קשת חדשה האלגוריתם תמיד יבחר בקשת חדשה כל עוד קיימת קשת חדשה סדר המעבר על הקשתות נשאר זהה אחרי סיום המעבר הראשון על כל הקשתות סדר המעבר על הקשתות נשאר זהה אחרי סיום המעבר הראשון על כל הקשתות האלגוריתם מאפשר סיור מתמיד האלגוריתם מאפשר סיור מתמיד האלגוריתם מצריך כתיבה - בעיית ביטחון האלגוריתם מצריך כתיבה - בעיית ביטחון

Edge Ant Walk 2 Initialization: for every vertex u set next exit pointer in u to point to the first edge emanating from u Rule Edge-Ant-Walk 2 (1) Let k be the location of the next exit pointer in u and e = u → v be the corresponding edge (2) Move next exit pointer in vertex u to the edge (k+1) mod degree (u) edge (k+1) mod degree (u) (3) u:=v; (4) Go to (1). End Edge-Ant-Walk 2

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E A G C FD E

A G C FD E A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

A G C FD E

EAW – סיור ברשת סוכן בודד - מתכנס למעגל אוילר תוך 2*|E|*D צעדים סוכן בודד - מתכנס למעגל אוילר תוך 2*|E|*D צעדים מספר סוכנים – לאחר 2(1+1/k)|E|D צעדים מספר הביקורים בין שתי קשתות מתאזן עד לפקטור 2. מספר סוכנים – לאחר 2(1+1/k)|E|D צעדים מספר הביקורים בין שתי קשתות מתאזן עד לפקטור 2.

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

Vertex Ant Walk האלגוריתם VAW הוצע תחילה לחיפוש בגרף סטטי, קשיר ולא מכוון ונעזר בסוכן בודד ההולך על הקשתות, תוך שהוא משאיר בצמתים עקבות פרומון PHEROMONE, המשמשים אותו לניווט במהלך סריקת הגרף. האלגוריתם VAW הוצע תחילה לחיפוש בגרף סטטי, קשיר ולא מכוון ונעזר בסוכן בודד ההולך על הקשתות, תוך שהוא משאיר בצמתים עקבות פרומון PHEROMONE, המשמשים אותו לניווט במהלך סריקת הגרף. זמן כיסוי חסום ע " י N*D, כאשר N – מספר הצמתים זמן כיסוי חסום ע " י N*D, כאשר N – מספר הצמתים D – קוטר הגרף D – קוטר הגרף

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

Vertex Ant Walk בחינת הביצועים של אלגוריתם VAW לחיפוש בגרף דינמי הראו תוצאות הבאות : בחינת הביצועים של אלגוריתם VAW לחיפוש בגרף דינמי הראו תוצאות הבאות : במקרה ותת - גרף פורס S נשאר יציב במהלך תהליך הכיסוי, אזי זמן כיסוי חסום ע " י N*D(S), במקרה ותת - גרף פורס S נשאר יציב במהלך תהליך הכיסוי, אזי זמן כיסוי חסום ע " י N*D(S), כאשר N – מספר הצמתים D(S) – קוטר תת - גרף פורס במקרה וכל קשת נעלמת עם הסתברות p, אזי זמן כיסוי ממוצע חסום על ידי N*D*f(p,max(vertex_degree) במקרה וכל קשת נעלמת עם הסתברות p, אזי זמן כיסוי ממוצע חסום על ידי N*D*f(p,max(vertex_degree) כמו כן במקרה והגרף הוא עץ סטטי אזי זמן הכיסוי חסום על ידי 2*N. כמו כן במקרה והגרף הוא עץ סטטי אזי זמן הכיסוי חסום על ידי 2*N.

Vertex Ant Walk Rule Vertex-Ant-Walk (u vertex; (σ(.),  (.)) for u’s neighborhood) (1) v:= u’s neighbor with minimal lexicographic value of (σ(.),  (.)); (in case of tie make a random decision) (2) σ(u) := σ(v) + 1; (3)  (u) := t; (4) t:= t + 1 ; (5) go to v. End Vertex-Ant-Walk

B C D A E GI F H (A,1,1) (D,0,0) (B,0,0)(F,0,0) (C,0,0) (E,0,0) (H,0,0) (G,0,0) (I,0,0)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,0,0) (C,0,0) (E,0,0) (H,0,0) (G,0,0) (I,0,0)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,0,0) (C,1,3) (E,0,0) (H,0,0) (G,0,0) (I,0,0)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,0,0) (C,1,3) (E,1,4) (H,0,0) (G,0,0) (I,0,0)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,0,0) (C,1,3) (E,1,4) (H,1,5) (G,0,0) (I,0,0)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,0,0) (C,1,3) (E,1,4) (H,1,5) (G,0,0) (I,1,6)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,1,7) (C,1,3) (E,1,4) (H,1,5) (G,0,0) (I,1,6)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,1,7) (C,1,3) (E,1,4) (H,1,5) (G,2,8) (I,1,6)

B C D A E GI F H (A,1,1) (D,0,0) (B,1,2)(F,1,7) (C,1,3) (E,1,9) (H,1,5) (G,2,8) (I,1,6)

B C D A E GI F H (A,1,1) (D,2,10) (B,1,2)(F,1,7) (C,1,3) (E,1,9) (H,1,5) (G,2,8) (I,1,6)

מקרה קצה

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