Dit is een samenvatting van alle college's van het vak 'Technologie & recht' aan de KU Leuven. Het is dus voornamelijk gebaseerd op de colleges en waar nodig aangevuld met informatie uit het ter beschikking gestelde e-book.
TECHNOLOGIE EN RECHT
MODULE 1 – COMPUTER EN INTERNETTECHNOLOGIEËN
COMPUTERSYSTEMEN EN SOFTWARE-ALGORITMES
1 De digitale (r)evolutie
1.1 Evolutie van computers
Op dit moment vindt er een grote transformatie plaats in onze samenleving (= digitale
transformatie). Het is zo belangrijk dat EU er een actieprogramma aan gewijd heeft ‘Shaping the
Digital Transformation in Europe’.
ICT (Informatica- en Communicatie Technologieën) => digitale transformatie. Dit heeft een impact op
onze manier van leven, wonen en werken:
- Digitaal verwerken van data en documenten
- Digitaliseren van de processen in bedrijven en organisaties
- Digitalisering van de samenleving zelf (“digitaliteit”)
Impact is:
- Sociaal-economisch
- Mentaal-cultureel (men krijgt ook problemen als je niet mee bent met technologie, daarom
dat men iedereen zoveel mogelijk probeert mee te krijgen)
Er waren veschillende uitvindingen in 21 e eeuw: broodrooster, telefoon, bril, boekdrukkunst… zij
hebben allemaal een impact, maar niet zo groot als de computer => toestel dat programmeerbaar is
waarvan de functie niet alleen vast ligt (bv. bij broodrooster kan je alleen brood roosteren), maar een
computer is programmeerbaar met behulp van software programma’s. Men heeft dit al jaren
geprobeerd (van 19e eeuw) om dit te realiseren mbv mechanisische componenten. Het is pas sinds
doorbreek mechanica om dit te realiseren (jaren ’40-50-60 => met de jaren zijn computers kleiner
geworden)
Als je kijkt naar recentere evoluties => vooral IBM (1911) en INTEL (1968) zorgen voor evoluties. In de
laatste jaren zijn het vooral bedrijven die software fabriceren en een hogere beurswaarde hebben
dan de hardware bedrijven => microsoft (1975), Apple (1977), Adobe (1982) en Dell (1984).
Voorbeelden van software, bv. Amazon, => oorspronkelijk was er een grote push om de hardware te
verbeteren, maar recentelijk vooral softwarefirma’s die een grote plek hebben op de beurs.
1.2 Wet van Moore
Idee: elke 24 maand (2j) verdubbelt het aantal transistoren op een chip => exponentiële groei
Ingenieurs slagen erin om transistoren kleiner en kleiner te maken waardoor het aantal
transistoren op een chip verdubbelde
Kostprijs per transistor wordt goedkoper
Dit betekent dat er meerdere berekeninen per seconde kunnen gebeuren => komt overeen met
een verdubbeling van de rekenkracht van de processoren sneller en krachtiger
Opgelet! onderscheid lineaire groei – exponentiële groei:
- Lineaire groei = per stap een vast increment dat wordt bijgeteld bij huidige waarde
1
, - Exponentiële groei = per stap een vaste factor waarmee huidige waarde veremenigvuldigd
wordt (cfr. Wet van Moore)
Gevolgen: toename rekenkracht 2 opties:
Zelfde problemen oplossen, maar sneller?
Nieuwe types van problemen oplossen, maar binnen dezelfde tijd?
1.3 Computerarchitecturen: Von Neumann architectuur, neuromorfe
computers, kwantumcomputers
De meeste computers werken op basis van “Von Neumann architectuur”. De
computer bestaat uit twee delen: een centrale processing unit en memory
unit .
Zeer geschikt voor berekeningen maar niet voor cognitieve taken (bv.
weersvoorspellingen)
Nadelen:
- minder geschikt om cognitieve taken uit te voeren (bv. herkennen van gezichten in foto’s)
- Het feit dat men telkens naar geheugen moet gaan om gegevens op te halen zorgt ervoor dat
er een soort flessenhals is waardoor mogelijkheden begrensd raken, vandaar dat er
alternatieve architecturen bekeken worden (zie verder)
Probleem met Wet van Moore:
(1) als we transistoren kleiner en kleiner gaan maken, dan gaan ze zo klein worden als atomen
maken en we kunnen ze dan niet meer kleiner maken. Hier stopt het niet. Ingenieurs zijn ook
bezig om andere vormen van technologie te ontwikkelen en om verder computers te maken
met een kracht die exponentieel toeneemt, maar dit is nog niet duidelijk (quantum
computing, neuromorphic computing…)
(2) Indien rekenkracht blijft toenemen, zal aantal berekeningen van computers groter worden dan
die dat een menselijk brein zal kunnen maken. Hierdoor krijgen we een situatie waarbij kracht
van computers groter is dan ons menselijk brein (‘technologische singulariteit’). Sommige
voorspellen dat dit potentieel een gevaar inhoudt voor de mensheid om dat die slimme
computers de controle zouden kunnen overnemen over de menselijke controle, maar
afhangt van hoe men die computers zal begrenzen.
1.3.1 Neuromorfe computers
= Dit zijn computers die zich spiegelen aan hoe het menselijk brein is georganiseerd.
Het menselijk brein is goed in cognitieve taken (dingen/personen herkennen, spraak/tekst
interpreteren, reageren in snel veranderende omstandigheden…). Door de computers te bouwen op
een manier die gelijkaardig is zorgen we ervoor dat ook computers continu bijleren.
1.3.2 Kwantumcomputing
= Dit zijn computers gemaakt obv kwantumbits (of ‘q-bits’) waardoor zij veel krachtiger zijn dan de
klassieke computers. Zij kunnen oneindig veel toestanden tegelijk berekenen en dus problemen veel
sneller oplossen.
Probleem? We hebben vandaag nog niet echt de mogelijkheid om kwantumcomputers te bouwen,
maar wordt hard aan gewerkt.
2
,2 Algoritmes
= D.i. een procedure om een probleem op te lossen, vaak wiskundig geformuleerd.
Bestaat uit een aantal (eindige) stappen om vertrekkende van gekende begintoestand het
einddoel te berekenen (vb. algoritme om vierkantswortel te berekenen)
Vaak neergeschreven in een programmeertaal, maar niet noodzakelijk
Procedurale vs. declaratieve kennis: voorbeeld programma om cirkel te tekenen declaratieve
kennis zijn alle stappen die je nodig hebt om de cirkel te tekenen (middelpunt, straal, formule…)
– procedurale kennis is een algoritme die voor jou de cirkel gaat tekenen
Kenmerken:
Correctheid: berekent het algoritme de juiste output voor een gegeven input?
Eindigheid: stopt het algoritme in alle gevallen met een zinnig antwoord?
Snelheid: hoe snel berekent het algoritme het gewenste antwoord?
Robuustheid: kan het algoritme overweg me alle mogelijke vormen van input?
Elegantie: is het algoritme (de computercode) leesbaar en begrijpbaar?
+ enkele nieuwe kenmerken die vandaag steeds belangrijker worden:
Ethisch: is er een zekere vorm van discriminatie in de resultaten van het algoritme?
Duurzaamheid: wat is de economische impact van het algoritme?
Classificaties:
1) Deterministische algoritmes
- Produceren steeds dezelfde uitkomst voor een gegeven input
- Doorloopt daarbij steeds dezelfde sequentie van stappen
2) Probabilistische of stochastische algoritmes
- Kunnen, zelfs voor dezelfde input, een verschillende uitkomst genereren
- Vaak afhankelijk van een willekeurig (random) proces dat bewust in het algoritme gebruikt
wordt
- Worden vaak gebruikt om goede benaderende oplossing te bekomen wanneer de rekentijd
om de exacte oplossing met deterministische algoritmes te berekenen veel te lang zou zijn
3) Slimme algoritmes of machinaal leren (ML):
- Algoritmes die zichzelf automatisch verbeteren obv vroegere ervaringen
- Hoe meer algoritme traint met nieuwe data, hoe beter algoritme (meestal) wordt
- Bouwt (impliciet) model van het probleem op obv de trainingdata, en vervolgens gebruikt
het dat model om de uitkomst te bepalen voor nieuwe invoer
2.1 Case study
“Raad mijn getal”- spel => Jan moet een getal kiezen tussen 1 – 128. Mieke moet dit getal proberen
te raden in zo weinig mogelijk pogingen => Welke algoritmes kan Mieke daarvoor gebruiken?
Algoritme A: willekeurig gokken
- Correct? Als Mieke ooit juist gokt, heeft ze de correcte oplossing
- Stopt dit algoritme ooit? In principe kan dit oneindig lang doorgaan, tenzij Mieke onthoudt
welke getallen ze reeds gegokt heeft (vraagt “geheugen”)
Algoritme B: sequentieel alle getallen aflopen
3
, - Correct? Ja, vroeg of laat zal Mieke ooit het juiste getal raden
- Stopt dit algoritme ooit? Ja, Mieke heeft max. 128 pogingen nodig
- Hoeveel vragen nodig? In beste geval bij eerste vraag juist, in slechtste geval bij laatste geval
juist. In gemiddelde geval (n+1)/2 vragen dus gemiddeld 64,5 vragen nodig zijn om antwoord
te vinden
Algoritme C: Mieke stelt vragen die meer informatie opleveren dan een eenvoudige “ja” of “nee”
door zoekruimtes (bv. is het geval kleiner dan 64? Is het getal kleiner dan 32?)
- Correct? Ja, zoekruimte wordt steeds kleiner en als zoekruimte nog 1 getal is heb je de
oplossing
- Hoeveel vragen nodig? Zoekruimte telkens halveren tot je 1 getal uitkomt => 7 maal (want
2^7 = 128)
Algoritme D: Mieke heeft voorkennis van eventuele lievelingsgetallen (kennis uit het verleden) =>
gaat zorgen voor een beter algoritme)
- Algoritme C verdeelt zoekruimte in 2 gelijke delen, maar 2 delen hoevel niet gelijk qua
grootte te zijn
- Betere strategie: 2 delen die elk een gelijke kans hebben dat ze het juiste getal bevatten
(voorgaande spelletjes vormen een “predictor” voor huidige spelletjes)
2.2 Reële toepassingen van slimme algoritmes
Vb. zoekresultaten op Google: de resultaten worden enerzijds geselecteerd obv zoekterm en
anderzijds obv vorige zoektermen die je in het verlden hebt gebruikt.
Vb. online shopping, Youtube: je krijgt aanbevelingen die gebaseerd zijn op acties die je in het
verleden gedaan hebt (bv. programma weet welke schoenen je hebt aangekocht in het verleden, het
zal nieuwe schoenen voorstellen die in hetzelfde genre liggen zodat je deze misschien zult aankopen)
Vb. Waze: ook hier wordt rekening gehouden met informatie uit het verleden als je een route zou
bepalen.
Conclusie:
Algoritmes gebruiken de gegevens van vorige uitvoeringen, om beter en efficiënter te
kunnen werken
Met vorige resultaten wordt “voorspeller” voor huidige uitvoering gevormd => op den
duur zou je enkel nog voorstellingen krijgen obv verleden en dus nooit nog nieuwe
voorstellingen zou krijgen => je gaat altijd hetzelfde soort informatie doorgestuurd krijgen
“filterdubbel”: mensen krijgen een beperkte vorm van nieuws doorgestuurd, likes
versterken deze informatie alleen maar
2.3 Huidige betekenis van “algoritme”
De term “algoritme heeft steeds meer betekenis gekregen van volledig gedrag van software:
“Google algoritme” = beslissingen over welke zoekresultaten voor welke gebruiker getoond
worden
“Facebook algoritme” = beslissingen welke items op tijdlijn verschijnen
“AI algoritme”
Quid verantwoordelijkheid? Zie later
4
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller s164398. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $9.72. You're not tied to anything after your purchase.