Optimering (datalogi)

Fra Wikipedia, den frie encyklopædi
Gå til: navigation, søg

Indenfor datalogi er optimering processen at gøre et system mere effektivt såsom at ændre det, til at bruge færre ressourcer, bruge mindre CPU-tid, anvende mere parallelisme. Optimering kan også ændre på om noget er muligt (i forhold til tid, såsom om noget tager et sekund eller en uge) eller, specielt hvis vi snakker omkring algoritmer, i forbindelse med massive databeregninger(oftest).

Optimeringer & algoritmer[redigér | redigér wikikode]

Oftest i datalogien snakker man omkring optimeringer i forhold til algoritmer, hvilket jo kommer af at mange ting skal gøres indenfor nogle krav, hvilket både er CPU-tid / vente tid, og hukommelseforbrug. Nogle gange er det nødvendigt at finde en effektiv løsning til nogle problemer, og andre gange er der slet ikke fundet nogle løsninger der er effektive nok. Normalt når man omtaler algoritmer i forhold til tid / hukommelse bruger man noget der hedder store O notation, til at beregne forbruget i forhold til inputtet's størrelse. Et eksempel kunne være hvis vi skal sortere en masse tal, og vi så har 20 linjers kode til at gøre det på, så vil vi få en masse konstanter afhængig af disse linjer, derfor bruger man store "O" til at betegne at vi ser bort fra konstanter, og bare kigger på udviklingen i forhold til inputtet's størrelse. Det er næsten altid forbedringer i store O notation man søger, eftersom at konstanter ikke er det der er begrænsningen på store data mængder, men nogen gange har det stor indvirkning, specielt fordi dem der har en god "O" tid, har ofte større konstanter, og derved bliver de langsommere ved små data input. Det var kort omkring hvad termer / datalogisk optimering går ud på, så lad os kigge på hvad det vil sige når vi snakker om, problemer der ikke har en effektiv løsning, og dem hvor at en effektiv løsning er reelt set den eneste løsning man kan bruge. Et godt eksempel er sådan noget som et skakspil. Her findes der skak computere, som kan spille som om de er en rigtig person. Problemet med skak, er at der er så mange mulige opstillinger og muligheder igennem spillet, at det faktisk ikke er lykkes nogen at regne alle de "vindende stategiere" ud. det vil sige at det faktisk ikke er lykkes nogen at finde en måde at vinde for hver mulige opstilling. Måden en skakcomputer fungerer på, er ved at gætte sig til det smartest træk, og kun ved at vurdere et par ture (alt efter sværhedsgraden på computeren), beregner den sig til et træk.

Eksterne henvisninger[redigér | redigér wikikode]

Programmering Stub
Denne artikel om datalogi eller et datalogi-relateret emne er kun påbegyndt. Hvis du ved mere om emnet, kan du hjælpe Wikipedia ved at udvide den.