כשמעצבים מדדי הערכה לערכת הערכה של AlphaEvolve, צריך להגדיר את שלוש רמות הבדיקה הנפרדות הבאות.
רמה 1: בדיקות אימות של פתרונות
הבדיקות האלה מאמתות את הבטיחות הבסיסית של הרצת הקוד ואת התאימות למדיניות לפני ההרצה המלאה.
בטיחות ההרצה: בודקים אם הקוד מורץ. הבדיקות כוללות בדיקת תחביר, בדיקת זמן ההידור, ביצוע ניתוח סטטי ובדיקת תאימות התשתית.
מדיניות ההרצה: קובעת אם הקוד יורץ גם אם הוא פונקציונלי. זה כולל בדיקות לינט, בדיקות כלליות של איכות הקוד, בדיקות של אבטחת מידע, אימות של סיכונים ותאימות ובדיקות של שרשרת אספקת ה-API.
שיקולים:
אם האימות נכשל, מחזירים ציון שלילי גבוה, כמו
-10000או-100000. AlphaEvolve מתעלם מהתוכניות האלה.כדאי לכלול את סוג הכשל ואת היומנים לצורך ניפוי באגים. למרות ש-AlphaEvolve לא משתמש במטא-נתונים האלה כאות חיפוש, הם שימושיים לניתוח בדיעבד של מצבי כשל.
רמה 2: בדיקות לאימות הפתרון
הבדיקות האלה מאמתות את נכונות האלגוריתמים ואת ההתאמה למגבלות באמצעות בדיקות יחידה ובדיקות פונקציונליות.
דיוק פונקציונלי: בודקים אם הקוד מתנהג בצורה נכונה באמצעות בדיקות יחידה ובדיקות פונקציונליות.
עמידה באילוצים: אימות של היתכנות הפתרון או של עמידה באילוצים.
צמצום הסיכון לפריצה של תגמולים: כדי למנוע פריצה של תגמולים, אפשר להחיל ציוני אימות כעונשים שליליים על פונקציית הכושר. הצגת ניקוד של
-10000או-100000היא עונש יעיל.
שיקולים:
הפונקציה מחזירה את מספר הבדיקות שעברו או את אחוז הבדיקות שעברו. הגישה הזו מספקת אות הדרגתי. תוכנית שעוברת 4 מתוך 5 בדיקות נחשבת קרובה יותר לתוכנית נכונה מאשר תוכנית שעוברת 0 מתוך 5 בדיקות.
האימות מתבצע כהשלמת אילוצים רכים. גם אם יש אילוצים קשים במערכת, אם מביעים אותם כעונשים מתונים על סמך הקרבה למרחב האפשרי, AlphaEvolve מקבל אות חיפוש שניתן לפעול לפיו, ולא אות בינארי של הצלחה או כישלון.
רמה 3: בדיקות להערכת הפתרון (בדיקות ביצועים)
במסגרת הבדיקות האלה נמדדים מדדי ביצועים אובייקטיביים בהתאם לסוג יעד האופטימיזציה.
מדידה ישירה: מעקב ישיר אחרי יעדים במקומות שבהם ההטמעה מאפשרת זאת.
הערכות דטרמיניסטיות: חישוב יעדים באופן אנליטי לסגנונות קלאסיים של מחקר תפעולי.
אימות מחוץ למדגם: בדיקה מול מערכי נתונים של אימות לתרחישי שימוש שכוללים אופטימיזציה של צינור למידת מכונה או כוונון של סביבת בדיקה של סוכן.
אומדנים מבוססי-סימולציה: שימוש בסימולציות של Markov Chain Monte Carlo (MCMC), בפונקציות פרוקסי מסוג אופטימיזציה בייסיאנית או בגישות אחרות שמבוססות על מודלים.
שיקולים:
החזרת ציונים מפורטים וציונים מצטברים.
אל תעבירו את חישוב הניקוד למודל שפה גדול (LLM). חשבו אותו באופן דטרמיניסטי בתוך כלי ההערכה. AlphaEvolve מבצע אופטימיזציה של שיטת הבידינג על סמך ציוני הביצועים המצטברים שחושבו מראש.
קרדיט חלקי מספק אות הדרגתי שמאיץ את ההתכנסות של החיפוש. לדוגמה, אם תוכנית עוברת 4 מתוך 5 בדיקות, הציון שלה צריך להיות
0.8ולאNone. החזרתNoneגורמת ל-AlphaEvolve להתעלם מהתוכנית לחלוטין, וכך לא מתקבל משוב מועיל. ציון של0.8מצביע על כך שהמועמד קרוב להיות נכון ויש לו פוטנציאל טוב לאופטימיזציה.