Famous 2x2 Games: Bi-matrices and Nash Equilibria
Loading the math board and drawing, please wait…
This example demonstrates famous two-player games in which each player has two strategies, represented as 2x2 bi-matrices and analyzed through Nash equilibria. Core concepts include game theory, payoff matrices, strategy profiles, best responses, and Nash equilibrium. In GeoGebra, the construction uses Textfield, inputBox, and TABLE objects to enter players and payoffs, while Segment, PolyLine, and Polygon create the matrix layout or highlighted regions, and If commands test equilibrium conditions. It is suitable for high-school enrichment, introductory university game theory, mathematical modeling, and interactive GeoGebra lessons.
GeoGebra Commands & Parameters
Segment(O, O30) → aSegment(O01, O31) → bSegment(O02, O32) → cSegment(O03, O33) → dSegment(O, O03) → eSegment(O10, O13) → fSegment(O20, O23) → gSegment(O30, O33) → hTextfield(Player1) → inputBox1Textfield(UpperPl) → Player2Textfield(text3) → inputBox3Textfield(text4) → inputBox4Textfield(text5) → LeftTextfield(text6) → RightTextfield(text7) → inputBox7Polygon(P, Q, 4) → poly1, i, j, k, l, R, SPolygon(O, O03, O33, O32, O12, O10) → poly2, o, o03, o33, o32, o12, o10Polygon(O11, O12, O22, O21) → Cell11, o11, o12_1, o22, o21Polygon(O21, O22, O32, O31) → Cell12, o21_1, o22_1, o32_1, o31Polygon(O10, O11, O21, O20) → Cell21, o10_1, o11_1, o21_2, o20Polygon(O20, O21, O31, O30) → Cell22, o20_1, o21_3, o31_1, o30Textfield(L11_1) → inputBox8Textfield(L12_1) → inputBox9Textfield(L21_1) → inputBox10Textfield(L22_1) → inputBox11Textfield(U11_1) → inputBox12Textfield(U12_1) → inputBox13Textfield(U21_1) → inputBox14Textfield(U22_1) → inputBox15If((L11_1 ≥ L21_1) ∧ (U11_1 ≥ U12_1), 1, 0) → NASH11If((L22_1 ≥ L12_1) ∧ (U22_1 ≥ U21_1), 1, 0) → NASH22If((L12_1 ≥ L22_1) ∧ (U12_1 ≥ U11_1), 1, 0) → NASH12If((L21_1 ≥ L11_1) ∧ (U21_1 ≥ U22_1), 1, 0) → NASH21Segment(Origin01, Origin11) → nSegment(Origin11, Origin10) → pSegment(E_1, F_1) → mSegment(H_1, I_1) → qSegment(J_1, K_1) → rPolygon(Origin, Origin01, Origin11, Origin10) → LeftWhole, origin, origin01, origin11, origin10Polygon(Origin, Origin01, Origin11, Origin10) → UpperWhole, origin_1, origin01_1, origin11_1, origin10_1Polygon(Origin, Origin01, Origin11, Origin10) → NashWhole, origin_2, origin01_2, origin11_2, origin10_2PolyLine(LeftList) → LeftReactionPolyLine(UpperList) → UpperReactionPolyLine(NashList) → Nash