![ישן](https://static.fresh.co.il/images/vBulletin/statusicon/post_old.gif)
24-11-2006, 18:28
|
|
|
חבר מתאריך: 24.11.06
הודעות: 5
|
|
הצילוווווווו
הייי...
אני פה כבר אחרי הרבה שיחות בפורומים והרבה גישושים באינטרנט...
ואני מאוד מאוד מקווה שסופסוף אני אמצא פתרון....
אז ככה, אני ינסה לפרט קצת:
אני צריכה לממש מנוע חיפוש המשתמש באלגוריתם גנטי לפתרון הבעייה:
התכנית מקבלת כקלט "מפת כוכב" שבה מצויינות נקודות המיוצגות בצורת (x,y,r) והן מייצגות מכשולים במפה.
x,y מייצגים את מרכז המכשול,וr את הרדיוס.
בעזרת האלגוריתם, עליי למצוא את הנקודה במפה בעלת הרדיוס המקסימלי, כך שלא אתנגש באף מכשול.
הצלחתי ליצור בצורה אקראית את מרחב הפתרונות מהם ניתן ליצור זיווגים ומוטציות, אך אני לא יודעת איך ניתן לבצע את הזיווג/מוטציה. (נראה לי שצריך איזו שיטה לקודד את הנתונים לביטים, ואז בדרך כלשהי לבצע את הפעולות הנדרשות).
ועוד הסבר על זיווג ומוטציה:
זיווג - מהאוכלוסיה שמצאתי, לוקחים כל פעם זוגות שהם הכי איכותיים (בחרתי את האיכות שלהם לפי אורך הרדיוס) ועושים שילוב של התכונות שלהם (חלק מהראשון וחלק מהשני). ואז נוצר איבר חדש.
מוטציה - לוקחים איבר מסויים מהאוכלוסיה ומשנים בו משהו (למשל אם הוא מקודד בביטים, אז לשנות ביט מסויים מ0 ל1 או ההפך).
את התאוריה אני מבינה, אבל אין לי מושג באיזו דרך ושיטה יש לייצג כל איבר באוכלוסיה כדי לעשות עליו את הפעולות הרצויות...
תודה.... מצטערת על ה"עומס"......
|