ComputationalThinkingInformaticsChutesandLadders
http://img2.wikia.nocookie.net/__cb20130510160248/despicableme/images/e/e9/Despicable-Me-Minions_thumb10.jpg
ProfessorLeen-Kiat SohDepartmentofComputerScienceandEngineeringUniversityofNebraska,Lincoln,NEE-mail:[email protected]
WhatisComputationalThinking?
• A wayofthinkingforlogically andmethodicallysolvingproblems– E.g.,purposeful,describable,replicable
• Includesskills suchas– Decomposition– PatternRecognition– Abstraction– Generalization– AlgorithmDesign– Evaluation
3
WhatisInformatics?• “thecollection,classification,storage,retrieval,anddisseminationofrecordedknowledge”–Merriam-Webster
• “Informatics isthestudyofthestructure,behaviour,andinteractionsofnaturalandengineeredcomputationalsystems.Informatics studiestherepresentation,processing,andcommunicationofinformationinnaturalandengineeredsystems.Ithascomputational,cognitiveandsocialaspects.”–UniversityofEdinburgh
• …• …
4
InformaticsMinor@UNL• TheInformaticsminorisaninterdisciplinaryprogramthatpreparesstudents
withcorecomputationalskillsetsandcompetenciesthatallowthemtosolveproblemswithintheirchosendisciplineorfield.
• Theprogramalsobuildsinterdisciplinaryproblemsolvingskillsthatareapplicableandadvantageousacrossacademiaandwithinindustry.
• Theminor’sobjectivesareanchoredaroundasetofcoreoutcomes,suchthatstudentscompletingtheminorwillbeableto:– Applycomputationalthinkingtosolveproblemseffectivelyandimplementit
usingaprogramminglanguage;– Applystatisticaltechniquestoassessoutcomesofempiricalstudiesor
experiments,andsetupresearchdesignstoevaluatetools,techniquesorhypotheseseffectively;
– Interact,useandmanagedataordatabasesandsolvedata-centricproblems;ororganize,visualize,andcommunicatedigitaldataeffectivelyandefficiently;orusecreativecompetenciestogeneratecreativesolutions;and
– Contributeone’sexpertisetothesolutionofinterdisciplinaryproblemsbyeffectivelycollaboratingandcommunicatingwiththosefromotherdisciplines.
5
Chutes&Ladders• IfyouhaveneverplayedChutesandLadders,it'sasimplegame
involving1-4players,aspinnerwithnumbers1-6andagameboardthatisdividedinto100squares.
• Ontheboardaresquaresthathaveladderstoadvanceyouforwardandchutes,orslides,totakeyoubackwards.
• Aplayerspinsthespinnerandmovesthenumberofspacesindicated.
• Ifthatsquarehasachuteorladder,theplayermustgotothesquareitleadsto.
• Aplayermustgettosquare100exactly,meaningiftheygoover100,theymustspinagain.
6
Chutes&Ladders
http://www.rpi.edu/dept/eng/otherweb/GK12/indexb30c.html
7
Chutes&Ladders:Decomposition
• Components:– Spinner,Players,Chutes,Ladders
• Howareallthesecomponentsrelated?– Square(i.e.,Location)
• Howtomove?– 1.spin,2.ifpastsquare100,stayput,3.moveplayer,4.ifchutemoveaccordingly,and5.ifladdermoveaccordingly.
• Howtodetermineawinner?– Checkeachplayer’scurrentsquareeverytimeafteraplayerhasmoved
8
Chutes&Ladders:AlgorithmDesign
• Aloop:– Loopuntilthereisawinner
• 1.Playeri spins• 2.Moveplayeri• 3.Checkwinner
• Conditionalformovingaplayer:– Ifcurrentsquare+spinnum >100,nochangetocurrentsquare;otherwise,currentsquareß currentsquare+spinnum
– Ifcurrentsquarehasachute,thencurrentsquareß chute’sbottom_square;otherwise,ifcurrentsquarehasaladder,thencurrentsquareß ladder’supper_square
9
Chutes&Ladders:Evaluation
• Conditionalformovingaplayer:– Ifcurrentsquare+spinnum >100,nochangetocurrentsquare;otherwise,currentsquareß currentsquare+spinnum
– Ifcurrentsquarehasachute,thencurrentsquareß chute’sbottom_square;otherwise,ifcurrentsquarehasaladder,thencurrentsquareß ladder’supper_square
– Ifcurrentsquare+spinnum >100,willthesecondconditionalstillgetexecuted?
Isthereanythingwrongwiththeabovealgorithm?
10
Chutes&Ladders:Abstraction• Doweneedtoconsider
thecolorsofthesquares?
• Doweneedtoconsiderthecartoonsontheboard?
• Doweneedtoconsiderthecreasesontheboard?
• Doweneedtoconsiderthedimensionsoftheboard?
• Etc.
11
Chutes&Ladders:Generalization• Well,Snakes&Ladders
game…• Anythingelse?• Howabout…
http://www.fun-free-party-games.com/traditional-games/traditional-board-games-snakes-and-ladders.html
12
Chutes&Ladders:Generalization2• Howabout…
– Mazetraversal?• Thinkaboutconditionals
whenselectingthenextlocationtomoveto…
http://www.uefap.com/speaking/exercise/mazes/mazes.htm
13
Chutes&Ladders:Generalization3• Howabout…
– Mazetraversal?– Monopoly?
• Thinkaboutthechancefactor
• Thinkaboutthemovement• Thinkabouttheget-out-of-
jailcard
http://legionofleia.com/2015/07/monopoly-movie-lionsgate-and-hasbro-team-up-to-pass-go/
14
Chutes&Ladders:Generalization4• Howabout…
– Mazetraversal?– Monopoly?– Pacman?
• Thinkaboutgettingeatenbythemonsters…
• Thinkaboutthemonsterschasingthepacman ….
• Thinkingaboutselectingthenextlocationtomoveto…
http://xmedia.ex.ac.uk/wp/wordpress/loading-new-game-i-hate-pac-man/
15
Chutes&Ladders:Generalization5• Howabout…
– Mazetraversal?– Monopoly?– Pacman?– Chessplaying???
• Thinkaboutconditionalstodecidewhichpiecetomovenext…
http://stanford.edu/~cpiech/cs221/apps/deepBlue.html
16
Chutes&Ladders:PatternRecognition• Whatifnowwewanted
toallowplayerstogeneratenew“configuration”ofthegame?– Howwouldyoumakethe
gamereallyboring?– Howwouldyoumakethe
gamereallychallenging?– Howwouldyoumakethe
gamereallyexciting?– …– Isitpossibletomakethe
gameimpossibleforanyplayertowin?
PATTERNS!
References
• http://www.google.com/edu/computational-thinking• PaulCurzon’s“SoWhatisComputationalThinking”• JeannetteM.Wing’s“ComputationalThinking”,CommunicationsoftheACM,March2006,pp.33-35
• https://en.wikipedia.org/wiki/Computer_science