Gå til hovedindhold

TuT Backtracking

Tech uden Tech øvelser - Denne artikel er en del af en serie.
Del 6: Denne artikel

Læringsmål
#

De studerende kan efter aktiviteten:

  • Forklare hvad backtracking er med egne ord
  • Genkende backtracking-mønsteret forsøg, fejl, fortryd, prøv igen
  • Koble deres fysiske problemløsningsstrategi til algoritmens struktur

Forudsætninger
#

De studerende forventes at kende til:

  • Grundlæggende algoritmebegreb
  • Evt. rekursion på konceptniveau (ikke krav)

Kort beskrivelse
#

Hver studerende får et printet 4x4 skakbræt og fire udklippede dronninger. De skal placere alle fire så ingen truer hinanden — og vigtigst: de skal skrive ned hvad de gør undervejs, inklusive når de løber fast og må fortryde en placering.

Den skrevne proces er backtracking-algoritmen. Studerende opdager dette selv når underviseren bagefter viser pseudokode eller et flowdiagram — og genkender deres egne ord i strukturen.

Faglig kontekst
#

  • Semester/fag: Algoritmer og datastrukturer (valgfag)
  • Holdstørrelse: Skalerer til alle holdstørrelser
  • Organisering: Individuelt

Trin-for-trin
#

  1. De studerende får udleveret et printet 4x4 skakbræt og fire dronninger (udklippede).
  2. Opgaven formuleres: Placer alle fire dronninger så ingen truer hinanden. Skriv ned hvad du gør — hvert trin, også når du fortryder.
  3. De arbejder individuelt. Underviseren går rundt og minder om at skrive ned, ikke bare flytte.
  4. Opsamling: hvad skrev I? Underviseren samler mønstre på tavlen: “forsøgte”, “kunne ikke”, “flyttede tilbage”, “prøvede næste”.
  5. Underviser og studerende skriver mønsteret om til pseudokode.
  6. Underviseren livekoder efter pseudokoden.
  7. Begrebet backtracking introduceres.

Materialer
#

  • Printet 4x4 skakbræt, ét pr. studerende
  • Fire dronninger til udklipning (eller brug mønter/clips)
  • Ark med linjer til at skrive processen ned
  • Blyanter

Tidsforbrug
#

Selve øvelsen tager 15–20 min. Opsamling og kobling til teori: 15 min. I alt ca. 35 min. Dertil kommer livekode.

Modtagelse
#

De studerende har svært ved at reflektere over hvad de gør, når de løser opgaven manuelt. Til gengæld forstod de hvad der skete i pseudokode og kode fordi vi var mønsteret igennem flere gange (manuelt, skrevet på tavlen, pseudokode, kode).

Udvidelser
#

  • Lad de studerende selv skrive pseudokoden bagefter baseret på deres egne noter

Noter til underviseren
#

Det afgørende er at de skriver undervejs og ikke blot rekonstruerer bagefter. Studerende, der bare flytter brikkerne uden at skrive mister halvdelen af pointen.

Opsamlingen er den vigtigste del: det øjeblik de genkender deres egne ord (“hov, nu kan jeg ikke sætte nr. 4, så må jeg flytte nr. 3…”) i backtracking-algoritmens struktur er præcis det kognitive klik aktiviteten er designet til at skabe. Giv det tid.

Der er to gyldige løsninger på 4-queens. Det er en god pointe i sig selv: algoritmen finder en løsning og stopper medmindre man beder den finde alle.

NQueens
Tech uden Tech øvelser - Denne artikel er en del af en serie.
Del 6: Denne artikel