Stelsels van vergelijkingen
In dit artikel leg ik u uit hoe u op generieke wijze stelsels van vergelijkingen kunt oplossen.
Uitgangspunt is dat er evenveel vergelijkingen als onbekenden zijn.
Tot slot laat ik u zien hoe een en ander in Excel geïmplementeerd kan worden.
De school-methodes
Als u op de middelbare school wiskunde heeft gehad dan heeft u dit ongetwijfeld al eens gedaan. Maar ik begrijp best dat dat is weggezakt.
Op school heeft u geleerd dat er twee methodes zijn om een stelsel op te lossen:
1. de substitutie-methode
2. de eliminatie-methode
Laten we aan de hand van een eenvoudig voorbeeld beide methodes nog eens doorlopen:
Bekijk het stelsel:
I: 2x-2y=-2
II: 3x+2y-7=0
Voor het gemak zetten we de onderste (II) ook in de volgorde van de eerste (I):
I: 2x-2y=-2
II: 3x+2y=7
Eerst de substitutie-methode: Druk x uit in y of andersom.
Vergelijking I kan ik herschrijven als 2x=2y-2 en als ik alle factoren door 2 deel: x=y-1.
Nu kan ik de gevonden x in II gaan invullen:
3(y-1)+2y=7 ==> 3y-3+2y=7 ==> 5y=10 ==> y=2
We weten (zie 3 regels terug) dat x=y-1, dus x=2-1=1.
En hiermee hebben we dit stelsel opgelost.
De tweede methode is die van de eliminatie.
I: 2x-2y=-2
II: 3x+2y= 7 (ik ga I en II optellen)
I+II: ————————+
5x+0 = 5
De y is hier meteen weggevallen: Dus 5x=5 ==> x=1; invullen in I (of II) geeft: 2(1)-2y=-2 ==> -2y=-4 ==> y=2.
Stelsel wederom opgelost.
Over het algemeen is de tweede methode (iets) sneller, al moet je vaak een van beide of beide vergelijkingen “verbouwen” zodat ze makkelijk van elkaar zijn af te trekken of op te tellen.
De methodes worden steeds moeilijker wanneer er meer vergelijkingen en meer onbekenden voorkomen.
We moeten de boel wat gaan versimpelen. Om dat te doen gaan we met matrices werken. Alle overbodige ballast gooien we over boord.
Matrix vegen
In het voorbeeld zijn eigenlijk alleen de coëfficiënten en de losse getallen interessant omdat we daarmee rekenen. De x-en en y-en zijn tijdens dat proces alleen maar lastig (om maar niet te spreken over een stelsel van 30 vergelijkingen met 30 onbekenden, want dan hebben we geen letters genoeg en moeten we indexeren o.i.d).
We schrijven het stelsel als een matrix:
2 -2 | -2
3 2 | 7
waarbij de coëfficiënten voor de verticale streep staan en de losse getallen achter de verticale streep.
In de eerste kolom staan dus de “x-en” en in de tweede kolom staan de “y-en”.
En nu is het de kunst om van de matrix voor de verticale lijn de zogenaamde eenheids-matrix te maken, dat is een matrix waarop de hoofd-diagonaal (val links boven naar rechts onder) alleen maar 1-en staan en alle andere getallen 0 zijn. Dan staat achter de verticale streep de oplossingen van het stelsel.
Hier is een generiek algoritme voor dat bekend staat als het Gauss-Jordan-algoritme en gaat als volgt:
In de eerste ronde wordt het eerste element van de eerste rij op 1 gezet door alle getallen van de eerste rij te vermenigvuldigen met het omgekeerde van het eerste element van de rij (de reciproque of reciproke dus) gevolgd door:
Alle andere rijen worden afgetrokken door de eerste met een factor dat overeenkomt met de waarde van de eerste element van de andere rijen.
Dit wordt herhaald voor alle rijen waarbij het woordje eerste wordt vervangen door tweede, derde etc.
Dit betekent dus dat je voor n vergelijkingen met n onbekenden n rondes nodig hebt.
Terug naar ons voorbeeld:
We hebben dus:
2 -2 | -2
3 2 | 7
1e ronde:
vermenigvuldig I met 0,5 (=1/2):
1 -1 | -1 ; trek nu 3*I van II af, dus II-3*I:
0 5 | 10
2e ronde:
vermenigvuldig II met 0,2 (=1/5):
…
0 1 | 2 ; trek nu -1*II van I af, dus I-1*II, ofwel I + II
1 0 | 1
0 1 | 2
En nu staat achter de verticale streep de oplossing van x (1e kolom) en y (2e kolom).
Overigens moeten matrices netjes tussen kromme haken staan, maar dit is typografisch erg onhandig.
Excel kent een aantal matrix-functies maar niet om de Gauss-Jordan-methode te kunnen toepassen.
Gelukkig biedt de nieuwe versie (2017) van de Excel-Handigheidjes van HJGSoft uitkomst.
Los Stelsel Op wizard
Zet eerst een werkblad op met de coëfficiënten:
Klik in de tab HJGSoft van het lint op de knop Kies een wizard en klik daar op de optie Los Stelsel Op.
U ziet het volgende scherm:
Het scherm bestaat uit twee tabbladen. Vul het eerste als volgt:
Klik nu op het tabblad Opmaak Berekening en maak de gewenste keuzes:
Klik op de knop OK en bekijk het resultaat:
LosStelselOp is onderdeel van de Excel-Handigheidjes van HJGSoft. Meer informatie vindt u op de pagina Excel. U kunt de tool downloaden op de Download-pagina en kunt deze daarna gratis 10 dagen uitproberen.