Informaticasite van het Sondervick College te Veldhoven                 © L.J.M van Haperen (bron : R.J. van der Beek)
 

PWS-onderwerpen met informatica  

  • RSA en beveiliging op het internet, geheime boodschappen coderen, cryptografie

    De laatste tijd wordt steeds meer informatie via de elektronische snelweg verstuurd. Het is uiteraard van groot belang dat dit op een veilige manier gebeurt. Daarom is het noodzakelijk dat de berichten eerst worden gecodeerd voordat ze verzonden worden. Achter dit coderen en decoderen zit een behoorlijke portie wiskunde. Deze wiskunde noemen we ook wel cryptografie. Zie hoofdstuk 17
  • Compressietechnieken

    Compressie is een begrip waar al vanaf de beginjaren van de informatica veel aandacht aan is besteed.
    Door de ontwikkeling van verschillende technieken kan elk stuk data tegenwoordig worden gecomprimeerd.
    Onderzoek welke technieken worden gebruikt om verschillende soorten media te verkleinen, denk maar aan beeld en geluid. Onderzoek de verschillende algoritmen, en ontwerp er misschien zelf wel één.
  • Handschriftherkenning en woordherkenning

    Hoe kan een systeem geschreven tekst herkennen? Voor een computer is dat lastig omdat het niet weet hoe handgeschreven letters of woorden er uit zien, laat staan hoe jij die schrijft.
    Een handschriftherkenner kan jouw handgeschreven letters herkennen door ze te vergelijken met een groot aantal letters die eerder door anderen zijn geschreven. De herkenner kun je dan zelf bijstellen door jouw voorbeeld letters toe te voegen.
    In de afgelopen paar seconden hebben je hersenen heel wat werk verricht om de vorige zin te begrijpen. Met behulp van kennis uit de kunstmatige intelligentie is het mogelijk het herkenningsproces van de woorden na te bootsen.
    Onderzoek wat er allemaal bij komt kijken tussen de herkenning van verschillende letters en de herkenning van het woord waar ze in staan, dus hoe bijvoorbeeld de letters B, O, E en K het woord BOEK zullen vormen.
  • Zoeken met Google

    Internet bestaat uit een grote verzameling computers. Op veel van deze computers staat informatie.
    Gelukkig hoef je niet al deze computers zelf af te zoeken. Grote zoekmachines als Google en Yahoo zoeken systematisch internet af naar informatie.
    Deze gegevens worden in kaart gebracht op de computers van deze zoekmachines. Hoe gaat dat in zijn werk?
    Hoe wordt de volgorde bepaald? Wat moet je doen om er voor te zorgen dat je site zo hoog mogelijk op de lijst komt? Wat zijn handige zoekstrategieën?
  • Waar komen de GSM-telefoonmasten?

    In een gebied (bv. Nederland) worden een aantal basisstations geplaatst. Dit zijn vrij compacte masten die bijna overal geplaatst kunnen worden. Elk basisstation kan een aantal mobiele bellers, die zich niet te ver van het station bevinden, verbinden met het vaste telefoonnetwerk.
    Bij plaatsing van voldoende basisstations kan men het grote gebied opsplitsen in kleinere delen, die we ook wel "cellen" noemen. Dit zijn de werkgebieden van de basisstations.
    Wanneer iemand vanuit een cel mobiel wil bellen, krijgt hij een kanaal toegewezen waarmee de beller via het bij die cel behorende basisstation met het vaste net wordt verbonden. Een kanaal bestaat uit een tweetal frequenties waarvan er één gebruikt wordt voor een signaal van het basisstation naar de mobiele beller, en één voor andersom. Omdat GSM digitaal is, kan men gebruik maken van technieken zoals FDMA (Frequency Division Multiple Access) en TDMA (Time Division Multiple Access) waardoor het mogelijk is om met één frequentiepaar tegelijkertijd acht bellers (acht kanalen) met een basisstation te verbinden.
    Vanwege de beperkte sterkte van de mobiele telefoons en het beperkte onderscheidend vermogen van de basisstations kan een mobiele beller alleen via een bepaald basisstation communiceren als hij er niet te ver van verwijderd is.
    Een basisstation heeft een bepaalde kritieke afstand waarbinnen een beller zich moet bevinden om een goede verbinding mogelijk te maken.
    Voor communicatie tussen bellers en stations is slechts een beperkt aantal frequenties beschikbaar. Vodafone bv. heeft van de Nederlandse overheid 42 frequenties toegewezen gekregen.
    Bedenk hoe Vodafone de basisstations het beste kan plaatsen indien men landelijke dekking nastreeft.
    Hoeveel frequentieparen heeft men gemiddeld per cel (liefst zo veel mogelijk)?
    Hoeveel basisstations heeft men ongeveer nodig voor de landelijke dekking indien ge�ist wordt dat er gemiddeld één kanaal per vierkante kilometer beschikbaar is?
    Op welke kritieke afstand moet men deze instellen en wat wordt hun onderlinge afstand ?
    Wat verandert hieraan als men door nieuwe technieken 16 i.p.v. 8 kanalen per frequentiepaar kan realiseren?
  • LaTeX

    pdfLaTeX is een opmaaktaal. Dit wil zeggen dat je tussen de tekst die je wilt schrijven ook opmaakcommando's typt.
    Die commando's beschrijven hoe de tekst moet worden opgemaakt, en hoe ander materiaal, zoals plaatjes, worden ingevoegd. Je hebt dus in de eerste plaats een teksteditor nodig. Je kunt met een teksteditor platte tekst in de computer invoeren en wijzigen. Platte tekst is tekst zonder opmaak.
    Omdat platte tekst geen opmaak heeft, moet je ook nog commando's typen opdat LaTeX de juiste opmaak aan de tekst toevoegt. Deze commando's beginnen allemaal met een speciaal teken: de backslash
    LaTeX is dus een soort van een markeertaal, te vergelijken met html. Html is echter bedoeld om webpagina's op te maken. LaTeX daarentegen is een opmaaktaal om afdrukbare documenten bijvoorbeeld in pdf-formaat aan te maken. LaTeX is bovendien een programmeertaal. Je kunt zelf bijkomende opmaakcommando's ontwerpen.
    Hierdoor is LaTeX dus uitbreidbaar, in tegenstelling tot een kant-en-klare tekstverwerker, die pas bij een volgende versie meer mogelijkheden heeft.
  • Een robot programmeren.

    Robotica is gericht op robots, en alles wat ermee te maken heeft. Onze school (het LauwersCollege) beschikt over een Lego Mindstorms set. Met deze set kun je op een gemakkelijke manier een robot bouwen en deze zelf programmeren. Maar wat wil je die robot laten doen?
    Misschien wil je er voor zorgen dat hij een uitweg zoekt in een doolhof. Of misschien wil je hem laten voetballen. Of nog iets heel anders?
    Zie ook cursus Robotica
  • Game Development

    Er komt veel kijken bij het ontwikkelen van games; technische zaken zoals programmeren met multimediatechnieken, maar ook de verbeelding die je nodig hebt bij het ontwerp. Het gaat natuurlijk om spanning en actie, maar er zijn ook toepassingen van games buiten de sfeer van entertainment. Zo kunnen games bijvoorbeeld helpen bij het trainen van sociale vaardigheden, terwijl dit met gewoon lesmateriaal niet eenvoudig te doen is. Ontwerp je eigen game bijvoorbeeld met het Half Life 2 game development tool, waarmee je met zelf gemaakte foto's en/of videomaterialen kunt gebruiken. Of gebruik Gamemaker. Bestudeer verder de achtergronden van game development.
  • Een CMS (content management systeem)

    Een content-beheersysteem of contentmanagementsysteem is een web-applicatie, die het mogelijk maakt dat mensen eenvoudig, zonder veel technische kennis, documenten en gegevens op internet kunnen publiceren (contentmanagement).
    Als afkorting wordt ook wel CMS gebruikt, naar het Engelse content management system (inhoudsbeheerssysteem). Een functionaliteit van een CMS is dat gegevens zonder lay-out (als platte tekst) kunnen worden ingevoerd, terwijl de gegevens worden gepresenteerd aan bezoekers met een lay-out door toepassing van sjablonen.
    Een CMS is vooral van belang voor websites waarvan de inhoud regelmatig aanpassing behoeft, en de inhoud in een vaste lay-out wordt gepresenteerd aan bezoekers.
    De meeste grote bedrijven gebruiken voor hun website tegenwoordig een CMS. Een bekende variatie op het CMS is bijvoorbeeld de weblog.
    Een CMS bestaat ten minste uit de volgende onderdelen:
    * een (bijna altijd afgeschermde) administratiemodule, waar gegevens kunnen worden ingevoerd, verwijderd of aangepast.
    * een database of een andere vorm van opslag van de gegevens.
    * een presentatiemodule, waar de ingevoerde gegevens door bezoekers kunnen worden bekeken.
    Een bekende open-source CMS is van Joomla!
    Welke CMS'en zijn er. Hoe werken ze. Kun je er zelf één maken?
  • Foutherstellende en ontdekkende codes

    Je hebt foutenontdekkende codes en foutenherstellende codes (bijv. voor CD's). Hoe werken die? Kun je er zelf één maken?
  • Digitaal display

    Een kort verslag van een pws over dit onderwerp, waarmee een aantal jaren geleden een prijs is gewonnen, vind je hier
  • Raytracing

    Een kort verslag van een pws over dit onderwerp, waarmee een aantal jaren geleden een prijs is gewonnen, vind je hier
  • Verkeerslichten

    Een kort verslag van een pws over dit onderwerp, waarmee een aantal jaren geleden een prijs is gewonnen, vind je hier
  • Digitalisering van vingerafdrukken

    Een kort verslag van een pws over dit onderwerp, waarmee een aantal jaren geleden een prijs is gewonnen, vind je hier
  • Onderzoek "sudoku" puzzels met de computer

    Maak een programma dat telt hoeveel oplossingen een gegeven puzzel heeft.
    Vaak kun je een puzzel helemaal oplossen door "flauwe" zetten te doen: je kijkt voor ieder vakje bij welke van de negen cijfers er nog kunnen staan, en als een cijfer dan nog maar bij een vakje in een groep van negen mogelijk is, vul je hem meteen in.
    Definieer de "moeilijkheidsgraad" van een sudoku puzzel als het aantal "niet-flauwe" zetten dat er nodig is om hem in te vullen.
    Maak een programma die de moeilijkheidsgraad van een puzzel bepaalt.
  • Rekenen met getallen die "te groot" zijn

    Maak een programma om "bignum" aritmetiek mee te doen: rekenen met getallen met zoveel cijfers dat ze niet in een "integer" passen.
    Representeer dit soort "grote" getallen door een array van "gewone" integers.
    Maak routines om dit soort grote getallen te lezen, te schrijven, op te tellen, te vermenigvuldigen.
    Hoeveel stappen kost het je programma om twee getallen met n cijfers te vermenigvuldigen?
    Kun je dit ook in minder dan "orde n kwadraat" stappen voor elkaar krijgen?
    Een interessante vermenigvuldigmethode voor "grote getallen" is van Karatsuba.
  • Onderzoek de "edit afstand" van strings

    Dit is technologie die bijv. wordt gebruikt om DNA sequenties te vergelijken.
    In een editor kun je een string editten door een teken weg te halen, een teken te veranderen, of een teken toe te voegen.
    Maak een programma dat het minimale aantal van dit soort operaties telt om van een string naar een andere te komen. Beargumenteer waarom je programma de minimale oplossing vindt. Laat je programma de edit operaties compact weergeven.
  • Hexadecimaal rekenen en het getal "Pi"

    Sinds enige jaren is bekend dat je de honderdmiljardste hexadecimaal van Pi "snel" kunt uitrekenen zonder de 99999999999 voorgaande te bepalen.
    Om "vele" decimalen van Pi te vinden moet je helaas in volle precisie werken... Moderne algorithmen om dit te doen zien er eenvoudig uit, maar zijn meestal moeilijk te vinden.
    Een oude manier om Pi te berekenen is via het gooien van een naald op een bord met lijntjes (de Bouffon).
    Doel is, een verslag te schrijven over manieren om Pi te berekenen, met aandacht voor rekensnelheid en geheugengebruik, en een implementatie te maken van een van deze algorithmen, bijvoorbeeld die van de Bouffon.
  • Hopfield Netwerk

    Je hersenen bestaan uit heel veel neuronen (tussen de 10 en 1000 miljard) die onderling met elkaar verbonden zijn.
    Op de een of andere manier kan die grijze smurrie daardoor heel veel dingen doen waartoe een computer (nog) niet in staat is.
    Om een computer dit wel te kunnen laten doen kun je proberen om een computer de werking van het brein te laten simuleren m.b.v. een software programma. Dit wordt een kunstmatig neuraal netwerk genoemd.
    Een van de eenvoudigste neurale netwerken is het zogenaamde Hopfield netwerk. Neuronen in dit netwerk kunnen in 2 toestanden zijn: aan of uit. Het Hopfield netwerk werkt als een soort geheugen.
    Door de sterkte van de verbindingen tussen neuronen te leren, kun je plaatjes opslaan. Wanneer je dan een onnauwkeurig beeld aanbiedt, slaagt het netwerk erin het sterkst gelijkende opgeslagen plaatje te terug te vinden.
    Het Hopfield netwerk is zeker niet de meest efficiente manier om plaatjes op te slaan, maar heeft wel een aantal interessante eigenschappen die overeenkomen met de manier waarop je hersenen ook werken. Bijvoorbeeld, wanneer een groot aantal van de verbindingen worden "weggesneden" blijft het netwerk nog steeds goed functioneren.
    * Bestudeer de wiskunde achter het Hopfield netwerk (zie bijvoorbeeld wikipedia als startpunt).
    * Schrijf een computerprogramma dat een Hopfield netwerk simuleert.
    * Laat zien dat het Hopfield netwerk inderdaad plaatjes op kan slaan en kan reconstrueren.
    * Onderzoek in hoeverre het Hopfield netwerk goed blijft functioneren als verbindingen kapot gaan of neuronen fouten maken.
  • Beveiligingstechnologieën en gevolgen van gaten in de beveiliging

    De beveiligingstechnologieëen omvatten de volgende gebieden:
    • Netwerkbeveiliging.
      Deze beveiligingstechnologieën helpen bij een betere beveiliging tegen aanvallen via het netwerk, zoals een Firewall. Wat doet een Firewall precies, hoe kun je dingen instellen? Welke zijn er, wat zijn de verschillen?
    • Geheugenbeveiliging.
      Sommige aanvallen van kwaadwillige software maken misbruik van zwakke plekken in software waardoor te veel gegevens worden gekopieerd naar gebieden in het geheugen van de computer.
      Hoe gebeurt dat, en wat is er aan te doen?
    • Veiliger e-mail.
      Beveiligingstechnologieën helpen virussen buiten de deur te houden die zich verspreiden via e-mail. Mogelijk onveilige bijlagen die worden verzonden via e-mail en expresberichten worden apart gehouden zodat ze andere gedeelten van het systeem niet kunnen beschadigen. Wat zijn de gevaren, hoe wordt geprobeerd die te voorkomen?
    • Veiliger surfen.
      Een van de verbeteringen bestaat uit het vergrendelen van de zone van de lokale machine zodat kwaadwillige scripts niet kunnen worden uitgevoerd en geen schadelijke bestanden kunnen worden gedownload van internet. Wat kan er gebeuren? Hoe wordt dit voorkomen?
  • RFID: Radio Frequency Identification

    Het Radio Frequency Identification (RFID) systeem is een identificatie technologie die gebruik maakt van radiogolven.
    Met behulp van deze radiogolven kunnen objecten, van pennen tot een tubes tandpasta via een chip volgen.
    Maar hoe werkt dit systeem nou precies en wat voor gevolgen heeft dit systeem voor de privacy van consumenten?
  • GPS

    Veel auto's zijn tegenwoordig uitgerust met een navigatiesysteem. Maar ook mobiele telefoons en handcomputers beschikken steeds vaker over zo'n systeem.
    Een navigatiesysteem helpt bij het bepalen van de route naar de bestemming. Om dat te kunnen doen is het om te beginnen van groot belang dat je weet waar je precies bent. Daarvoor is een GPS-ontvanger nodig.
    Het GPS-systeem bestaat uit een groot aantal (minimaal 24) satellieten die in een baan om de aarde draaien. Deze satellieten zenden radiosignalen uit. Via een zogenaamde GPS-ontvanger kun je deze signalen op de grond ontvangen. De GPS-ontvanger kan aan de hand van de signalen met verbazingwekkende precisie bepalen waar de ontvanger zich bevindt.
    Waar bestaat GPS uit? Hoe werkt het? Hoe werkt een navigatiesysteem verder? Hoe wordt de kortste route bepaald?