הרי המחשב כשהוא שומר מספר במשתנה נקודה צפה, הוא למעשה
שומר שני מספרים שלמים(עם סימן) כך שערך המשתנה הוא:
Mantisa*2^exp
למצוא את הMantisa והexponent זה מאוד פשוט, אבל כאמור
זה יניב תוצאות עם מכנה מאוד מאוד גדול.אם אני רוצה לקבל עבור 0.2 את הפתרון 1/5 אני חייב שיטה אחרת.
אני אומר ניתן פונקציית מחיר לשבר נתון, כך שניתן מחיר גבוהה
לשבר ששונה בהרבה מהמספר המבוקש, וכן ניתן גם מחיר גבוהה
ככל שהמכנה של המספר גדול יותר. ואז נריץ איזה שהוא חיפוש
היוריסטי, בשאיפה למזער את פונקציית המחיר.
אם אנו מחפשים מספר F והשבר שאנו בודקים הוא M/N פונקציית
המחיר עשויה להיות מהצורה:
(M/N - F)^a + c*(N^b) כאשר a,b,c פרמטרים קבועים כלשהם, (צריך לשחק קצת בשביל לקבל תוצאות טובות)
|
DRYICE