So I want to talk today about an idea. It's a big idea. Actually, I think it'll eventually be seen as probably the single biggest idea that's emerged in the past century. It's the idea of computation. Now, of course, that idea has brought us all of the computer technology we have today and so on. But there's actually a lot more to computation than that. It's really a very deep, very powerful, very fundamental idea, whose effects we've only just begun to see.
ובכן, היום אני רוצה לדבר על רעיון. זה רעיון גדול. למען האמת, אני חושב שבסופו של דבר הוא ייחשב לרעיון הגדול היחיד שהגיח במאה האחרונה. זהו רעיון החישוביות. כמובן הרעיון הזה הביא לנו את כל טכנולוגית המחשב שיש לנו כיום, וכו'. אך למעשה יש בחישוביות הרבה מעבר לכך. זה באמת רעיון עמוק מאד, רב עוצמה, ובסיסי מאד, שאת השפעתו אנו רק מתחילים לראות.
Well, I myself have spent the past 30 years of my life working on three large projects that really try to take the idea of computation seriously. So I started off at a young age as a physicist using computers as tools. Then, I started drilling down, thinking about the computations I might want to do, trying to figure out what primitives they could be built up from and how they could be automated as much as possible. Eventually, I created a whole structure based on symbolic programming and so on that let me build Mathematica. And for the past 23 years, at an increasing rate, we've been pouring more and more ideas and capabilities and so on into Mathematica, and I'm happy to say that that's led to many good things in R & D and education, lots of other areas. Well, I have to admit, actually, that I also had a very selfish reason for building Mathematica: I wanted to use it myself, a bit like Galileo got to use his telescope 400 years ago. But I wanted to look not at the astronomical universe, but at the computational universe.
ובכן, אני עצמי העברתי את 30 השנה האחרונות מחיי בעבודה על שלושה פרויקטים גדולים אשר באמת מנסים לקחת את רעיון החישוביות ברצינות. אז התחלתי בצעירותי כפיסיקאי והשתמשתי במחשבים ככלי. ואז התחלתי לצלול יותר עמוק ולחשוב על חישובים שאולי הייתי רוצה לעשות, תוך כדי חיפוש אחר האלמנטים שיכולים להרכיב אותם וכיצד ניתן למכן אותם ככל האפשר. בסופו של דבר יצרתי מבנה שלם המבוסס על תיכנות סימבולי וכו' וזה איפשר לי לבנות Mathematica. ובמשך 23 השנים האחרונות, בקצב הולך וגובר, הכנסנו יותר ויותר רעיונות ויכולות וכו' לתוך Mathematica, ואני שמח לומר שזה הוביל להרבה דברים טובים במחקר ופיתוח ובחינוך, בהמון תחומים אחרים. ובכן, עליי להודות שלמעשה היתה לי סיבה מאד אנוכית לבנית Mathematica. רציתי להשתמש בה בעצמי, קצת כמו גלילאו השתמש בטלסקופ שלו לפני 400 שנה. רק שאני רציתי להביט לא על היקום האסטרונומי אלא על היקום החישובי.
So we normally think of programs as being complicated things that we build for very specific purposes. But what about the space of all possible programs? Here's a representation of a really simple program. So, if we run this program, this is what we get. Very simple. So let's try changing the rule for this program a little bit. Now we get another result, still very simple. Try changing it again. You get something a little bit more complicated. But if we keep running this for a while, we find out that although the pattern we get is very intricate, it has a very regular structure. So the question is: Can anything else happen? Well, we can do a little experiment. Let's just do a little mathematical experiment, try and find out.
אם כן, אנו בדרך כלל חושבים על תכניות מחשב כעל דברים מורכבים שאנו בונים לצרכים מסויימים מאד. אך מה לגבי מרחב כל התכניות האפשריות? הנה ייצוג של תכנית ממש פשוטה. אז אם נריץ את התכנית הנה מה שנקבל. מאד פשוט. כעת בואו ננסה לשנות טיפה את הכלל עבור תכנית זו. כעת נקבל תוצאה אחרת, עדיין מאד פשוטה. נסו לשנות זאת שוב. תקבלו משהו מעט יותר מורכב, אך אם נמשיך להריץ זאת זמן מה נגלה כי למרות שנתבנית שאנו מקבלים היא מאד מורכבת היא בעלת מבנה מאד רגיל. אז השאלה היא: האם משהו אחר יכול לקרות? ובכן, אנו יכולים לבצע ניסוי קטן. בואו רק נעשה ניסוי מתמטי קטן, ננסה ונראה.
Let's just run all possible programs of the particular type that we're looking at. They're called cellular automata. You can see a lot of diversity in the behavior here. Most of them do very simple things, but if you look along all these different pictures, at rule number 30, you start to see something interesting going on. So let's take a closer look at rule number 30 here. So here it is. We're just following this very simple rule at the bottom here, but we're getting all this amazing stuff. It's not at all what we're used to, and I must say that, when I first saw this, it came as a huge shock to my intuition. And, in fact, to understand it, I eventually had to create a whole new kind of science.
בואו רק נריץ את כל התכניות האפשריות מהסוג המסוים אותו אנו בוחנים. הם נקראים אוטומט תאי. ניתן לראות כאן הרבה שונות בהתנהגות. רובן עושות דברים פשוטים מאד. אך אם תסתכלו בין כל התמונות השונות הללו בכלל מספר 30 תתחילו לראות משהו מעניין שקורה כאן. אז בואו נתבונן מקרוב בכלל מספר 30 כאן. אז הנה זה בא. אנו רק מבצעים את הכלל הפשוט הזה כאן למטה אך אנו מקבלים את כל הדברים המדהימים הללו. זה ממש לא מה שאנו רגילים אליו ואני חייב לומר שכאשר ראיתי זאת לראשונה זה היה הלם לאינטואיציה שלי, ולמעשה, כדי להבין זאת נאלצתי בסופו של דבר ליצור מדע חדש לגמרי.
(Laughter)
.
This science is different, more general, than the mathematics-based science that we've had for the past 300 or so years. You know, it's always seemed like a big mystery: how nature, seemingly so effortlessly, manages to produce so much that seems to us so complex. Well, I think we've found its secret: It's just sampling what's out there in the computational universe and quite often getting things like Rule 30 or like this. And knowing that starts to explain a lot of long-standing mysteries in science. It also brings up new issues, though, like computational irreducibility. I mean, we're used to having science let us predict things, but something like this is fundamentally irreducible. The only way to find its outcome is, effectively, just to watch it evolve. It's connected to, what I call, the principle of computational equivalence, which tells us that even incredibly simple systems can do computations as sophisticated as anything. It doesn't take lots of technology or biological evolution to be able to do arbitrary computation; just something that happens, naturally, all over the place. Things with rules as simple as these can do it. Well, this has deep implications about the limits of science, about predictability and controllability of things like biological processes or economies, about intelligence in the universe, about questions like free will and about creating technology.
מדע זה הוא שונה, כללי יותר מאשר מדע מבוסס מתמטיקה שהיה לנו במשך 300 ומשהו שנים אחרונות. אתם יודעים, זה תמיד נראה כמו מסתורין גדול - כיצד הטבע, כאילו ללא מאמץ מצליח ליצור דברים כה רבים שנראים לנו כה מורכבים. ובכן, אני סבור שמצאנו את סודו. העניין הוא רק לדגום את מה שקיים ביקום החישובי ובתדירות די גבוהה לקבל דברים כמו כלל 30 או כמו זה. והידיעה הזאת מתחילה להסביר הרבה תעלומות עתיקות יומין במדע. אך זה גם מביא בעיות חדשות כגון אי יכולת צימצום חישובית. הכוונה, אנו רגילים לכך שמדע מאפשר לנו לחזות דברים אך משהו כמו זה עקרונית אינו ניתן לצמצום. הדרך היחידה לגלות את תוצאתו היא למעשה רק תוך התבוננות בהתפתחותו. זה מחובר למה שאני קורא העיקרון של שקילות חישובית, אשר אומר שאפילו מערכות פשוטות ביותר יכולות לבצע חישובים מורכבים לאין ערוך. זה לא לוקח הרבה טכנולוגיה או אבולוציה ביולוגית להיות מסוגל לבצע חישובים שרירותיים, זה רק משהו שקורה, באופן טבעי, בכל מקום. דברים עם כללים פשוטים כגון אלה יכולים לעשות זאת. ובכן, לכך יש השלכות מרחיקות לכת על גבולות המדע, על יכולת חיזוי ויכולת בקרה של דברים כמו תהליכים ביולוגיים או כלכלות, על תבונה ביקום, על שאלות כמו רצון חופשי ועל יצירת טכנולוגיה.
You know, in working on this science for many years, I kept wondering, "What will be its first killer app?" Well, ever since I was a kid, I'd been thinking about systematizing knowledge and somehow making it computable. People like Leibniz had wondered about that too 300 years earlier. But I'd always assumed that to make progress, I'd essentially have to replicate a whole brain. Well, then I got to thinking: This scientific paradigm of mine suggests something different -- and, by the way, I've now got huge computation capabilities in Mathematica, and I'm a CEO with some worldly resources to do large, seemingly crazy, projects -- So I decided to just try to see how much of the systematic knowledge that's out there in the world we could make computable.
אתם יודעים, בזמן שעבדתי על המדע הזה במשך הרבה שנים כל הזמן תהיתי "מה תהיה "האפליקציה המוצלחת" הראשונה שלו?" ובכן, מאז שהייתי ילד חשבתי על כיצד להפוך ידע לשיטתי ואיך שהוא להופכו לבר חישוב. אנשים כמו לייבניץ גם תהו על כך 300 שנה קודם לכן. אך תמיד הנחתי כי כדי להתקדם עקרונית הייתי חייב לשכפל מוח שלם. ובכן, אז התחלתי לחשוב: הפרדיגמה המדעית הזאת שלי מציעה משהו שונה. ודרך אגב, יש לי כרגע יכולות חישוביות אדירות ב-Mathematica, ואני מנכ"ל עם די משאבים לבצע פרוייקטים גדולים ולכאורה מטורפים. אז החלטתי פשוט לנסות ולראות כמה מתוך הידע השיטתי שקיים בעולם ניתן לעשות בר חישוב.
So, it's been a big, very complex project, which I was not sure was going to work at all. But I'm happy to say it's actually going really well. And last year we were able to release the first website version of Wolfram Alpha. Its purpose is to be a serious knowledge engine that computes answers to questions. So let's give it a try. Let's start off with something really easy. Hope for the best. Very good. Okay. So far so good. (Laughter) Let's try something a little bit harder. Let's do some mathy thing, and with luck it'll work out the answer and try and tell us some interesting things things about related math. We could ask it something about the real world. Let's say -- I don't know -- what's the GDP of Spain? And it should be able to tell us that. Now we could compute something related to this, let's say ... the GDP of Spain divided by, I don't know, the -- hmmm ... let's say the revenue of Microsoft.
ובכן, זה היה פרויקט גדול ומאד מורכב אשר לא הייתי בטוח שבכלל יעבוד. אך אני שמח לבשר כי הוא דווקא הולך לא רע. ובשנה שעברה הצלחנו לשחרר גרסה ראשונה של אתר האינטרנט של וולפרם אלפא. מטרתו הוא להוות מנוע ידע רציני אשר מחשב תשובות לשאלות. אז בואו וננסה אותו. בואו נתחיל במשהו ממש קל. בואו נקווה לטוב. טוב מאד. אוקיי. עד עכשיו הכל טוב. (צחוק) בואו ננסה משהו קצת יותר קשה. בוא נגיד... הבה נעשה קצת דברים מתמטיים ועם קצת מזל זה יחשב את התשובה וינסה לומר לנו כמה דברים מעניינים - נושאים מתמטיים קשורים. אנו יכולים לשאול אותו משהו על העולם האמיתי. בואו נאמר -- לא יודע -- מהו התל"ג של ספרד? וזה אמור להיות מסוגל לומר לנו זאת. כעת אנו יכולים לחשב משהו שקשור לזה, בואו נאמר התל"ג של ספרד מחולק ב-לא יודע- ה-המממ... בואו נאמר ההכנסות של מיקרוסופט.
(Laughter)
.
The idea is that we can just type this in, this kind of question in, however we think of it. So let's try asking a question, like a health related question. So let's say we have a lab finding that ... you know, we have an LDL level of 140 for a male aged 50. So let's type that in, and now Wolfram Alpha will go and use available public health data and try and figure out what part of the population that corresponds to and so on. Or let's try asking about, I don't know, the International Space Station.
הרעיון הוא שאנו פשוט יכולים להקליד את זה, מין שאלה כזאת בכל דרך שאנו חושבים עליה. אז הבה ננסה לשאול שאלה, כמו שאלה בנושא בריאות. אז בואו נאמר שיש לנו תוצאת מעבדה שאומרת שאתם יודעים -- יש לנו LDL ברמה של 140 אצל גבר בגיל 50. אז בואו נקליד את זה, וכעת וולפרם אלפא ילך וישתמש בנתוני בריאות הציבור שקיימים וינסה לגלות לאיזה חלק מהאוכלוסיה זה מתאים וכו'. או הבה ננסה לשאול על, לא יודע, תחנת החלל הבינלאומית.
And what's happening here is that Wolfram Alpha is not just looking up something; it's computing, in real time, where the International Space Station is right now at this moment, how fast it's going, and so on. So Wolfram Alpha knows about lots and lots of kinds of things. It's got, by now, pretty good coverage of everything you might find in a standard reference library. But the goal is to go much further and, very broadly, to democratize all of this knowledge, and to try and be an authoritative source in all areas. To be able to compute answers to specific questions that people have, not by searching what other people may have written down before, but by using built in knowledge to compute fresh new answers to specific questions.
ומה שקורה כאן הוא שוולפרם אלפא אינו רק מחפש משהו; הוא מחשב, בזמן אמת, היכן נמצאת תחנת החלל הבינלאומית כעת, ברגע זה, מה מהירותה וכו'. אם כן, וולפרם אלפא יודע המון המון מיני דברים. עד עתה הוא השיג כיסוי די טוב של כל מה שניתן למצוא בספריה סטנדרטית וכו'. אך המטרה היא ללכת הרבה מעבר לכך ובאופן כללי להביא להמונים את כל הידע הזה ולנסות להוות מקור מהימן בכל התחומים, להיות מסוגל לחשב תשובות לשאלות ספציפיות שיש לאנשים, לא על ידי חיפוש מה שאחרים אולי כתבו קודם, אלא על ידי שימוש בידע מובנה על מנת לחשב תשובות חדשות וטריות לשאלות ספציפיות.
Now, of course, Wolfram Alpha is a monumentally huge, long-term project with lots and lots of challenges. For a start, one has to curate a zillion different sources of facts and data, and we built quite a pipeline of Mathematica automation and human domain experts for doing this. But that's just the beginning. Given raw facts or data to actually answer questions, one has to compute: one has to implement all those methods and models and algorithms and so on that science and other areas have built up over the centuries. Well, even starting from Mathematica, this is still a huge amount of work. So far, there are about 8 million lines of Mathematica code in Wolfram Alpha built by experts from many, many different fields.
כמובן שוולפרם אלפא הוא פרויקט ענק וארוך טווח עם המון אתגרים. ראשית, צריך לגשת לאין סוף מקורות שונים של עובדות ונתונים ובנינו חתיכת פייפליין של אוטומציה של Mathematica ומומחים אנושיים לצורך זה. אך זוהי רק ההתחלה. בהינתן עובדות או נתונים גולמיים על מנת באמת לענות על שאלות צריך לחשב, צריך לממש את כל השיטות והמודלים והאלגוריתמים הללו וכו' שהמדע ושאר התחומים בנו לאורך מאות בשנים. ובכן, אפילו אם מתחילים ב-Mathematica זאת עדיין כמות עצומה של עבודה. בינתיים, נכתבו בערך 8 מליון שורות קוד של Mathematica בוולפרם אלפא שנבנו על ידי מומחים מהרבה הרבה תחומים שונים.
Well, a crucial idea of Wolfram Alpha is that you can just ask it questions using ordinary human language, which means that we've got to be able to take all those strange utterances that people type into the input field and understand them. And I must say that I thought that step might just be plain impossible. Two big things happened: First, a bunch of new ideas about linguistics that came from studying the computational universe; and second, the realization that having actual computable knowledge completely changes how one can set about understanding language. And, of course, now with Wolfram Alpha actually out in the wild, we can learn from its actual usage. And, in fact, there's been an interesting coevolution that's been going on between Wolfram Alpha and its human users, and it's really encouraging. Right now, if we look at web queries, more than 80 percent of them get handled successfully the first time. And if you look at things like the iPhone app, the fraction is considerably larger. So, I'm pretty pleased with it all.
ובכן, הרעיון המרכזי של וולפרם אלפא הוא שאפשר פשוט לשאול אותו שאלות תוך שימוש בשפה אנושית רגילה כלומר אנו צריכים להיות מסוגלים לקחת את כל הביטויים המוזרים שאנשים מקלידים בשדה הקלט ולהבין אותם. ואני מוכרח לומר שאני חשבתי שצעד זה הוא פשוט בבחינת בלתי אפשרי. קרו שני דברים גדולים. ראשית, כמה רעיונות חדשים על בלשנות שנבעו מחקר היקום החישובי. ושנית, ההכרה כי רכישת ידע בר חישוב משנה לגמרי את הדרך בה ניתן לטפל בהבנת שפה. וכמובן, כעת כשוולפרם אלפא משוחרר לחופשי אנו יכולים ללמוד מדרך השימוש המעשית בו. ולמעשה, היינו עדים להתפתחות מקבילה שקרתה בין וולפרם אלפא לבין המשתמשים האנושיים שלו. וזה ממש מעודד. ברגע זה, אם נסתכל על שאילתות אינטרנט יותר מ-80 אחוז מהן מטופלות בהצלחה בפעם הראשונה. ואם מסתכלים בדברים כמו אפליקציות אייפון החלק היחסי הוא גדול משמעותית. אז אני די מרוצה עם כל זה.
But, in many ways, we're still at the very beginning with Wolfram Alpha. I mean, everything is scaling up very nicely and we're getting more confident. You can expect to see Wolfram Alpha technology showing up in more and more places, working both with this kind of public data, like on the website, and with private knowledge for people and companies and so on. You know, I've realized that Wolfram Alpha actually gives one a whole new kind of computing that one can call knowledge-based computing, in which one's starting not just from raw computation, but from a vast amount of built-in knowledge. And when one does that, one really changes the economics of delivering computational things, whether it's on the web or elsewhere.
אך בהרבה מובנים אנו עדיין בראשית דרכינו עם וולפרם אלפא. כוונתי, הכל גדל בצורה מאד נחמדה. אנו הולכים וצוברים בטחון. ניתן לצפות שנראה את הטכנולוגיה של וולפרם אלפא מופיעה ביותר ויותר מקומות תוך כדי עבודה עם נתונים ציבוריים כמו אלה שבאתר האינטרנט וגם עם ידע פרטי בשביל אנשים, חברות וכו'. אתם יודעים, הגעתי למסקנה שוולפרם אלפא למעשה נותנת מין יכולת חישובית חדשה לגמרי שאפשר לקרוא לה חישוביות מבוססת ידע שבה מתחילים לא רק מחישוב טהור אלא מכמות עצומה של ידע מובנה. וכשעושים זאת למעשה משנים את הכלכלה של אספקת דברים חישוביים בין אם זה ברשת אן בכל מקום אחר.
You know, we have a fairly interesting situation right now. On the one hand, we have Mathematica, with its sort of precise, formal language and a huge network of carefully designed capabilities able to get a lot done in just a few lines. Let me show you a couple of examples here. So here's a trivial piece of Mathematica programming. Here's something where we're sort of integrating a bunch of different capabilities here. Here we'll just create, in this line, a little user interface that allows us to do something fun there. If you go on, that's a slightly more complicated program that's now doing all sorts of algorithmic things and creating user interface and so on. But it's something that is very precise stuff. It's a precise specification with a precise formal language that causes Mathematica to know what to do here.
אתם יודעים, יש לנו מצב די מעניין כעת. מחד גיסא יש לנו את Mathematica עם שפתה הרשמית והמדוייקת ורשת עצומה של יכולות מתוכננות היטב שמסוגלות לעשות הרבה בכמה שורות קוד. בואו נראה כמה דוגמאות. אז הנה פיסה טריויאלית של תכנית ב-Mathematica. הנה משהו שבו אנו כאילו משלבים כמה יכולות שונות כאן. כאן אנו פשוט ניצור בשורה הזאת ממשק משתמש קטן שמאפשרת לנו לעשות משהו כיפי כאן. אם נמשיך, זוהי תכנית מעט יותר מורכבת שכעת מבצעת כל מיני דברים אלגוריתמיים ויוצרת ממשק משתמש וכו'. אבל זה משהו שהוא מאד מדויק. זהו אפיון מדויק עם שפה מדוייקת ורשמית שגורמת ל-Mathematica לדעת מה לעשות כאן.
Then on the other hand, we have Wolfram Alpha, with all the messiness of the world and human language and so on built into it. So what happens when you put these things together? I think it's actually rather wonderful. With Wolfram Alpha inside Mathematica, you can, for example, make precise programs that call on real world data. Here's a real simple example. You can also just sort of give vague input and then try and have Wolfram Alpha figure out what you're talking about. Let's try this here. But actually I think the most exciting thing about this is that it really gives one the chance to democratize programming. I mean, anyone will be able to say what they want in plain language. Then, the idea is that Wolfram Alpha will be able to figure out what precise pieces of code can do what they're asking for and then show them examples that will let them pick what they need to build up bigger and bigger, precise programs. So, sometimes, Wolfram Alpha will be able to do the whole thing immediately and just give back a whole big program that you can then compute with. Here's a big website where we've been collecting lots of educational and other demonstrations about lots of kinds of things. I'll show you one example here. This is just an example of one of these computable documents. This is probably a fairly small piece of Mathematica code that's able to be run here.
ואז, מאידך גיסא יש לנו את וולפרם אלפא עם כל אי הסדר של העולם ושפה אנושית וכו' מובנים לתוכה. אז מה קורה כאשר מחברים את שני הדברים? אני חושב שזה למעשה די נפלא. עם וולפרם אלפא בתוך Mathematica אפשר למשל ליצור תכניות מדוייקות שמשתמשות בנתונים מהעולם האמיתי. הנה דוגמה ממש פשוטה. אפשר גם פשוט לתת קלט מעורפל ואז לתת לוולפרם אלפא לגלות על מה מדובר. בואו ננסה זאת כאן. אך למעשה אני חושב שהדבר המלהיב ביותר בהקשר הזה הוא שזה באמת נותן סיכוי להביא את התיכנות להמונים. כלומר כל אחד יוכל פשוט לומר מה הם רוצים בשפה רגילה ואז הרעיון הוא שוולפרם אלפא יוכל לגלות אילו פיסות קוד בדיוק תהינה מסוגלות לבצע את מה שהם מבקשים, ואז להראות להם דוגמאות שתאפשרנה להם לבחור את מה שהם צריכים כדי לבנות תכניות מדויקות הולכות וגדלות. אז לעיתים וולפרם אלפא יוכל לעשות את כל זה מיד ופשוט להחזיר תכנית אחת גדולה שאיתה ניתן לחשב. אז הנה אתר אינטרנט גדול שבו אספנו המון הדגמות חינוכיות ואחרות על כל מיני דברים: אז, לא יודע, אולי אראה לכם כאן דוגמה אחת. זוהי רק דוגמה של אחד המסמכים ברי החישוב הללו. זהו כנראה פיסה יחסית קטנה של קוד ב-Mathematica שאפשר להריץ כאן.
Okay. Let's zoom out again. So, given our new kind of science, is there a general way to use it to make technology? So, with physical materials, we're used to going around the world and discovering that particular materials are useful for particular technological purposes. Well, it turns out we can do very much the same kind of thing in the computational universe. There's an inexhaustible supply of programs out there. The challenge is to see how to harness them for human purposes. Something like Rule 30, for example, turns out to be a really good randomness generator. Other simple programs are good models for processes in the natural or social world. And, for example, Wolfram Alpha and Mathematica are actually now full of algorithms that we discovered by searching the computational universe. And, for example, this -- if we go back here -- this has become surprisingly popular among composers finding musical forms by searching the computational universe. In a sense, we can use the computational universe to get mass customized creativity. I'm hoping we can, for example, use that even to get Wolfram Alpha to routinely do invention and discovery on the fly, and to find all sorts of wonderful stuff that no engineer and no process of incremental evolution would ever come up with.
אוקיי. בוא נעשה זום-אאוט שוב. אז בהינתן המדע מהסוג החדש שלנו האם יש דרך כללית להשתמש בה לייצור טכנולוגיה? ובכן, בהקשר לחומרים פיסיים אנחנו רגילים להסתובב בעולם ולגלות שחומרים מסויימים שימושיים למטרות טכנולוגיות מסויימות וכו'. ובכן, מתברר שאנו יכולים לעשות דבר מאד דומה ביקום החישובי. ישנו היצע בלתי נדלה של תכניות בעולם. האתגר הוא לראות כיצד לרתום אותן למטרות של האנושות. משהו כמו כלל 30 לדוגמה מתברר כמחולל ממש טוב של מספרים אקראיים. תכניות פשוטות אחרות הן מודלים טובים לתהליכים בעולם הטבעי או החברתי. ולדוגמה וולפרם אלפא ו-Mathematica הם כיום מלאים באלגוריתמים אותם גילינו על ידי סריקת היקום החישובי. ולדוגמה זה -- אנו חוזרים כאן לאחור -- זה, באופן מפתיע, נהיה פופולרי בקרב מלחינים שמצאו צורות מוסיקליות תוך כדי חיפוש ביקום החישובי. במובן מסוים אנו יכולים להשתמש ביקום החישובי להשגת יצירתיות המותאמת להמונים. אני מקווה שאנו נוכל למשל להשתמש בכך אפילו כדי לגרום לוולפרם אלפא לעשות דרך קבע המצאות וגילויים תוך כדי עבודה ולמצוא כל מיני דברים נפלאים שאף מהנדס ואף תהליך של אבולוציה הדרגתית לעולם לא יוכלו להשיג.
Well, so, that leads to kind of an ultimate question: Could it be that someplace out there in the computational universe we might find our physical universe? Perhaps there's even some quite simple rule, some simple program for our universe. Well, the history of physics would have us believe that the rule for the universe must be pretty complicated. But in the computational universe, we've now seen how rules that are incredibly simple can produce incredibly rich and complex behavior. So could that be what's going on with our whole universe? If the rules for the universe are simple, it's kind of inevitable that they have to be very abstract and very low level; operating, for example, far below the level of space or time, which makes it hard to represent things. But in at least a large class of cases, one can think of the universe as being like some kind of network, which, when it gets big enough, behaves like continuous space in much the same way as having lots of molecules can behave like a continuous fluid. Well, then the universe has to evolve by applying little rules that progressively update this network. And each possible rule, in a sense, corresponds to a candidate universe.
ובכן, זה מוביל למין שאלה אולטימטיבית. האם ייתכן שאי שם במרחבי היקום החישובי נוכל למצוא את היקום הפיסי? ייתכן שישנו אפילו כלל די פשוט, תכנית די פשוטה ליקום שלנו. ובכן, ההיסטוריה של הפיסיקה אולי גרמה לנו להאמין כי הכלל ליקום הוא משהו מאד מורכב. אבל ביקום החישובי ראינו הרגע כיצד כללים פשוטים להפליא יכולים ליצור התנהגות עשירה ומורכבת להפליא. אז האם ייתכן שזה מה שקורה עם כל היקום שלנו? אם הכללים של היקום פשוטים אזי זה בלתי נמנע שהם חייבים להיות מאד אבסטרקטיים ומאד בסיסיים, שפועלים למשל הרבה מתחת לרמת מרחב או זמן - דבר שמקשה על יצוג דברים. אך לפחות בקבוצה גדולה של מקרים ניתן לחשוב על היקום כמשהו כמו מין רשת אשר כשהיא גדלה די הצורך היא מתחילה להתנהג כמו מרחב רציף בצורה מאד דומה למולקולות שכשמספרן רב הן יכולות להתנהג כמו נוזל רציף. ואם כך, אז היקום חייב להתפתח על ידי הפעלת כללים קטנים אשר בהדרגה מעדכנים רשת זו. וכל כלל אפשרי, במובן מסוים, מתאים להיות מועמד ליקום.
Actually, I haven't shown these before, but here are a few of the candidate universes that I've looked at. Some of these are hopeless universes, completely sterile, with other kinds of pathologies like no notion of space, no notion of time, no matter, other problems like that. But the exciting thing that I've found in the last few years is that you actually don't have to go very far in the computational universe before you start finding candidate universes that aren't obviously not our universe. Here's the problem: Any serious candidate for our universe is inevitably full of computational irreducibility. Which means that it is irreducibly difficult to find out how it will really behave, and whether it matches our physical universe. A few years ago, I was pretty excited to discover that there are candidate universes with incredibly simple rules that successfully reproduce special relativity, and even general relativity and gravitation, and at least give hints of quantum mechanics. So, will we find the whole of physics? I don't know for sure, but I think at this point it's sort of almost embarrassing not to at least try.
למען האמת לא הראיתי את אלה לפני כן, אך הנה מספר מועמדים להוות יקום שהסתכלתי עליהם. כמה מהם הם יקומים חסרי תקווה, סטריליים לחלוטין, עם פתולוגיות אחרות כגון חוסר מרחב, חוסר זמן, חוסר חומר, בעיות אחרות דומות. אבל הדבר המלהיב הוא שבשנים האחרונות גיליתי כי אין צורך ללכת רחוק ביקום החישובי כדי למצוא מועמדים להוות יקום אשר אינם בבירור לא היקום שלנו. והרי הבעיה: כל מועמד להוות את היקום שלנו הוא באופן בלתי נמנע גדוש באי יכולת צימצום חישובית שמשמעו שקשה, ללא אפשרות לצמצם קושי זה, לגלות כיצד הוא באמת יתנהג, והאם הוא תואם ליקום הפיסי שלנו. לפני מספר שנים התרגשתי לגלות כי ישנם מועמדים להיות יקום עם כללים פשוטים להפליא אשר משחזרים בהצלחה את תורת היחסות הפרטית ואף את תורת היחסות הכללית וגרביטציה ולפחות נותנים רמזים על מכניקת הקוואנטים. אז האם נמצא את הפיסיקה בשלמותה? איני יודע בוודאות. אך אני סבור שבשלב זה זה כמעט מביך שלא לנסות לפחות.
Not an easy project. One's got to build a lot of technology. One's got to build a structure that's probably at least as deep as existing physics. And I'm not sure what the best way to organize the whole thing is. Build a team, open it up, offer prizes and so on. But I'll tell you, here today, that I'm committed to seeing this project done, to see if, within this decade, we can finally hold in our hands the rule for our universe and know where our universe lies in the space of all possible universes ... and be able to type into Wolfram Alpha, "the theory of the universe," and have it tell us.
לא פרויקט קל. צריך לפתח המון טכנולוגיות. צריך לפתח מבנה אשר כפי הנראה עמוק לפחות כמו הפיסיקה של היום. ואיני בטוח מהי הדרך הטובה ביותר לארגן את כל הדבר הזה. לבנות צוות, להאיץ אותו קדימה, להציע פרסים וכו'. אך אומר לכם כאן היום כי אני מחוייב לראות את הפרויקט הזה מגיע לסיומו, לראות אם בתוך עשור נוכל סוף סוף להחזיק בידינו את הכלל עבור היקום שלנו ולדעת היכן נמצא היקום שלנו במרחב כל היקומים האפשריים -- ולהיות מסוגל להקליד לתוך וולפרם אלפא "תורת היקום" ושהוא יענה.
(Laughter)
(צחוק)
So I've been working on the idea of computation now for more than 30 years, building tools and methods and turning intellectual ideas into millions of lines of code and grist for server farms and so on. With every passing year, I realize how much more powerful the idea of computation really is. It's taken us a long way already, but there's so much more to come. From the foundations of science to the limits of technology to the very definition of the human condition, I think computation is destined to be the defining idea of our future.
אם כן, עבדתי על רעיון החישוביות זה למעלה מ-30 שנה ובניתי כלים ושיטות והפכתי רעיונות אינטלקטואליים למיליוני שורות קוד חצץ לחוות שרתים וכו'. עם כל שנה שעוברת אני מבין עד כמה רב עוצמה הוא הרעיון של חישוביות. הוא כבר לקח אותנו דרך ארוכה אך יש כל כך הרבה שעוד בדרך. החל מאבני יסוד של מדע עבור לגבולות הטכנולוגיה וכלה בהגדרה של המצב האנושי, אני סבור כי חישוביות נועדה להיות הרעיון המגדיר של העתיד.
Thank you.
תודה לכם.
(Applause)
(מחיאות כפיים)
Chris Anderson: That was astonishing. Stay here. I've got a question.
זה היה מדהים. הישאר כאן. יש לי שאלה.
(Applause)
(מחיאות כפיים)
So, that was, fair to say, an astonishing talk. Are you able to say in a sentence or two how this type of thinking could integrate at some point to things like string theory or the kind of things that people think of as the fundamental explanations of the universe?
זה היה, צריך לומר, הרצאה מדהימה. האם תוכל לומר במשפט או שניים כיצד סוג זה של חשיבה יכולה בשלב כלשהו להשתלב בדברים כמו תורת המיתרים או דברים שאנשים מחשיבים כהסברים בסיסיים של היקום?
Stephen Wolfram: Well, the parts of physics that we kind of know to be true, things like the standard model of physics: what I'm trying to do better reproduce the standard model of physics or it's simply wrong. The things that people have tried to do in the last 25 years or so with string theory and so on have been an interesting exploration that has tried to get back to the standard model, but hasn't quite gotten there. My guess is that some great simplifications of what I'm doing may actually have considerable resonance with what's been done in string theory, but that's a complicated math thing that I don't yet know how it's going to work out.
ובכן, חלקים של פיסיקה שאנו כאילו יודעים שהם נכונים, דברים כמו המודל הסטנדרטי של הפיסיקה. מה שאני מנסה לעשות טוב יותר לשחזר את המודל הסטנדרטי של הפיסיקה או שהוא פשוט שגוי. הדברים שאנשים ניסו לעשות ב-25 השנים האחרונות עם תורת המיתרים וכו' היוו חקירה מעניינת שניסתה לחזור למודל הסטנדרטי אך לא ממש הצליח להגיע לכך. הניחוש שלי הוא שכמה הפשטות רציניות של מה שאני עושה עשויים למעשה לעורר תהודה לא מבוטלת עם מה שנעשה בתורת המיתרים, אך זהו דבר מתמטי מורכב שאיני יודע עוד כיצד יסתיים.
CA: Benoit Mandelbrot is in the audience. He also has shown how complexity can arise out of a simple start. Does your work relate to his?
בנואה מנדלברוט נמצא בקהל. גם הוא הראה כיצד מורכבות יכולה להתפתח מהתחלה פשוטה. האם עבודתך קשורה לזה?
SW: I think so. I view Benoit Mandelbrot's work as one of the founding contributions to this kind of area. Benoit has been particularly interested in nested patterns, in fractals and so on, where the structure is something that's kind of tree-like, and where there's sort of a big branch that makes little branches and even smaller branches and so on. That's one of the ways that you get towards true complexity. I think things like the Rule 30 cellular automaton get us to a different level. In fact, in a very precise way, they get us to a different level because they seem to be things that are capable of complexity that's sort of as great as complexity can ever get ...
אני חושב שכן. אני רואה בעבודתו של בנואה מנדלברוט כאחד התרומות היסודיות לתחום שכזה. בנואה התעניין במיוחד בתבניות מקוננות, בפרקטלים וכו' שם המבנה הוא משהו דמוי עץ, וששם יש מין ענף גדול שממנו יוצאים ענפים קטנים ואף ענפים קטנים יותר וכו'. זוהי אחת הדרכים שבה ניתן להתקרב למורכבות אמיתית. אני חושב שדברים כמו אוטומט תאי המבוסס על כלל 30 יביא אותנו לרמה אחרת. למעשה, בדרך מאד מדויקת הם מביאים אותנו לרמה אחרת משום שנדמה כי הם הדברים אשר ביכולתם להיות מורכבים שזה משהו שהכי גדול שמורכבות יכולה להיות...
I could go on about this at great length, but I won't. (Laughter) (Applause)
אני יכול להרחיב על זה עד מאד, אך לא אעשה זאת.
CA: Stephen Wolfram, thank you.
סטפן וולפרם, תודה לך.
(Applause)
(מחיאות כפיים)