yego.me
💡 Stop wasting time. Read Youtube instead of watch. Download Chrome Extension

Simulations and repetition | Intro to CS - Python | Khan Academy


2m read
·Nov 10, 2024

I'm running a coin flip experiment and I want to find out how likely each outcome is: heads or tails. So I flip a coin once, twice, 100 times. Once I've repeated that experiment enough times, I see that about 50% of my flips are heads and 50% are tails.

Now, that's not a particularly interesting result. You probably could have told me that's what would happen at the beginning. But what if the experiment I want to repeat is much bigger? Instead of physically performing the experiment, we can simulate it with code.

For example, maybe I want to simulate a car crash to predict the risk of injury to the passengers, or I want to simulate a forest fire to predict how far it'll spread, or I want to simulate crop growth so I can predict yields and decide what to plant. These are all things that would be far too costly, too devastating, or take far too long to repeat in the real world.

But if we build a computer simulation, we can repeat the experiment as many times as we want for free, modifying different data inputs along the way. To simulate crop growth, I might combine climate and soil data with different irrigation and fertilizer choices, and then repeat how that affects my crop growth over a series of time steps.

Weather simulations work the same way. They collect wind, air pressure, and other readings from hundreds of different balloons, buoys, and satellites, and apply mathematical models over a series of time steps.

Okay, but why is the weather forecast wrong so much of the time then? It's almost impossible to 100% model the real world in a program. There's just so much data and randomness to take into account. And as humans, we don't always have access to all the data or 100% understand all the relationships involved.

Sometimes there are simply too many relationships that the computer physically can't process that much information in a reasonable amount of time. These are some of the limitations of our current weather models. We don't have data on the conditions at every single point on Earth, and even if we did, the computer wouldn't be able to handle all that data.

We can, in theory, more accurately predict tomorrow's weather, but by the time we get the result, it'll be the day after tomorrow. So for practicality, almost all simulations make some assumptions or simplifications about the world around us and settle for good enough results according to their needs.

Whether there's constraints on the data available, the amount of time they have to build the simulation, or the sheer computing power required, with just conditionals and variables, we can start to write our own basic simulations in Python. We're only missing two things: we need to be able to repeat our experiment and we need to be able to model some of the randomness that occurs in the real world.

More Articles

View All
Where Do GREAT Ideas Come From
Where do great ideas come from? And why do some people have bigger, better ideas than others? When we look at some of the most creative people who have ever lived, something jumps out at us. We can look at David Lynch, who wrote and directed Twin Peaks, M…
The FED Just Ruined Savings Accounts
What’s up, guys? It’s Graham here. So, unfortunately, in the last few weeks, you may have noticed a very significant change to your high interest savings account, and that would be a lack of high interest being paid in your savings account. That’s right.…
Worked examples: Calculating [H₃O⁺] and pH | Acids and bases | AP Chemistry | Khan Academy
[Instructor] Here are some equations that are often used in pH calculations. For example, let’s say a solution is formed at 25 degrees Celsius and the solution has a pOH of 4.75, and our goal is to calculate the concentration of hydronium ions in solution…
The Emotional Journey of Photos | National Geographic
There have been moments when I’ve been out shooting landscapes where I’ve cried because there’s things in front of me that I just can’t believe are even real. So this competition stands out for me because I think it’s just so important to love what you do…
Adventure Photography: 4 Tips to Get an Epic Shot | Get Out: A Guide to Adventure
Hi, my name is Keith Linski. I’m an adventure photographer and filmmaker. Today, I’m going to talk a little bit about essential things I bring in the field for every shoot. There are so many great apps that make photography so much easier out in the fiel…
So, you're a lone wolf?
For a long time, I’ve been identifying myself as a loner. I saw myself as someone who functions better and is also happier when in solitude. I wore this label proudly and even named my channel after my self-proclaimed loner status. I aspired to be as soli…