FORSTÅ

Søk og sortering

Hvorfor er søk og sortering viktig for KI?

60 min 5.–10. trinn Grupper Unplugged
Kjernepoeng

Elevene gjetter et tall mellom 1 og 100 og oppdager at halvering av søkerommet er dramatisk mer effektivt enn å gjette tilfeldig. Deretter sorterer de tallkort fysisk etter tre ulike algoritmer og teller antall sammenligninger. Aktiviteten viser hvorfor algoritmisk effektivitet er en forutsetning for at KI skal fungere i stor skala.

Tidsplan (60 min)
  • 0–10 min Fase 1: Gjett et tall
  • 10–30 min Fase 2: Sorter med algoritmer
  • 30–45 min Fase 3: Sammenlign resultater
  • 45–60 min Fase 4: Refleksjon
Du trenger
  • Sjekk det du har lært: 2 sider · skriv ut 1 ark per elev
  • Tallkort 1–10 per gruppe (print eller skriv på papirkort)
  • Tavle eller flipover til å notere gjetninger
  • Notepad til å telle sammenligninger og bytter

Forberedelse: Lag eller skriv ut tallkort 1–10 per gruppe — bruk papir, post-it eller klipp fra kartong. Gjennomfør aktiviteten selv én gang på forhånd — prøv både binærsøk og lineært søk, og kjør gjennom minst en sorteringsalgoritme. Det gjør deg trygg på tidsplanet. Sett opp tavle eller flipover til å notere gjetninger i fase 1.

Søk og sortering · Gjennomføring Side 2
Les til klassen

«Telefonen din søker gjennom millioner av sanger på under ett sekund. Netflix sorterer 15 000 titler etter hva du trolig vil like — øyeblikkelig. Hva er egentlig det eneste disse systemene har til felles?»

Tips: La elevene gjette i 30 sekunder. Ta imot alle svar uten å vurdere dem. Fortell at i dag skal de finne svaret — ved å bli søke- og sorteringsalgoritmer selv.

1
0–10 min

Gjett et tall — lineært vs. binærsøk

Vis: GJETT TALLET

Du tenker på et tall mellom 1 og 100. Hvor få forsøk klarer klassen?

  • Runde 1: Elevene gjetter ett tall av gangen. Notér alle gjetningene på tavla. La dem gjette helt til de finner riktig tall.
  • Runde 2: Nytt tall. Denne gangen oppfordrer du dem til å halvere søkerommet — «Gjett midtpunktet!»

Etter rundene: Sammenlign antall gjetninger. Runde 1 bruker gjerne 15–20 gjetninger (lineært søk), runde 2 bare 5–7 (binærsøk). Spør: «Hvorfor var halvering så mye raskere?»

2
10–30 min

Sorter tallkort med tre algoritmer

Vis: SORTER BUBBLE

Del ut ett sett tallkort 1–10 (blandet) per gruppe. De skal sortere kortene tre ganger — én gang per algoritme — og telle antall sammenligninger og bytter hver gang.

  • Bubble Sort (5 min): Sammenlign hvert nabo-par fra venstre til høyre. Bytt hvis høyre < venstre. Gjenta til sortert.
  • Selection Sort (5 min): Finn minste kort blant alle, flytt til venstre. Gjenta med resten.
  • Insertion Sort (5 min): Ta kortene ett for ett. Sett hvert kort inn på riktig plass i den allerede sorterte delen.

Gå rundt: Still spørsmål underveis: «Merker dere en forskjell i hvor mange steg de ulike algoritmene bruker?»

Søk og sortering · Gjennomføring Side 3
3
30–45 min

Sammenlign resultater på tvers av grupper

Samle alle gruppenes tall på tavla. Lag en felles tabell som viser hvor mange sammenligninger hver algoritme brukte i hver gruppe.

  • Hvilken algoritme brukte færrest sammenligninger?
  • Var rekkefølgen den samme for alle gruppene?
  • Hvorfor brukte Selection Sort alltid samme antall? (Den sjekker alle par hver gang.)

