TED日本語 - スティーブン・ウルフラム: 万物の理論を計算する

TED日本語

TED Talks(英語 日本語字幕付き動画)

TED日本語 - スティーブン・ウルフラム: 万物の理論を計算する

TED Talks

万物の理論を計算する
Computing a theory of everything
スティーブン・ウルフラム
Stephen Wolfram

内容

Mathematicaの生みの親であるスティーブン・ウルフラムが自らの取り組む、全ての知識を計算可能にするという課題、すなわち知識を検索し、処理し、操作できるようにしようという彼の挑戦について語ります。彼の新しい検索エンジンWolfram Alphaが目指している目標は、宇宙の背後にある物理を説明するモデルを見出すことに劣らず大きなものです。

Script

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.

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.

(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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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 ...

I could go on about this at great length, but I won't. (Laughter) (Applause)

CA: Stephen Wolfram, thank you.

(Applause)

今日はあるアイデアについてお話しします 大きなアイデアです おそらく この1世紀の間に現れた 最大のアイデアであると 見なされるようになるでしょう 「計算」(computation)というアイデアです このアイデアはもちろん 今日の様々なコンピュータ技術をもたらしたものですが 計算にはそれ以上のものがあります 非常に深く 強力で 根本的なアイデアなのです 私たちはその力を まだ目にし始めたばかりです

私は過去30年を この計算というアイデアに 真剣に向き合おうとする 3つの大きなプロジェクトに費やしてきました 若い時分に私は コンピュータを道具として使う 物理学者としてキャリアを始めました その後それを掘り下げていくようになりました やりたいと思う計算はどんなものか考え 計算を形作りうる基本要素は何か どこまで自動化することができるのかを見極めようとしました そして記号プログラミングに基づいた システムを作るようになり それがMathematicaへと繋がりました この23年間私たちは Mathematicaに多くのアイデアや機能を 加速度的に付け加えていきました Mathematicaが研究開発や教育の分野でたくさんの 素晴らしい成果に貢献していることを とても嬉しく思っています そもそも私がMathematicaを作ったのは とても利己的な理由だったことを打ち明けなければなりません それは自分が使いたいものだったのです ちょうどガリレオが400年前に 望遠鏡を作ったのに似ていますが 私の見たかったのは天文学的な宇宙ではなく 計算的な宇宙だったのです

私たちは普通プログラムを とても明確な目的を持って作られた 複雑なものと見ていますが すべての可能なプログラム全体の空間というものを考えてみましょう これは1つの非常にシンプルなプログラムの表現です このプログラムを実行すると このようなものが得られます とてもシンプルです プログラムのルールを 少しだけ変えてみましょう すると別な結果が得られますが 相変わらずシンプルです もう一度変えてみましょう 幾分複雑になりましたが しばらく実行し続けると パターンは込み入っているにしても とても規則的な構造をしているのがわかります もっと違ったことも起き得るのでしょうか? もう少し実験してみましょう 数学的な実験をして 試し 探すのです

今見ているタイプのプログラムで 考え得るすべてのものを実行してみます これはセルオートマトンと呼ばれるものです 多様な振る舞いが見られます 多くのものはとてもシンプルですが これら異なったパターンを見ていくと ルール30のところで 何か面白いことが起きています ひとつルール30を 詳しく見てみましょう これです 下に示したごくシンプルなルールに従っているだけなのですが このような驚くべき結果になるのです 私たちが見慣れた何にも似ていません 初めてこれを見たとき 直感的にものすごいショックを受け これを理解しようとして 結局は「新しい種類の科学」を まるまる作り出すことになったのです

(笑)

この科学は違っており この300年我々の使ってきた 数学に基づく科学より もっと一般的なのです 一体どうやって自然は 我々の目には複雑きわまりなく見えるものを 苦もなく作り出しているのか? それはずっと大きな謎に思えていました 私たちはその秘密を見つけたのだと思います 計算の宇宙にあるものをサンプリングするだけで ルール30のようなものがよく見つかるのです あるいは こんなものも そのことが分かると 科学において長い間謎とされてきたことが見えてきます しかしそれは同時に 計算的還元不能性という新たな問題も提起します 私たちは科学によって物事が予測できることに馴染んでいますが ここにあるようなものは 根本的に還元不能なのです その結果を知る実質唯一の方法は ただ進化を見守ることしかないのです これは私が計算的等価の原理と 呼ぶものに関連しています つまり非常に単純なシステムが 他のどんな高度なシステムとも同等の計算を行い得るということです 任意の計算ができるようになるために さほどのテクノロジーや 生物進化は必要となりません それは至る所で 自然に起きていることなのです このようなシンプルなルールでできることなのです このことは 科学に 予想や制御のできない領域が あることを示しています 生物学的なプロセスや経済に関すること 宇宙にある知性 自由意志についての疑問 テクノロジーの創造などがそうです

長年この科学に取り組んできた中で 私はいつも思っていました 「これの最初のキラーアプリになるのは何だろうか?」 私は子供の頃から 知識を体系化したり計算可能にすることに 関心を持っていました ライプニッツも300年前に 同じことを考えています しかし私はまた 進歩のためには 脳全体を複製する必要があるとも思っていました しかし今はこう考えるようになりました 「この私の科学パラダイムは それとは違ったことを示している 自分にはMathematicaによる 膨大な計算能力があり 大規模で一見クレージーなプロジェクトでも遂行できる 世界第一級のリソースを持つ会社のCEOでもあるのだから 世界の体系的知識の どれほどが計算可能にできるものか ひとつ試してみることにしよう」

これは大きくてとても複雑なプロジェクトです そもそもうまくいくのかも分かりませんでした しかしありがたいことに これはとてもうまくいっています 去年私たちは最初の Webサイト版のWolfram Alphaを 公開することができました これの目的は 質問に対する答えを計算する 本格的な知識エンジンを作ることです 試してみましょう 最初は簡単なことからやってみましょう [2+2と入力] うまくいくでしょうか… うまくいきました ここまでは順調です

(笑) もう少し難しいことをやってみましょう たとえば… [integrate x^2 sin^3 x dxと入力] 少し数学的なことをやって うまくいけば答えを出して さらに関連した数学的に興味深いことを 何か教えてくれます 現実世界のことについて質問することもできます たとえば…何にしよう… スペインのGDPはいくらか? 答えてくれるはずです ついでに関連したことを聞いてみましょう スペインのGDPを 何かで割ってみましょう えーと… Microsoftの売上とか (笑)

ここで実現したいのは こういった質問を どのようにでも考えた通りに入力できるということです もっと質問を試してみましょう たとえば健康に関する質問です そういうことを調べてくれるラボがあるつもりで 入力してみましょう 「50歳男性 LDLコレステロール 140」 するとWolfram Alphaは 利用可能な公的医療データを使って それがヒストグラムの どこにあたるかを見出します 今度は国際宇宙ステーションのことを 尋ねてみましょう

どこかから情報を 見つけてくるだけではありません 今 この瞬間に国際宇宙ステーションがどこにあり どれだけの速さで移動しているかを リアルタイムで計算しています Wolfram Alphaは様々な種類のことを知っています 今では普通の資料集などで 見つけられる情報のかなりの部分が 網羅されています しかし目標としているのは もっと深く もっと広く あらゆる知識を万人に開放し あらゆる分野について 権威ある情報源となって 人々の抱く疑問に対し 計算によって答えを出すことです 誰かが以前どこかに書いたことを 見つけ出すというのではなく 組み込まれた知識を元に 個々の質問に対して新たに計算して答えを導くのです

もちろんWolfram Alphaは 極めて大きな長期プロジェクトで 多くの難題があります まず膨大で多様な知識やデータを 収集する必要があります そこでMathematicaの自動化と 各分野の専門家の 組み合わせによる 大きなパイプラインを構築しました しかしそれは始まりにすぎません 生の事実やデータに基づいて [Q> XLVIII + LXXII] 実際に質問に答えるために 計算をする必要があり 科学やその他の領域で 何世紀にもわたって築かれてきた 様々な手法やモデルやアルゴリズムを実装する必要があります Mathematicaという出発点があったにしても これは膨大な作業です 今の時点でWolfram Alphaには 多様な領域の専門家により書かれた 800万行に上るMathematicaのコードがあります

Wolfram Alphaで重要な考え方は 普通の言葉を使って 質問ができるということで [Q> JFKが死んだときのロングビーチの潮の干満] それはつまり人々が入力欄に入れる あらゆる奇妙な文章を受け入れ 理解できる必要があるということです そんなこと率直に言って不可能だと 思っていたことを打ち明けます [Q> ヨーロッパのGDPと鉄道の長さの比較] 2つ大きなことがありました 1つは計算の宇宙の研究から 言語に関するたくさんの新しいアイデアが出てきたということです もう1つは 実際に計算可能な知識を持つことによって 言語理解への取り組みが 根本的に変わると気付いたことです Wolfram Alphaが公開された今 実際の使われ方から 学ぶことができます そしてWolfram Alphaと 人間のユーザの間には 興味深い共進化が 見られます これはとても勇気づけられることです 現在 Webでのクエリを見ると その80%以上が最初の試みで成功裏に答えを得ています iPhoneアプリでは この割合はさらに高くなります だから私はこの結果にとても満足しています [Q> www.apple.comのトラフィック]

しかし色々な点で Wolfram Alphaはまだはじめの段階にあります すべてがとてもよくスケールしており 私たちは自信を深めています Wolfram Alphaのテクノロジーが より多くの場所で目にされるようになるでしょう Webサイト上の公的データというのもありますし 個人や会社の プライベートな知識というのもあるでしょう Wolfram Alphaの提供するのが 「知識に基づく計算」とでも言うべき 全く新しい種類の計算であることに気付きました 単に計算だけをするのではなく 組み込まれている膨大な知識から出発するのです Webであれ その他の形態であれ 計算の提供に関わる経済を 本当に変えることになるでしょう

現在は本当に面白い状況にあります 一方にはMathematicaがあり 厳格で形式的な言語と 注意深く設計された機能の 巨大なネットワークによって ほんの数行のコードで実に多くのことを成し遂げられます いくつか例をお見せしましょう とても単純なMathematicaプログラムです ここではたくさんの機能を 組み合わせています この行では ちょっとした ユーザインタフェースを追加していて それで面白いことができます さらにもう少し複雑なプログラムです 色々なアルゴリズム的なことをやって ユーザインタフェースを作り出しています これはとても厳密に定義されたものです 厳密な仕様が厳格な形式言語で記述されていて それによりMathematicaはどうすれば良いのかが分かります

一方でWolfram Alphaの方には 世の中のごちゃごちゃしたものや 自然言語などが 組み込まれています この2つを一緒にするとどうなるのでしょう? 実はとても素晴らしい効果を上げます Wolfram AlphaをMathematicaの中で使うと たとえば現実世界のデータを使う 精密なプログラムを作ることができます これはごく簡単な例です 曖昧な入力を与えて 考えていることをWolfram Alphaに 推測させることもできます 試してみましょう [spikey(とげとげ)と入力] これの一番エキサイティングなところは プログラミングを 万人のものにできる可能性があるということです どうしたいのかを普通の言葉で書けば Wolfram Alphaが それを実行する正確なコードを 見出せるようになるでしょう そして例示した中から必要なものを選ばせることで より大きく正確なプログラムを構築できるでしょう 時にはWolfram Alphaがその全てを 即座に行ってプログラムを返し ユーザがそれを実行できることもあるでしょう これは私たちが 様々な種類の学習等に使える デモを集めた大きなWebサイトです 1つ例をお見せしましょう 計算実行できるドキュメントの1例です これはごく小さな Mathematicaのコード片で その場で実行することができます

元の話に戻りましょう 私たちの新しい種類の科学をもとにして テクノロジーを生み出すのに使える一般的な方法はあるのでしょうか? 物質的なことであれば 私たちは世界中をまわって 特定の技術的目的のために有用な 特定の物質を 見つけます 計算の宇宙でも 同様のことができるのが分かります プログラムの供給は無尽蔵にあります 難しいのは それを 人の目的にどう合わせるかということです たとえばルール30なんかは 非常に良い乱数生成器になることがわかります 他のシンプルなプログラムにも 自然界や社会のプロセスの良いモデルになるものがあります 実際Wolfram AlphaやMathematicaには 計算の宇宙の探索で見つけた アルゴリズムがたくさん入っているのです たとえばこれは 計算の宇宙を探索して 音楽形式を見出すもので 作曲家の間でとても人気があります ある意味で 計算の宇宙を使って クリエイティビティのマスカスタマイゼーションができるのです Wolfram Alphaを使って ルーチン的に発明や発見を即座に行い あらゆる素晴らしいものを エンジニアの手や 進化プロセスを介することなく 見出すことができるようになるのではと思っています

そしてこれは究極の疑問に繋がります 計算の宇宙のどこかに 我々の物質的な宇宙は見出せるのか ということです 我々の宇宙には ごくシンプルなルールや シンプルなプログラムさえあるかもしれません 物理学の歴史から 宇宙のルールは すごく込み入ったものに違いないと私たちは思っています しかし計算の宇宙では ものすごくシンプルなルールが ものすごく豊かで 複雑な振る舞いを生み出しうることを見ました 私たちの宇宙でもそのようなことが起こっている可能性はないでしょうか? 宇宙のルールがシンプルなら それはとても抽象的で 低レベルなはずで 物事の表現を難しくしている 時間や空間といったものよりも ずっと下のレベルで作用していることでしょう 少なくともある種のケースにおいては 宇宙は一種の ネットワークと見ることができて それは十分大きくなると 連続的な空間のように振る舞います ちょうど分子がたくさん集まると 連続的な流体として振る舞うように すると宇宙はわずかなルールを適用して このネットワークを徐々にアップデートしていくことで進化するはずです そして可能なルールのそれぞれが 宇宙の候補に対応しているのです

これは以前に公開したことはないのですが 私が検討してきた 宇宙の候補の一部です この中のあるものは望みがなく 全く不毛で 空間や時間の概念がなかったり 物質が存在しないという 病的なものです しかしエキサイティングなことに 計算の宇宙をそう遠くまで探しにいかずとも 我々の宇宙との違いが さほど明らかでない候補が見つかることが 数年前にわかりました 問題は 私たちの宇宙の候補として考えられるようなものは 必然的に計算的還元不能性に満ちており それが本当にどう振る舞うのか ひいては我々の物理的宇宙と適合するか 知るのが極めて困難だということです 何年か前 非常にシンプルなルールで 特殊相対性と一般相対性や重力まで再現でき 量子力学の 兆候さえ示すような 宇宙の候補を見つけて 非常に興奮しました では物理学の全体は見つかるのでしょうか? はっきりとはわかりません しかし少なくとも試みないとしたら それは恥ずかしいことだと思います

簡単なプロジェクトではありません たくさんのテクノロジーを構築する必要があります 少なくとも既存の物理学と同じくらい 深い体系を構築する必要があるでしょう その努力をどう組織化するのが最善なのかよく分かりません チームを作るのか 広く公開するのか 賞金を提示するのか しかし私は今日ここで そのプロジェクトに 真剣に取り組むことを宣言したい これからの10年で見極めたいと思います 果たして我々の宇宙のルールに 到達することができるのか 我々の宇宙があらゆる可能な宇宙の中の いったいどこにあるのか そしてWolfram Alphaに究極の宇宙の理論は何かと入力して 答えが得られるようになるのか

(笑)

私はこれまで30年以上 計算というアイデアに取り組んできて ツールや手法を構築し 知的なアイデアを 何百万行というコードと サーバファームへと変換してきました 年々私は 計算というアイデアが いかに強力なものかという 思いを強めてきました それは我々をはるばる導いて来ましたが これからさらに多くをもたらすでしょう 科学の基礎や テクノロジーの限界から 人間条件の定義にいたるまで 計算が 我々の未来を決めるアイデアであることは 間違いないだろうと思います

どうもありがとうございました

(拍手)

素晴らしいお話でした どうぞこちらに お聞きしたいことがあります

(拍手)

控えめに言っても驚くべき講演でした このような考え方が 宇宙を説明する基礎として考えられている ひも理論のようなものと どう統合できるものか 一言か二言で説明していただくことは可能でしょうか?

私たちが真理であると知っている 物理学の一部として 標準理論のようなものがあります 私がやろうとしているのは標準理論をよりよく再現するということで それができなければ単に間違っているということでしょう 人々がこの25年かそこらの間 ひも理論などで試みてきたのは 標準理論へと戻ろうとする 興味深い探求ですが まだそこに至ってはいません 私のやっている大きな単純化は 実際ひも理論で行われてきたことと 大きく共鳴する部分があるのではと思っています しかしこれは複雑な数学であり どういうことになるのか まだ分かってはいません

この聴衆の中にブノワ マンデルブロがいます 彼もまた シンプルなものから 如何に複雑なものが生じうるかを示しました 彼の仕事とあなた仕事は関連していると思いますか?

関係していると思います ブノワ マンデルブロの仕事は この様な領域を生み出す 基礎的な貢献をしたと思います 彼が特に関心を持っているのは 入れ子になったパターン フラクタルです それは木のような構造で 大きな枝があり それが小さな枝を作り それが更に小さな枝を作るという具合に続いていきます これは真に複雑なものへと至る 1つの方法です ルール30セルオートマトンのようなものは 別なレベルに至るものだと思っています 実際 それはまさに別なレベルへと至るための方法であり おおよそ複雑さが 到達しうる限りの複雑さを 生み出せるように思えます…

これについては いくらでも議論を続けられますが やめておきましょう

スティーブン ウルフラム ありがとうございました

(拍手)

― もっと見る ―
― 折りたたむ ―

品詞分類

  • 主語
  • 動詞
  • 助動詞
  • 準動詞
  • 関係詞等

関連動画