Hvad er en adaptiv algoritme?
En adaptiv algoritme er et sæt instruktioner til at udføre en funktion, der kan tilpasse sig i tilfælde af ændringer i miljø eller omstændigheder. Adaptive algoritmer er i stand til intelligent at tilpasse deres aktiviteter i lyset af skiftende omstændigheder for at opnå det bedst mulige resultat. De kan programmeres på et antal computersprog for at gøre alt fra at automatisere flyvekontrol til returnering af søgeresultater, der vil være nøjagtige og nyttige for en internetbruger.
Den adaptive algoritme kan ændre dens opførsel, hvis den føler en nødvendighed hertil. I eksemplet med en søgemaskine kan motoren gennemgå hele Internettet og returnere resultater fra forskellige placeringer, men den overvejer muligvis først kendte parametre om brugeren. Hvis brugerens IP-adresse f.eks. Stammer fra Frankrig, ville den adaptive algoritme returnere franske resultater, eller søgemaskinen omdirigerer muligvis brugeren til sit franske sted.
Algoritmer kan også lære af brugernes opførsel. Brugere af den samme søgemaskine i det samme land kan bemærke, at de får forskellige resultater. Disse er baseret på tidligere søgeopførsel og klik-gennem-links. Algoritmen kan tilpasse sine resultater til brugernes behov. F.eks. Lærer en person, der søger efter "fodbold" og klikker på links om amerikansk fodbold, ikke fodbold, algoritmen om, hvilke slags resultater han vil se.
Sådanne algoritmer kan være nyttige, når det er nødvendigt at konfigurere instruktioner til at udføre en kommando, men systemet skal være i stand til at tilsidesætte algoritmen i tilfælde af en presserende situation. Med delvis automatiseret lufttrafikstyring kan for eksempel algoritmen svare, når et fly radioer i et nødopkald. Det vil rådgive flyveledere om, hvordan man omdirigerer eksisterende trafik, i stedet for at insistere på at lande disse fly først og sætte det nødlidende fly i en ventekø. Algoritmen kan tilpasse sig forholdene og kan tilsidesætte de normale instruktioner om at sætte fly i en kø i rækkefølge efter deres ankomst, når den registrerer en nødsituation.
Kodning af en adaptiv algoritme tager længere tid end at udvikle en regelmæssig og kan kræve nogle særlige overvejelser. Inden en programmør opretter en algoritme, udvikler hun normalt en liste over parametre til at beskrive, hvad den skal gøre, og hvordan. Med en adaptiv version vil hun tænke på situationer, der kan opstå og indstille koden, så den adaptive algoritme kan lære af dens oplevelser.