Picobot Challenge! inspiration? walls Picobot area not covered (yet!)

Slides:



Advertisements
Similar presentations
Mon: CS + programming Tue: Data Wed: Algorithms
Advertisements

Nested If Statements While Loops
EECS 110: Recitation #1: Ionut Trestian Northwestern University
Karel The Robot Nested If Statements While Loops Copyright © 2008 by Helene G. Kershner.
A-Mazers Team Members Isaiah Grigos Chris Hart Erick Rua Eddie Miner.
Research Findings Ideas and Inspiration Project 1.
EECS 110: Lec 2: What is Programming?
TAKS ATTACK STRATGEGIES! It’s test day! What now?.
In.  This presentation will only make sense if you view it in presentation mode (hit F5). If you don’t do that there will be multiple slides that are.
©Marian Small, 2010 Big Ideas K-3 Session 2 Marian Small.
Multiplication by multiples of 10 and 100 Objective to multiply numbers when 0’s are involved.
CS != programming What is computer science (CS)? Take CS 121.
Moving Around in Scratch The Basics… -You do want to have Scratch open as you will be creating a program. -Follow the instructions and if you have questions.
25-Oct-15 Jeroo Code. Overview In this presentation we will discuss: How to write code in Jeroo How to run a Jeroo program.
©Marian Small, 2011 When you can hear and speak, please click on the If you cannot hear or speak, please click on the Microphone On/Off There are only.
EECS 110: Lec 2: What is Programming? Aleksandar Kuzmanovic Northwestern University
Picobot area already covered area not covered (yet!) inspiration? walls Goal: whole-environment coverage with only local sensing … Picobot as envisioned.
Framing A Future (insert own title) By:. Thank you for joining me!  I would like to present what I learned about myself while working with the Framing.
You must study this PowerPoint, play the Rags to Riches game and take and pass the quiz before continuing with class assignments.
The teaching of reading is of the utmost importance. Not only do students need to be able to decode words and develop fluency, but it is even more important.
Alice and Java Unit 7 1. Day 1  Objective: Gain an introduction to Java and Eclipse  Essential skill: DM-1: Use technology to advance critical thinking.
Moving to First Person Scalable Game Design Susan Miller University of Colorado - Boulder.
JavaScript: Conditionals contd.
GLENLEA SURGERY PATIENT SURVEY FEEDBACK NOVEMBER 2014.
Positive and Negative Numbers
In-Game Lighting Ian Ford.
Hints to get along with others
Intro Now you are in my classroom and in a “breakout” room (it’s a separate “study” area) Let’s check out some of the features…. (click on the “next page”
Roomba! Goal: whole-environment coverage Problem motivation
Understanding Communication with a Robot? Activity (60 minutes)
EECS 110: Lec 2: What is Programming?
By Sanjay and Arvind Seshan
Balancing Your Stress.
What is computer science (CS)?
UNIT 3 – LESSON 5 Creating Functions.
I am going to see the Optician
Spock mind-melds three-eyed aliens!
My birthday I’m four years old. How old are you?
Learning to program with Logo
The CS5 Times Eager Penguins Invade Computer Lab
Setting Goals.
I’m good at… and I’d like to be better at…
I am going to see the Orthoptist
Beginner Programming Lesson
Warm Up If a text question asks you what a word means, how do you find the answer? What strategies can you use? If a question says “mostly about”, what.
College Application Process
Hints for Giving Presentations (B) Dos and Don’ts of Technical Talks
Writer’s Eye (I) Serves two purposes:
Beginner Programming Lesson
Legalmaster Closing a Matter.
Calculator Tricks 5 By Brian Carruthers
Philippians 3:
I can talk about how I’m feeling
the title of the presentation to go here
What is a Constitution?.
Nested If Statements While Loops
What is a Constitution?.
15 things in 30 minutes 15 new activities to strengthen number work
TRANSITION TO SECONDARY SCHOOL
A Big Idea in Number is Doubles…
Classroom Lesson #4 Welcome students. Ask them to share with a partner what they remember about the last SSS lesson. (15 seconds) Next ask for volunteers.
Learning Target: Rules of Exponents
Learning Target: Rules of Exponents
I can talk about how I’m feeling
What is a Constitution?.
Roomba! Goal: whole-environment coverage Problem motivation
Jeroo Code 7-Sep-19.
Ionut Trestian Northwestern University
READING Strategies Before Reading
Mistakes in writing a research paper
Presentation transcript:

Picobot Challenge! inspiration? walls Picobot area not covered (yet!) area already covered Picobot Goal: whole-environment coverage with only local sensing… inspiration?

Picobot… inspiration! walls Picobot area not covered (yet!) area already covered Goal: whole-environment coverage with only local sensing… iRobot's Roomba vacuum inspiration!

Surroundings are always in NEWS order. Picobot can only sense things directly to the N, E, W, and S N W E S For example, here its surroundings are NxWx Surroundings are always in NEWS order. N E W S

Surroundings How many distinct surroundings are there? N W E S

Surroundings How many distinct surroundings are there? N W E S 24 == 16 possible … xxxx Nxxx xExx xxWx xxxS NExx NxWx NxxS xEWx xExS xxWS NEWx NExS NxWS xEWS NEWS (won’t happen)

State I am in state 0. My surroundings are xxWS. Picobot's memory is a single number, called its state. State is the internal context of computation. Picobot always starts in state 0. State and surroundings represent everything the robot knows about the world

Rules Aha! I should move N. I should enter state 0. I am in state 0. My surroundings are xxWS. Aha! I should move N. I should enter state 0. Picobot moves according to a set of rules: state surroundings direction new state xxWS N If I'm in state 0 seeing xxWS, Then I move North, and change to state 0.

Wildcards Aha! This matches x*** state surroundings direction I am in state 0. My surroundings are xxWS. Aha! This matches x*** Asterisks * are wild cards. They match walls or empty space: state surroundings direction new state x*** N and EWS may be wall or empty space N must be empty

What will this set of rules do to Picobot? state surroundings direction new state x*** -> N N*** -> X how can we get back down the screen? Picobot checks its rules from the top each time. When it finds a matching rule, that rule runs. Only one rule is allowed per state and surroundings.

What will this set of rules do to Picobot? state surroundings direction new state x*** -> N N*** -> X how can we get back down the screen? Picobot checks its rules from the top each time. When it finds a matching rule, that rule runs. Only one rule is allowed per state and surroundings.

What will this set of rules do to Picobot? state surroundings direction new state x*** -> N N*** -> X 1 1 ***x -> S 1 1 ***S -> X Picobot checks its rules from the top each time. When it finds a matching rule, that rule runs. Only one rule is allowed per state and surroundings.

To do Challenge #1 Challenge #2 Write rules that will always cover these two rooms. (separate sets of rules are encouraged…) Challenge #1 Challenge #2 but your rules should work regardless of Picobot's starting location

Alter these "up & down" rules so that Picobot will traverse the empty room… add E or W somewhere… Hints: watch out for dead ends!

Ideas for the maze? the maze Hint: use the "right-hand-rule" !

Keep your "right hand" on the wall, Picobot! Maze strategies? Right Hand Rule Keep your "right hand" on the wall, Picobot! Why might this be difficult for Picobot?

Keep your "right hand" on the wall, Picobot! Maze strategies? Right Hand Rule facing Keep your "right hand" on the wall, Picobot! State 0 State 1 State 2 State 3 We'll need to use state to represent the direction Picobot is facing.

We use state 0 to represent that “Picobot is facing North” Suppose Picobot wants to traverse a maze with its right hand always on the wall. We use state 0 to represent that “Picobot is facing North” (A) Here is a single rule that tells Picobot: If you're facing N with a wall at right and space ahead then go forward” xE** -> N (A) (B) Let's write a single rule that tells Picobot: “If you're facing North and lose the wall, then get over to the wall now!” -> (B) (C) (for HW) Write 1 or 2 rules to tell Picobot to do the right thing if it hits a dead end. (C) Repeat this IDEA for all four states, representing all four facing directions.

We use state 0 to represent that “Picobot is facing North” Suppose Picobot wants to traverse a maze with its right hand always on the wall. We use state 0 to represent that “Picobot is facing North” (A) Here is a single rule that tells Picobot: If you're facing N with a wall at right and space ahead then go forward” xE** -> N (A) (B) Let's write a single rule that tells Picobot: “If you're facing North and lose the wall, then get over to the wall now!” -> (B) (C) Write 1 or 2 rules to tell Picobot to do the right thing if it hits a dead end. (C) Repeat this IDEA for all four states, representing all four facing directions.

Happy Picobotting! 21