informatica is de discipline die een wetenschappelijke basis wil opbouwen voor onderwerpen als
computerprogrammering, informatieverwerking, algoritmisch proces zelf
Het biedt basis voor hedendaagse computertoepassingen en basis voor computerinfrastructuur van
morgen
0.1 De rol van algoritmen
een algoritme is een reeks stappen die definieert hoe een taak wordt uitgevoerd
o Voordat een machine zoals een computer een taak kan uitvoeren, moet een algoritme voor het
uitvoeren van die taak worden ontdekt en weergegeven in een vorm die compatibel is met de
machine
een weergave van een algoritme = een programma
o proces van ontwikkelen van programma, het coderen in machine-compatibele vorm en het
invoegen in een machine = programmeren
Programma's en de algoritmen die ze vertegenwoordigen = software
de machine zelf = hardware
doel studie algoritmen: reeks aanwijzingen te vinden die beschreven hoe alle problemen van een bepaald
type konden worden opgelost
Voorbeeld: Euclidiaans algoritme
o Voor het vinden van de grootste gemene deler van twee positieve gehele getallen
o Beschrijving: dit algoritme gaat ervan uit dat de invoer uit twee positieve gehele getallen
bestaat en vervolgens de grootste gemene deler van deze twee waarden berekent
o Procedure:
Stap 1: Wijs M en N de grootste en kleinste invoerwaarde toe
Stap 2: deel M door N en plaats rest in R
Stap 3: als R niet 0 is, wijs dan aan M de waarde van N toe, wijs N de waarde van R
toe en keer terug naar stap 2; anders is de grootste gemene deler die momenteel
is toegewezen aan N
zodra een algoritme voor het uitvoeren van een taak is gevonden, vereist de uitvoering van die taak niet
langer inzicht in de principes waarop het algoritme is gebaseerd
o taken zijn beperkt tot het volgen van aanwijzingen
o de vereiste intelligentie om het probleem op te lossen is gecodeerd in het algoritme
o Hiermee kunnen we machines bouwen die nuttige taken uitvoeren
o Als er geen algoritme bestaat om een probleem op te lossen, ligt de oplossing van dat probleem
buiten de mogelijkheden van machines
Kurt Gödel's onvolledigheidsstelling:
o er zijn uitspraken waarvan de waarheid of onwaarheid niet met algoritmische middelen
kan worden vastgesteld
o Elke volledige studie van ons rekenkundig systeem ligt buiten de mogelijkheden van algoritmische
activiteiten
1|Pagina
Lize V.A.
,0.2 geschiedenis van informatica
vroeg computerapparaat = telraam
o vrij eenvoudig; bestaande uit kralen geregen op staven die op hun beurt in een rechthoekig frame
zijn gemonteerd
o Terwijl de kralen op de staven heen en weer worden bewogen, vertegenwoordigt
hun positie opgeslagen waarden
o Deze 'computer' vertegenwoordigt de data en slaat deze op
o Voor de besturing vertrouwt de machine op de menselijke operator
o Het telraam alleen is slechts een gegevensopslagsysteem, het moet worden gecombineerd met
een mens om een complete computermachine te maken
machines van Pascal, Leibniz, Babbage
o deze machines vertegenwoordigden data door tandwielpositionering, waarbij de data
mechanisch werd ingevoerd door initiële tandwielposities in te stellen
o De machine van Pascal is gebouwd om alleen de optelling uit te voeren
o De verschilmachine van Babbage kan worden aangepast om verschillende berekeningen uit te
voeren
Het is ontworpen om instructies te lezen in de vorm van gaten in papieren kaarten
voorbeeld: algoritme voor berekenen van kwadraat van 2 willekeurige
natuurlijke getallen via de methode van de successieve verschillen
We beginnen wetende dat het kwadraat van 0 0 is, het kwadraat
van 1 is 1, het kwadraat van 2 is 4 en het kwadraat van 3 is 9
Hiermee kunnen we het kwadraat van 4 bepalen
We berekenen eerst de verschillen van de vierkanten die we al kennen
Vervolgens we berekenen de verschillen van deze resultaten: deze
verschillen beide 2 zijn
Aangenomen dat deze consistentie blijft bestaan concluderen we
dat het vierkant van 4 16 is
nu we het vierkant van 4 kennen, zouden we het kunnen
doorgaan met onze procedure om het kwadraat van 5 te
berekenen
met de ontwikkelingen van transistors werden de machines ter grootte van een kamer uit de jaren
veertig in de loop van de decennia teruggebracht tot de grootte van enkele kasten
o transistoren zijn steeds kleiner en kleiner geworden
o elk jaar zien we een verdubbeling van het aantal transistoren die in een machine passen
o vroeger ging de snelheid daar ook in mee
o => moeilijk om nog kleiner te gaan
verwerkingskracht van computers begon om de twee jaar te verdubbelen
een belangrijke stap in de richting van popularisering van computers was de ontwikkeling van
desktopcomputers (zelfgemaakte computers, hobbyactiviteiten)
o In 1981 introduceerde IBM zijn eerste desktopcomputer, de personal computer (pc) genaamd,
waarvan de onderliggende software werd ontwikkeld door Microsoft onmiddellijk succes
Internet = de mogelijkheid om afzonderlijke computers in een wereldwijd systeem te verbinden
Word wide web = een systeem met documenten die op internet op computers zijn opgeslagen, kan
aan elkaar worden gekoppeld en een doolhof van gekoppelde informatie produceren toegankelijk
door zoekmachines
de miniaturisatie van computers werd voortgezet
2|Pagina
Lize V.A.
,0.4 overkoepelende thema’s bij studie van
informatica
de miniaturisatie van computers en hun groeiende mogelijkheden hebben computertechnologie
op de voorgrond van de huidige samenleving gebracht, en computertechnologie is zo
overwegend dat bekendheid ermee fundamenteel is om lid te worden van de moderne wereld
De zeven grote ideeën: algoritmen, abstractie, creativiteit, data, programmeren, internet en impact.
algoritmen
algoritmisch denken: hoe de oplossing van een probleem ontdekken, voorstellen en
communiceren als een geordende, éénduidige reeks van uitvoerbare instructies?
algemene oplossing voor een bepaald type probleem
reeks van instructies voor het uitvoeren van een taak (wat te doen? in welke volgorde)
er zijn verschillende algoritmes mogelijk voor één probleem
o niet allemaal even goed
o algoritmes die sneller zijn en minder geheugen innemen zijn beter
o nadeel: sneller is wel vaak meer geheugen
o brut force algoritme; alles proberen, niet meest efficiënte algoritme
programma= algoritme voorgesteld in een vorm waardoor het door een computer kan uitgevoerd worden
software= verzamelnaam voor programma’s en de algoritmen die ze voorstellen
algoritmen spelen een centrale rol in de informatica
Computerwetenschap heeft zichzelf gevestigd als de wetenschap van algoritmen
informatica is een ondersteunde wetenschap voor de
beleidsinformatica en de beleidsinformatica is een
ondersteunende wetenschap voor de bedrijfsvoering
abstractie
abstraheren: de externe eigenschappen van een systeem tonen en de interne eigenschappen van
het systeem verbergen
o principe van de ‘black box’ => essentie van het detail scheiden
scheiden van essentie en details
o wat essentie is (het externe) en wat detail is (het interne) is relatief t.o.v. een doel
o doel= oplossen van een (deel)probleem => geen verlies van precisie
een algoritme maakt een abstractie van het waarom van een oplossing
o de intelligentie nodig om de oplossing te vinden is opgeslagen of bevat in het algoritme
o een algoritme kan uitgevoerd worden zonder te begrijpen waarom het probleem ermee opgelost is
computers begrijpen geen programma’s, maar voeren ze uit
o de computer beseft niet wat er eigenlijk aan het gebeuren is, het enige wat het computer
moet weten is hoe hij het programma moet uitvoeren
o als menselijke gebruiker weten we wel wat er aan het gebeuren is maar je hoeft niet te weten hoe
het werkt
3|Pagina
Lize V.A.
, creativiteit
Het ontdekken en toepassen van nieuwe algoritmen voor het oplossen van uitdagende problemen vereist
creativiteit
data
computers kunnen alle informatie weergeven die discreet en gedigitaliseerd kan worden
Big data: 4 V’s
o Volume: volume beschikbare gegevens, is enorm gegroeid, gigantisch veel gegevens zijn voorradig
o Velocity: de snelheid waarmee de gegevens veranderen/ aangemaakt wordt
o Variety: de verscheidenheid aan gegevens, films, muziek…
o Veracity: onbetrouwbaarheid van gegevens, fake news, data-kwaliteit, veroudering…
programmeren
menselijke intenties vertalen naar uitvoerbaar computeralgoritme
internet
het internet verbindt de computer en elektronische apparaten over de hele wereld
De vele aspecten van de menselijke samenleving zijn nu verweven met het wereldwijde netwerk
implicaties voor onze privacy en de beveiliging van onze persoonlijke informatie
niet enkel meer een communicatienetwerk van mens tot mens maar nu ook tussen machines IOT
(the internet of things), ook dingen communiceren met elkaar
impact
Computerwetenschap heeft enorme sociale gevolgen
o het vervaagt vele verschillen waarop onze samenleving beslissingen in het verleden heeft
gebaseerd en daagt veel van de lang bestaande principes van de samenleving uit
Sociale kwesties onderzoeken de relatie tussen informatica en de maatschappij
o Vragen om te overwegen
o Het doel van deze vragen is niet om u naar een correct antwoord te leiden, maar eerder
om u bewust te maken
zowel positieve als negatieve effecten
vb. decentralisatie van gegevens via technologie, deepfakes, cyberaanvallen..
4|Pagina
Lize V.A.