איך נראה אלגוריתם?

Wie sieht ein Algorithmus aus?
⏱️ 1 min read

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

הגדרה לא רשמית: אלגוריתמים הם רק מתכונים

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

  1. לאחר היציאה מהדלת, פנה ימינה.
  2. רדו ברחוב עד שתגיעו לרחוב השוק
  3. כשתגיעו ל-Market Street, פנו ימינה.
  4. לכו ישר עד שתראו בניין לבנים.
  5. היכנס דרך דלת הכניסה.

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

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

אלגוריתמים של מיון מהיר

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

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

רשימה = [1, 3, 5]

  1. בדוק כל פריט ברשימה.
  2. ברגע שאחד מהפריטים שווה לשלושה, החזר את מיקומך.
  3. אם שלושה לא ברשימה, החזר “שלושה לא ברשימה!”

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

בקוד Python, אלגוריתם מיון ליניארי ייראה כמו התמונה הבאה.

אלגוריתמי חיפוש ליניאריים

אלגוריתמים של פלט ליניארי

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

אלגוריתמים יומיומיים

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

דירוג-אלגוריתמים

  • Google PageRank עובד על ידי התבוננות במספר ואיכות הקישורים המובילים לדף אינטרנט וממנו, אם כי ישנם מספר רב של קריטריונים סודיים המתעדכנים כל הזמן כדי לשפר את התוצאות ולמנוע מכל אדם לרמות את המערכת.
  • עדכון חדשות של פייסבוק מודד את עוצמת היחסים שלך עם אנשים וקבוצות על סמך הפעילות שלך ומשתמש בגורמים אלה ובכמה גורמים אחרים כדי ליצור את עדכון החדשות שלך.
  • אמזון ונטפליקס השתמש באלגוריתמי המלצות שבוחנים את נתוני המשתמש, מגלים דברים שכל משתמש עשוי לרצות, ומציגים את הדברים האלה למשתמש.
  • מערכת UPS ORION זה עָצוּם (1000+ דפים!) אלגוריתם, אבל הוא יכול לחשב את המסלול היעיל ביותר לכל משלוח תוך התחשבות בכל מיני נתונים בזמן אמת ופרמטרים תפעוליים כמו חלונות מסירה מבוקשים.
  • אפליקציות בינה מלאכותית כגון מכוניות בנהיגה עצמית, זיהוי פנים, עיבוד שפה טבעית, ניתוח חיזוי ועוד רבים אחרים מסתמכים על אלגוריתמים שיכולים לקלוט נתונים חזותיים, אודיו או דיגיטליים, להבין מה קורה ולהחזיר את התוצאות המתאימות.
  • פִּרסוּם אלגוריתמים נמצאים בכל מקום. בעוד שבני אדם יוצרים את המודעות שאתה רואה, זהו אלגוריתם שמחליט אם אתה הקהל הנכון.

הכל הוא אלגוריתם

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

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

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

You may also like...

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x