Mouse Create, create.mouse.org/project/806968/step/1.
An algorithm can be defined as a sequence of well-defined, precise steps for solving a problem.
An algorithm must terminate (come to an end) to produce an answer or final outcome. For instance, the image above is a popular example of an algorithm used in everyday life, a recipe. All recipes are algorithms since they use a sequence of precise steps that eventually terminate to produce a final outcome (a meal).
For my partner, making coffee in the aeropress is an algorithm triggered by waking up in the morning and must be executed before anything else can be done.
1. Walk in kitchen
2. Flip on electric kettle.
3. Flip on grinder.
4. Put 2 equals in cup.
5. Pour coffee grinds into aeropress.
6. Pour hot water over grinds and let steep.
7. Take half & half out of fridge.
8. Pour several tablespoons half & half into cup.
9. Pour Microwave cup with equal & half and half for 45 seconds.
10. Stir water and coffee grinds.
11. Place filter and lid on aeropress.
12. Flip aeropress over cup and press down to extract coffee.
A fire drill would be an algorithm used in a school. I couldn’t break down the steps right now though.
In the classroom, depending on the teacher the algorithm is enter the classroom, go to your desk , remove items from your back pack, go to cubby (or alternate location) hang up back pack and coat if you have one, return to seat, start morning independent work. Going to the grocery store would be write list, forget list on kitchen table, walk to car, start car, put in reverse, leave driveway, put car in drive right turn, right turn, straight for 7 blocks, right turn, left into store parking lot, park, lock doors, walk to store, grab a wipe, wipe cart, throw out wipe, enter store, realize I don’t have my list, decide I don’t need one, walk around store picking up some items on the list and many not on the list, go to check out, hand cashier my discount card, put items and bags on conveyor, remove packed bags and put in shopping cart, walk to car, up pack bags into trunk, put cart back, get back in car, start car….you get the point…..
Algorithms are used not only by technology but also by humans.Every action we take that involves a series of tasks is an algorithm. Brushing one’s teeth is an example of a human algorithm other than a recipe. Picking your brush, putting toothpaste on your brush, brushing your teeth, rinsing your mouth, and wiping your mouth are some of them.
I like that you pointed out that algorithms are not only used by technology, but also by humans in daily activities. I think what many people understand about algorithms can be misconceptions because we may not realize something as simple as making a recipe or managing time and following directions to travel to work is an algorithm we have learned to execute over time.
I also like the idea that we do not just use algorithms for technology, for me that my daily life entails doing what I like doing which is cooking/baking its easy to see that a step by step process is involved in what I do to get my desired result.
In daily life, we use algorithms to describe solutions to problems and we use them to accomplish tasks. Some problems only have one possible algorithm to solve a problem such as “Subtract a number from 5 to make it 4”. However, most problems we aim to solve in the real world have multiple algorithms that can act as a solution to the problem. An example of this is directions to get from one place to another.
I believe this is beautiful and important to teach children that a problem have can have different solutions.
The space key must be pressed.
I think it is to walk in a circle and return to the original starting point.
To execute the program you need to press the space key. The intended outcome, I believe is for the sprite to do a complete flip and land back in it’s original position
Computer programs execute (run or carry out a command) algorithms. In a program, the steps of an algorithm are implemented in a programming language. Algorithms and their implementations as a program need to not only terminate but produce the intended result.
It is important to note that algorithms should be written in such a way that anyone could reach the solution by following the steps provided. For example, you may write a series of steps to go to the grocery store by car, but you must specify that this algorithm will only work from a specific starting location. Therefore, it is important for the writer of the algorithm to clearly define the problem space and the constraints for which this algorithm will apply.
However, when we write something in an algorithm, especially in a classroom, we have to keep in mind that it needs to be created based on each students’ learning needs.
In the previous step, it was stated that the creator of an algorithm (programmer) has the power to define the problem space and constraints of their algorithm. This can lead to the programmer intentionally or unintentionally embed their values and biases. In Computer Science this systematic and repeatable computer system that creates unfair outcomes, such as privileging one arbitrary group of users over others is referred to as Algorithm Bias.
There are many unfortunate examples of algorithm bias in software today leading to inequity. This is true for individuals creating their own algorithms and for some of the largest tech companies in the world. Recognizing and making efforts to avoid algorithm bias early on is the only way to make attempts for a more equitable world with technology.
In math classes, algorithms help students learn to multiply and divide, to find the greatest common divisor (GCD), and to solve a system of linear equations. When a student is prompted with a math problem, they can discover that they are using an algorithm that solves the problem they are currently working on while someone else points out that they followed the same steps to solve a different math problem.
For students in the sciences, the most common algorithms that they encounter are those based on the scientific method and the procedures that they develop to conduct an experiment. At the abstract level, experiments involve a pattern of making conjectures, deriving predictions from those conjectures, and then testing those conjectures in an experimental process. More specifically, the experimental process can involve a series of steps that are recorded so that the experiment is replicable using the algorithm.
Algorithms can be applied to non-STEM fields, although in many cases the formal algorithm may not be apparent to the student until direct attention is drawn to it.
In classes students take, algorithms are used to learn skills and to execute procedures in a correct and efficient way. Below are some common algorithmic examples that can be used to connect algorithms to processes common to student behavior.
Algorithms are a part of everything we do and everything we teach. Regardless of the students and subject you are teaching, your students are creating and/or following algorithms and many of them might not even realize it. However, computational thinking occurs in a student’s mind when they are made aware of the algorithmic thinking and practice they are conducting.
Algorithms can be described as daily activities in our everyday life. For example, every morning I have to calculate my time wisely in order to be able to make it to work on time. I set my alarm at 6:30 and have 45 minutes to get ready because the bus usually arrives at the nearest bus stop around 7:15. Once in the bus I stop by a diner to buy some coffee and walk to work. A way we use algorithms when we teach is through daily routines. In order for daily routines to run smoothly in a classroom, everything is scheduled at a certain time throughout the day. This way students are not lost , are well prepared, and know what to expect in the classroom.
An algorithm is everywhere and is a set of step-by-step instructions that must be followed in the correct order to produce a useful result.
Intially, computational thinking sounded a bit intimidating for me because I was not sure if I was going to be able to do so effectively paritally, because I was unaware of what it entailed. I had failed to realize that we all computational think as we engage in different activites. This motivates me to encourage my students to not limit themselves to what they might think before trying to acquire a new skill. While they may feel like they do not know how do it, it could be that they have already mastered it.
Helping students understand how algorithms factor into all of the subjects they are learning, as well as their activities will help them expand their thinking and broaden their understanding. When a student makes a decision to retell a story in chronological order, or solve a math problem using specific steps they are showing their understanding of using different algorithms and why the order matters when executing.
Logging in, please wait...
0 archived comments