Quantum Game with Photons: Tensors in TypeScript, Visualized
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 490 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/47353 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSDEM 2020452 / 490
4
7
9
10
14
15
16
25
26
29
31
33
34
35
37
40
41
42
43
45
46
47
50
51
52
53
54
58
60
64
65
66
67
70
71
72
74
75
76
77
78
82
83
84
86
89
90
93
94
95
96
98
100
101
105
106
109
110
116
118
123
124
130
135
137
141
142
144
146
151
154
157
159
164
166
167
169
172
174
178
182
184
185
186
187
189
190
191
192
193
194
195
200
202
203
204
205
206
207
208
211
212
214
218
222
225
228
230
232
233
235
236
240
242
244
249
250
251
253
254
258
261
262
266
267
268
271
273
274
275
278
280
281
282
283
284
285
286
288
289
290
291
293
295
296
297
298
301
302
303
305
306
307
310
311
315
317
318
319
328
333
350
353
354
356
359
360
361
370
372
373
374
375
379
380
381
383
385
386
387
388
391
393
394
395
397
398
399
401
409
410
411
414
420
421
422
423
424
425
427
429
430
434
438
439
444
449
450
454
457
458
459
460
461
464
465
466
468
469
470
471
472
480
484
486
487
489
490
00:00
TensorGame theoryQuantum computerTorsionstensorQuantum mechanicsGame theoryVisualization (computer graphics)Independence (probability theory)Information technology consultingComputer animation
00:40
Machine learningInformationLocal GroupPhysicsAlpha (investment)Game theoryDivision (mathematics)Game theoryComputer animation
01:08
Simultaneous localization and mappingHill differential equationDivision (mathematics)Drag (physics)Drop (liquid)Quantum stateClassical physicsWavePoint (geometry)SimulationHeegaard splittingCombinational logicGame theoryWindowMereologyComputer animation
03:13
Alpha (investment)Division (mathematics)Game theoryTensorSet (mathematics)Computer fontVisualization (computer graphics)Computer-assisted translationMereologyNumeral (linguistics)2 (number)Game theoryQuantum mechanicsComputer animation
03:52
YouTubeVideoconferencingWordComputer animation
04:21
Neumann boundary conditionNumberBlock (periodic table)CalculusAuto mechanicOperator (mathematics)Constructor (object-oriented programming)Quantum mechanicsMathematicsInclined planeComputer animation
05:33
Quantum mechanicsComputer animation
06:05
Quantum mechanicsQuantum cryptographyInformationError messageComputer animation
06:31
PhysicistStatement (computer science)Quantum mechanicsStatement (computer science)Video gameComputer animation
07:56
Form (programming)MathematicsPhysicalismFourier seriesStudent's t-testComputer animation
08:18
Quantum cryptographyPoint (geometry)Quantum mechanicsElement (mathematics)Game theoryBlock (periodic table)ComputerStudent's t-testBlackboard systemComputer animation
09:26
Diffuser (automotive)Software testingGame theoryPhysicistComputer animation
09:45
PhysicalismIntegrated development environmentEmailLevel (video gaming)Software testingComputer animation
10:17
MultiplicationGame theoryCommunications protocolEmailOpen set
11:01
Active contour modelUniverse (mathematics)Profil (magazine)SoftwareComputer animation
11:43
Identity managementQuantum entanglementAveragePoint (geometry)CircleDiagramNichtlineares GleichungssystemPoint (geometry)Positional notationPressureVapor barrierComputer animation
12:48
Maxima and minimaDecision theoryGame theoryComputer animation
13:15
Division (mathematics)Element (mathematics)OpticsDiffuser (automotive)State of matterQuantum stateDrag (physics)Function (mathematics)SimulationMatrix (mathematics)Materialization (paranormal)Bridging (networking)Multiplication signoutputDiffuser (automotive)PhysicalismElement (mathematics)TensorGame theoryComplex (psychology)Direction (geometry)Computer animationSource code
15:14
Division (mathematics)Communications protocolDistribution (mathematics)Interactive televisionQuantum information scienceQuantum entanglementProcess (computing)Game theoryBuildingComputer animation
15:49
Parametrische ErregungData conversionGame theoryVisualization (computer graphics)SoftwareCodeDescriptive statisticsComputer animation
16:29
Extension (kinesiology)Element (mathematics)Computer animation
16:48
Game theoryProjective planeVisualization (computer graphics)
17:11
Java appletScripting languageModul <Datentyp>Type theoryData typeBitDifferent (Kate Ryan album)Error messageLevel (video gaming)Computer programmingCodeNumeral (linguistics)
18:30
Library (computing)Interactive televisionOpen sourceOpticsQuantum information scienceGame theoryState of matterAtomic numberMultiplicationEnergy level
19:09
Component-based software engineeringoutputUser interfaceSoftware testingLogic gateOperator (mathematics)Mixed realityComplex numberDiscrete groupQuantum mechanicsState of matterObject (grammar)Computer animation
20:25
Operator (mathematics)Complex numberVisualization (computer graphics)Focus (optics)Software testingNumberTable (information)Computer animation
21:16
Alpha (investment)Revision controlCollaborationismTwitterFront and back endsGame theoryMultiplication signProjective planeComputer animation
21:54
FacebookPoint cloudOpen source
Transcript: English(auto-generated)
00:06
OK, once you get set up, I'll introduce you. So I would like to introduce our next speaker, who is Piotr, and Piotr is an independent data science consultant with a PhD in quantum physics from Barcelona. And nowadays, he's based in Warsaw,
00:21
and he's actively developing dQuantumGame. That's what it's called. And that's what he's also going to talk about today, about a quantum game with photons, tensors and typescript, visualized. So please welcome Piotr. Thank you.
00:41
OK, so pretty much this is the introduction. And after finishing my PhD in quantum physics, I introduced data science. So I had a lot of chance to interact with data visualization, with programming, with JavaScript. And well, and here it is.
01:00
Before the talk, I would like to show what the game is about. So you see a few rocks, a few carnivorous plants. And when you play it, it's more or less a drag and drop game, when you are able to drag and drop elements, rotate them, and make the photon reach the detector.
01:28
And it's like step by step. But the thing is that it's not only about a puzzle. It's not only about carnivorous plants and rocks with eyes.
01:41
It's also about quantum physics, in the point that while the game is with some funny elements, everything under the hood is a simulation of a single photon, in this case, to the point that if you want, you can look at the stages. So for example, you can play the next three or few times,
02:05
and then see the actual quantum state. I know it's easier from this distance, but basically, here you can see the quantum state.
02:21
And of course, you can get all typical quantum and wave phenomena, such as interference. So in classical physics, without waves, basically, we shine light on some window.
02:41
Some parts of it reflects. Some goes through it, and that's it. But when we are very careful, we can also combine beams. So not only split them, but combine. And at the same time, in this game, we are able to track what's going on.
03:01
And in each case, the goal is basically the same. So we need to fit all those plants. If there's one, it's easier. If there are more, it's more challenging. And in this talk, I would like to say first,
03:20
what was the motivation for the game? So why did I create it in the first place? Second thing, what inspired me and other people from the team? And then about the three parts of the project, the game itself, the tensors, so basically the numerics for this quantum game, but also that can be used in any of the projects,
03:42
in quantum computing, quantum information, quantum physics. And the cats saw various parts of data visualization. And then possibly, what's next? So when it comes to playing, well, we can learn things because we are taught to do so. But a lot of learning happens by having fun and playing.
04:03
And it's not only true for people. It's also true for many animals, when they learn how to react with words by this cheerful play, which is like non-committed thing, which is exploratory, which is without serious risks.
04:22
And the thing is that, for example, when the kids learn how to count, they start with apples with toys. I don't think it's that often that they start with fundamental construction. And I guess only, I need to be very deep in mathematics
04:40
to appreciate that. The same thing is when it comes to classical mechanics. So I don't know if any of you started learning how the work works by the second step, even if a lot of you are inclined mathematically, physically, or in the engineering.
05:03
So why does it happen? Do we think that the only way to learn quantum physics is by starting with linear algebra, complex numbers, et cetera, why? Well, I think there are two reasons. One thing is that, well, it's very hard to do manually.
05:22
It's way too small, way too fast. And the second thing is simply there are no tools. Otherwise, I think it's the worst approach for starting learning quantum physics. And well, unless you study physics, this is so kind of rubbish, basically.
05:44
And even worse, when I speak with people who are not technical, and they say, oh, you do quantum physics. Oh, I'm interested in quantum physics. Could you tell me how to do some quantum healing because I'm really interested how I can cure this and that?
06:01
They say, well, it's tricky. But though it is actually a very nice book, how some people who are interested in this metaphysical aspect of quantum physics basically set the foundations of quantum information by one misled article.
06:21
But the error was so subtle that to solve it, basically people had to invent quantum information and quantum cryptography. And my stance is very much like this one, that to the layman or the classical physicist, a statement of the form,
06:40
this particle does not have a well-defined position, sounds vague, incompetent, or worst of all, profound. It's none of this. And I think when people think that, oh, this is something special about quantum physics, quantum mechanics, you cannot understand that. I think it's bullshit, basically bullshit,
07:00
in the sense that you can say the same thing about any aspect of technology, science, arts, anything, any aspects of life. Yes, to master something you need a lot of time, and then you know so many things you don't know. But I don't think it's specific to quantum physics at all.
07:23
I think it's more in that line. Well, basically, we are not experienced with quantum physics, and it's the only reason why it's hard for us. And right now, it's very likely that there'll be a lot of need to understand quantum physics, to develop algorithms, to interact
07:42
with various pieces of technology. And I think it's important to educate people in quantum physics and also to provide tools so that it's easy to learn or at least experience it. And I did a lot of work when it comes to volunteering
08:01
for teaching high school students in mathematics and physics, ran some bottom-up camps, teaching Fourier transform, teaching various aspects of physics and mathematics. And at some point I decided, okay, why not start teaching quantum physics as well?
08:24
And basically, I ran four workshops, two in Poland, two in Catalonia, and each time, it was actual quantum physics, simple because always two or four dimensions, but enough to show things like no quantum theory, or enough to show EPR pairs or quantum cryptography
08:43
with all true mathematics, not only Hocus Pocus or hardwaving. But then later, I said, okay, there are some nice drawings, by the way, they're not mine. Drawings are of one of my students who basically turn some of my awful drawings
09:04
on a blackboard into very nice pictures, but then I said, okay, maybe let's don't do calculus by hand. Let's create some kind of Lego block puzzles or in a way that we can put elements
09:20
and then later have a computer simulate all physics for us. So, well, I created the first quantum game. The idea was to be able to interact with this world and to have a game which is, at the same time, simulating actual physics, but also can be approached by people who are not physicists by themselves.
09:44
In this game, it's, well, I didn't test it on rats. At the same time, I did test it on various PhD students, high school students, PhD students, and got emails from people from basically all levels of experience in physics.
10:02
Very often, they looked at different aspects of the game, was very happy to provide some kind of environment which was open, like inviting. And then later, quite a few years later, after creating the first quantum game, I got an email from Arthur Eckert,
10:21
some of you may know the Eckert Protocol for quantum distribution, which is, well, by him, who wanted to invite me to create the next version. So I said, well, why not? And I was given budget for also to hire a few other people, so basically to focus
10:42
on various aspects, not only to create anything, but to create something which is working, modular, nice, approachable, and open source, because I believe that this, when it comes to teaching, we should give it to, well, as many people as possible.
11:03
And we arrived to Singapore, here playing in the Museum of Arts and Science, analyzing the exhibition. And when it comes to such interactive things, it's not only about doing something that works, not only about writing piece of software or article
11:22
that is correct. It's also about creating something which is inviting, visually UX-wise. So we looked at what created a Pinterest profile to basically dump all interesting graphics from demonstrations, from games, and other design.
11:43
And also, we look at as many as possible diagrams of quantum optic setups, which to get inspiration for both physics, but also graphics.
12:01
And dive into other pieces of education, basically. So for example, how to present something which is complex in a way which is as simple as possible. Very often still, the barrier of entry is not zero, but sometimes it may be that high just because the notation is horrible,
12:23
and sometimes it may be much lower. So it's one of the biggest pressures to color code an equation, so that we actually can explain step by step what happens,
12:43
and reach people who don't know this equation point. So also, we started with various concept arts, some went into the games or not, because also it's a decision what to show, in which way, because it's not,
13:00
we wanted to show every possible aspect of quantum physics, only a few of them. And also, how to visualize in a way which is simple, which makes sense, which is accessible. And going back to the game, the same one,
13:26
which I said, one thing I showed was the game, but the other one is encyclopedia. So not only wanted to make the games playable, but also in a way which is some kind of entry drag
13:40
into the quantum world. And for example, when you click at the mill splitter, we have, well, the mill splitter as an element in the game, but also we can look at the quantum states and what happens step-by-step. We can look at this like polycordinesis,
14:01
Cartesian for complex numbers, or some color coding. We tried to gather various materials so that people can approach it, and materials ranging from very, very simple for someone who heard for the first time about mill splitters, to materials for people who basically finished PhD in quantum physics,
14:23
gathering the best materials, and also to try to make this bridge between physics and this interactive simulation. For example, the mill splitter, here's a matrix describing its inter-operation,
14:42
but also in a way which is not like basically a block of numbers, but in a way that we can explore it. We can see complex numbers, we can see what's the input state and the output state, and even what's the tensor structure, so it's without explaining that,
15:01
that here we have both directions and also polarization, and it goes basically for any element. So, well, but what's next? Like we, basically, the process of creating this game
15:23
is already playable to some extent, but we want to expand it with more particles and entanglement, with quantum distribution, with many words, possibly lots of electrons, and even a bigger idea to make, to create building blocks,
15:40
to create interactive textbook, basically showing quantum physics, but in a way which is dynamic, which is interactive. Here are some concepts I'll say for more photons. And when it comes to creating data, we try to make it open source,
16:00
not only in the sense that code is open and is, well, basically randomness, but in a way which is as simple as possible to interact with. For example, when it comes to description of elements, we try to basically put everything into markdown, and only those pieces of visualization are JSON,
16:22
which still is actually enough for people who are not software engineers, but are dedicated educators. I try to add a few pieces to show that it's real. It's not only, well, cartoon, carnivorous plants, but also their elements,
16:41
all elements are physical, to the extent that you can find them in a real laboratory. The project right now is basically speaking three pieces. One is like the game itself. The second one is the game engine, which is much more general than the game itself. And the third part, which we just added,
17:03
is separating various pieces of the visualization so that people can use it in the other projects. When it comes to text choices, well, basically, while most of numerics for quantum physics,
17:21
for deep learning, the numerics is, on the high level, on the high level, it's in Python. When it comes to creating things which are interactive, it's basically, we have to use JavaScript. There's no other way. At least I'm not aware of.
17:42
And in this case, I don't know how many of you write JavaScript. One, two, three, oh, it's like a bit. So it's like, so for me, the first bigger project, TypeScript, and for me, there was a day and night difference. All, so many, so many errors
18:01
that can be saved just with types. A view, just to make it simple, so that people with various skills can interact in various levels of, well, program skills. And, well, especially in these mixed teams when there are people who are from physics,
18:20
from design, we need to set very strict notes so that we can collaborate in a way that code quality is good. When it comes to quantum tensors, we decided to create something which is much broader than the game itself, so that basically you can create anything.
18:41
Here's an example of, if you put some physics, like, oh, one interference of two photons, but basically, within this model, you can do anything, from quantum computing, which is the simplest, to any states which have spin, polarization, direction, many atoms with multiple energy levels.
19:03
Anything would you like. We are not restricted to qubits only. When it comes to visualization, it's mostly about writing cats and about writing operators, so states and operators.
19:23
It's only in the game, but thanks to Yuta Rifan, we also work on creating it as a separate object. It's almost working, actually working, but I think it's better to release it slightly later
19:40
with full documentation, everything. In a way, again, to make it simpler to show quantum states, and no matter if it's quantum computing, if it's quantum information, or it's quantum physics. At the same time, to be able to show operators in a way that we can approach complex numbers
20:00
and the test structure, but in a way that is not intimidating. Within the same thing, you can show, I know, Hadamard gates, CNOT gates. You can use these pictures for density, operators for mixed states, and basically anything you like to do with discrete quantum physics.
20:26
And when it comes to such projects, I kind of don't like it that in many projects, visualization is a second thought. So we create something, then go for the first visualization and that's it. In this project, we basically want visualization to be,
20:47
well, one of the main focuses. And here, for example, is not some piece of modern art, but explorations of various ways of presenting an array of complex numbers. And this is a lot of strain and error, a lot of testing of people, what is easy, what isn't.
21:06
But I think that with these kind of setups, we can go beyond showing operators basically as tables of numbers. And well, we still work on that.
21:21
It's only playable, so if you want, if you like beta testing, it's the ideal time. And of course, if you would like to help us, it's also ideal time. Everything is up to date on a GitHub project.
21:42
And thank you.