Tenk stort: «Hva hvis vi hadde 1000 kort — eller 1 million? Hvordan ville antall sammenligninger vokse?» Dette introduserer Big-O-notasjon.

4
45–60 min

Refleksjon — fra kort til virkelighet

Vis: REFLEKSJON
Spørsmål til klassen
  • Hva oppdaget dere da dere sammenlignet hvor mange sammenligninger de ulike algoritmene brukte?
  • Netflix rangerer 15 000 titler, Spotify søker blant 100 millioner sanger. Hva ville skjedd om disse systemene brukte dårlige algoritmer?
  • Kan dere tenke på et KI-system der «hvor fort» svaret kommer ikke bare er viktig, men avgjørende?
Oppsummering til klassen

«Algoritmisk effektivitet handler ikke bare om å være rask. Det handler om at systemene kan skalere. KI i stor skala er avhengig av effektive algoritmer — det er en forutsetning, ikke et ekstra.»

Søk og sortering · Lærerens hjørne Side 4

Bakgrunnsstoff og faglig forankring

Dette hjørnet er kun for deg — bakgrunn, differensiering og begrepene du trenger å være trygg på før du går inn i klasserommet.

Hvorfor denne aktiviteten?

Søke- og sorteringsalgoritmer ligger til grunn for at moderne KI-systemer kan skalere fra små til enormt store datasett. Elevene opplever på kroppen at «raskere» ikke er et teknisk valg, men en nødvendighet — og kobler det til at Spotify søker blant 100 millioner sanger, og at halvering av søkerommet er eksponentielt kraftig.

Differensiering
  • 5.–7. trinn: Bruk færre tallkort (1–6) og kjør bare to av de tre sorteringsalgoritmene.
  • 8.–10. trinn: La elevene også anslå hvor mange sammenligninger algoritmen ville trenge med 100 eller 1000 kort, og knytte det til Big-O.
  • Rask gruppe: Be dem konstruere en fjerde sorteringsalgoritme selv og telle hvor mange sammenligninger den bruker.
Faglig kobling (LK20)
  • Matematikk: Utforske og beskrive strukturer og mønstre i lek og spill. Gjøre beregninger og vurdere rimelighet i resultater.
  • Naturfag: Bruke og vurdere digitale ressurser og modeller. Utforske og beskrive teknologiske systemer.
  • Programmering (tverrfaglig): Utforske og sammenlikne ulike løsningsstrategier. Vurdere effektiviteten av algoritmer.
Begreper i dette opplegget
BegrepEnkel forklaring for klasserommet
AlgoritmeEn presis sekvens av steg som løser et problem. Samme algoritme gir alltid samme resultat for samme inndata.
BinærsøkSøkealgoritme som halverer søkerommet for hvert steg — mye raskere enn lineært søk. O(log n) kompleksitet.
Lineært søkSøk som sjekker hvert element ett for ett fra start til slutt. O(n) kompleksitet.
SorteringsalgoritmeAlgoritme som ordner elementer etter en bestemt regel — for eksempel fra minst til størst.
TidskompleksitetMåte å beskrive hvor mange operasjoner en algoritme trenger basert på størrelsen på inndata. Sier noe om hvor raskt algoritmen kjører.
Big-O-notasjonNotasjon som beskriver algoritmers effektivitet: O(n) = lineær, O(log n) = logaritmisk, O(n²) = kvadratisk, osv.
Bubble SortEnkel sorteringsalgoritme som sammenligner nabokort og bytter dem om nødvendig — gjenta til sortert. Ineffektiv for store datasett.
Selection SortSorteringsalgoritme som finner det minste elementet og plasserer det først, gjenta for resten. O(n²) — forutsigbar, men ikke rask.
Insertion SortSorteringsalgoritme som setter inn hvert element på riktig plass i den allerede sorterte delen. Effektiv for små og «nesten sorterte» datasett.