Skip to content

10.4 — Introduction (গেম থিওরির পরিচিতি)

এই অধ্যায়ে কী শিখব: game theory (গেম থিওরি) আসলে কী — কেন এটাকে বলা হয় strategic interaction (কৌশলগত মিথস্ক্রিয়া)-এর একটা "আনুষ্ঠানিক ভাষা"। এখানে বেসিক থেকে গড়ে তুলব চারটে মূল ধারণা: (১) কৌশলগত সিদ্ধান্ত কেন একক (individual) সিদ্ধান্ত থেকে আলাদা, (২) game theory যে rational (যুক্তিবাদী) খেলোয়াড় ধরে নেয় সে কেমন, (৩) ordinal (ক্রমসূচক) বনাম cardinal (পরিমাণগত) payoff (প্রাপ্তি)-এর পার্থক্য, আর (৪) cooperative (সহযোগিতামূলক) বনাম non-cooperative (অসহযোগিতামূলক) game theory। শেষে দেখব Bonanno-র বইয়ের পুরো রোডম্যাপ (পাঁচটা পর্ব) আর Python-এ একটা সরল \(2\times 2\) খেলা সাজিয়ে best response (সেরা জবাব) বের করব।

উৎস (source): Game Theory — Giacomo Bonanno।


১. কেন শিখব? (Motivation)

আগের তিনটে অধ্যায়ে (Talwalkar-এর Joy of Game Theory) আমরা মজার গল্প দিয়ে স্বজ্ঞা (intuition) গড়েছি — gas station কেন পাশাপাশি বসে, Prisoner's Dilemma কী, খেলা কীভাবে বদলানো যায়। এবার আমরা একটা পাঠ্যবইয়ের কাঠামোয় ঢুকছি: Giacomo Bonanno-র Game Theory, যেটা ধীরে ধীরে গল্প থেকে গণিতের দিকে নিয়ে যাবে। এই অধ্যায়টা সেই যাত্রার মানচিত্র — বিষয়টা কী, কারা এটা বানিয়েছে, আর সামনে কী কী আসছে।

একটা "ভাষা" হিসেবে game theory। Bonanno-র সংজ্ঞাটা মনে রাখার মতো: game theory হলো এমন একটা আনুষ্ঠানিক ভাষা (formal language), যা দিয়ে সেইসব পরিস্থিতি লেখা ও বিশ্লেষণ করা যায় যেখানে কয়েকটা "সত্তা" — যাদের বলা হয় player (খেলোয়াড়) — এমন কাজ করে যা একে অপরকে প্রভাবিত করে। ঠিক যেমন calculus হলো গতির ভাষা, বা logic হলো যুক্তির ভাষা — তেমনি game theory হলো পরস্পর-নির্ভর সিদ্ধান্তের (interdependent decision-making) ভাষা।

কেন এটা এত গুরুত্বপূর্ণ — সংক্ষিপ্ত ইতিহাস। বিংশ শতকের শুরুতে গণিতবিদ Ernst Zermelo (১৯১৩) ও John von Neumann (১৯২৮) এর বীজ বোনেন। বড় অগ্রগতি আসে ১৯৪৪-এ, যখন John von Neumann আর Oskar Morgenstern প্রকাশ করেন যুগান্তকারী বই Theory of Games and Economic Behavior। এরপর John Nash (১৯৫০–৫১) ও Lloyd Shapley (১৯৫৩)-এর কাজ বিষয়টাকে আধুনিক রূপ দেয়। প্রথমে economics-এ (industrial organization, international trade, labor economics, macroeconomics), তারপর political science, philosophy, sociology, এমনকি biology ও computer science — সর্বত্র এর প্রভাব ছড়িয়ে পড়ে।

Nobel পুরস্কার ও বাস্তব প্রয়োগ। অর্থনীতিতে Nobel Memorial পুরস্কার game theory-র কাজে দেওয়া হয়েছে বহুবার: ১৯৯৪ (John Nash, John Harsanyi, Reinhard Selten), ২০০৫ (Robert Aumann, Thomas Schelling), ২০০৭ (Leonid Hurwicz, Eric Maskin, Roger Myerson), আর ২০১২ (Lloyd Shapley, Alvin Roth)। শুধু তত্ত্ব নয় — ১৯৯৪-এই US Federal Communications Commission (FCC) game theory কাজে লাগিয়ে radio spectrum-এর প্রায় ৭ বিলিয়ন ডলারের একটা auction (নিলাম) নকশা করে। মজার ব্যাপার, নিলামে অংশ নেওয়া বিডাররাও game theory ব্যবহার করছিল!

মূল স্বজ্ঞা

game theory-র এক-লাইনের সারমর্ম: কয়েকজন যুক্তিবাদী খেলোয়াড়ের কাজ যখন একে অপরের ফলাফল বদলে দেয়, তখন সেই পরিস্থিতিকে গাণিতিকভাবে লেখা ও বিশ্লেষণ করার ভাষা।

  • একক সিদ্ধান্তে তুমি শুধু প্রকৃতির (nature) বিরুদ্ধে; কৌশলগত সিদ্ধান্তে তুমি অন্য চিন্তাশীল খেলোয়াড়ের বিরুদ্ধে/সাথে।
  • এই বই ধরে নেয় খেলোয়াড়রা rational — নিজের লক্ষ্য যতটা সম্ভব কাছাকাছি আনতে হিসেব করে চলে।
  • খেলোয়াড়দের পছন্দ কখনো শুধু ranking (ক্রম) হিসেবে (ordinal), কখনো সংখ্যাগত মান হিসেবে (cardinal) লাগে — এই পার্থক্যই বইয়ের প্রথম দুই পর্বকে আলাদা করে।

২. মূল ধারণা (Core idea)

২.১ game theory কী?

Robert Aumann একবার বিষয়টাকে বর্ণনা করেছিলেন এভাবে — game theory হলো "Homo rationalis" অর্থাৎ যুক্তিবাদী মানুষের পারস্পরিক আচরণ (interactive behavior) নিয়ে চর্চা। মূল শব্দটা interactive — একের কাজ অন্যকে ছোঁয়।

একটা উদাহরণ ভাবো। তুমি একা বসে ঠিক করছ আজ কী রান্না করবে — এটা কোনো "game" নয়, কারণ ফলাফল শুধু তোমার সিদ্ধান্তের উপর নির্ভর করে। কিন্তু তুমি যদি দাবা খেলো, বা নিলামে দর হাঁকো, বা প্রতিযোগী দোকানের সাথে দাম ঠিক করো — তখন তোমার সবচেয়ে ভালো চাল নির্ভর করে অন্যরা কী করবে তার উপর, আর তাদের চাল নির্ভর করে তুমি কী করবে তার উপর। এই "তুমি করলে আমি, আমি করলে তুমি" জটটাই game theory-র বিষয়।

তাই game theory কোনো একটা নির্দিষ্ট "খেলা" নয় — এটা একটা ভাষা ও পদ্ধতি, যা যেকোনো strategic interaction-কে তিনটে উপাদানে ভেঙে ফেলে:

  1. players (খেলোয়াড়) — কারা জড়িত।
  2. strategies (কৌশল) — প্রত্যেকে কী কী করতে পারে।
  3. payoffs (প্রাপ্তি) — প্রতিটা সম্ভাব্য ফলাফল সম্পর্কে প্রত্যেকে কেমন অনুভব করে।

২.২ strategic interaction বনাম individual decision (একক সিদ্ধান্ত)

এই পার্থক্যটাই পুরো বিষয়ের ভিত্তি, তাই ধীরে বুঝি।

individual decision problem (একক সিদ্ধান্ত-সমস্যা)। এখানে একজন সিদ্ধান্তগ্রহীতা, আর ফলাফল নির্ভর করে তার নিজের পছন্দ + হয়তো কিছু এলোমেলো ঘটনা (nature/chance)-র উপর। যেমন — ছাতা নেব কি না, তা নির্ভর করে আমার পছন্দ ও আবহাওয়ার উপর; আবহাওয়া আমার সিদ্ধান্ত দেখে বদলায় না। এটা "একজন বনাম প্রকৃতি"।

strategic interaction (কৌশলগত মিথস্ক্রিয়া)। এখানে একাধিক সিদ্ধান্তগ্রহীতা, আর প্রত্যেকের ফলাফল নির্ভর করে সবার সিদ্ধান্তের উপর। এখানে "প্রকৃতি" নয়, তোমার প্রতিপক্ষও একজন চিন্তাশীল খেলোয়াড় — সে তোমাকে নিয়ে ভাবছে, তুমিও তাকে নিয়ে ভাবছ। এটা "একজন বনাম অন্য যুক্তিবাদীরা"।

মূল কথাটা গণিতে ধরা যায় খুব পরিষ্কারভাবে: individual সমস্যায় তোমার প্রাপ্তি লেখা যায় \(u(s)\) — শুধু তোমার কৌশল \(s\)-এর ফাংশন। কিন্তু strategic interaction-এ তোমার প্রাপ্তি \(u_i(s_i, s_{-i})\) — এখানে \(s_i\) তোমার কৌশল আর \(s_{-i}\) (মানে "\(i\) বাদে বাকি সবাই") অন্যদের কৌশল। ওই \(s_{-i}\)-টুকুই পুরো খেলাটাকে "কৌশলগত" করে তোলে — কারণ তোমার সেরা \(s_i\) নির্ভর করে \(s_{-i}\)-এর উপর।

এক লাইনে ফারাক

individual: প্রাপ্তি \(= u(s_i)\) — শুধু আমার চাল। কৌশলগত: প্রাপ্তি \(= u_i(s_i, s_{-i})\) — আমার চাল এবং অন্যদের চাল একসাথে।

২.৩ rational agent (যুক্তিবাদী এজেন্ট)

game theory-তে "player" মানে ঠিক কেমন সত্তা? প্রসঙ্গভেদে এটা বদলায় — evolutionary biology-তে players হলো চিন্তাহীন জীব (গাছপালা, পোকা, এমনকি টিউমার কোষ), computer science-এ তারা কৃত্রিম agent (software), behavioral game theory-তে সাধারণ মানুষ। কিন্তু প্রথাগত (traditional) game theory — আর এই বইও — ধরে নেয় players হলো intelligent, sophisticated ও rational ব্যক্তি।

rational (যুক্তিবাদী) মানে কী? Aumann-এর ভাষায়, "Homo rationalis" হলো এমন এক প্রজাতি যে —

  • সবসময় উদ্দেশ্যমূলকভাবে ও যুক্তিসঙ্গতভাবে (purposefully and logically) কাজ করে,
  • তার সুস্পষ্ট লক্ষ্য (well-defined goals) আছে,
  • সে শুধুই সেই লক্ষ্যের যতটা সম্ভব কাছে পৌঁছাতে চায়, আর
  • সেই হিসেব করার গণনার ক্ষমতা তার আছে।

এটা একটা আদর্শায়ন (idealization) — বাস্তব মানুষ পুরোপুরি এমন নয় (আগের অধ্যায়ে দেখেছি bounded rationality)। তবু এই ধারণাটা শক্তিশালী: যদি ধরে নিই সবাই যুক্তিবাদী, তবে গাণিতিকভাবে অনুমান করা যায় তারা কী করবে। বইয়ের বেশিরভাগ তত্ত্ব এই ধারণার উপর দাঁড়ানো।

২.৪ ordinal বনাম cardinal payoff

খেলোয়াড় প্রতিটা ফলাফল সম্পর্কে "কেমন অনুভব করে" — সেটা আমরা payoff দিয়ে প্রকাশ করি। কিন্তু কতটুকু তথ্য দরকার? এখানেই দুটো ভিন্ন স্তর।

ordinal payoff (ক্রমসূচক প্রাপ্তি)। শুধু ক্রম (ranking) — কোন ফলাফল কোনটার চেয়ে ভালো, এটুকুই। যেমন খেলোয়াড় বলতে পারে "জেতা > ড্র > হারা", কিন্তু "জেতা ড্র-এর চেয়ে ঠিক কত গুণ ভালো" — সেই সংখ্যাটা নেই। এখানে payoff-এর সংখ্যাগুলো (যেমন \(2, 1, 0\)) নিছক লেবেল — শুধু ক্রম ধরে রাখে। \(2, 1, 0\)-এর বদলে \(100, 5, 4\) লিখলেও একই খেলা, কারণ ক্রমটা একই।

cardinal payoff (পরিমাণগত প্রাপ্তি)। এখানে সংখ্যার মান ও পার্থক্যও অর্থবহ। এটা তখন লাগে যখন খেলোয়াড়কে অনিশ্চয়তা (uncertainty) বা lottery (লটারি)-র মধ্যে বাছতে হয়। যেমন — "নিশ্চিত ড্র" বনাম "৫০% জেতা, ৫০% হারা" — এই দুটোর মধ্যে বাছতে গেলে শুধু ক্রম যথেষ্ট নয়; জানতে হবে জেতা-হারার মান কতটা "দূরে"। এই সংখ্যাগত মানকে বলে utility (উপযোগ), আর তার তত্ত্বকে বলে expected utility (প্রত্যাশিত উপযোগ)

সহজ পরীক্ষা

নিজেকে জিজ্ঞেস করো: "আমার শুধু কি ফলাফলগুলো সাজানোই দরকার, নাকি lottery-র মধ্যে তুলনা করা দরকার?" প্রথমটা হলে ordinal যথেষ্ট (বইয়ের Part I); দ্বিতীয়টা হলে cardinal লাগবে (Part II)।

২.৫ cooperative বনাম non-cooperative game theory

game theory-র দুটো বড় শাখা:

  • cooperative game theory (সহযোগিতামূলক)। ধরে নেয় খেলোয়াড়রা নিজেদের মধ্যে কথা বলতে, coalition (জোট) গড়তে, আর বাধ্যতামূলক চুক্তি (binding agreement) সই করতে পারে। এটা যেমন voting behavior বা political science-এ ব্যবহৃত হয়।
  • non-cooperative game theory (অসহযোগিতামূলক)। ধরে নেয় খেলোয়াড়রা হয় কথা বলতে পারে না, নয়তো কথা বললেও বাধ্যতামূলক চুক্তি সই করতে পারে না। যেমন — একই শিল্পের দুই ফার্ম; antitrust আইনে দাম নিয়ে চুক্তি করা বেআইনি, তাই তারা চুক্তিতে বাঁধা পড়তে পারে না, প্রত্যেকে নিজে নিজে সিদ্ধান্ত নেয়।

"non-cooperative" মানে কিন্তু খেলোয়াড়রা "শত্রু" — এমন নয়; মানে হলো চুক্তি বাধ্যতামূলক নয়, তাই প্রত্যেকে শেষমেশ নিজের স্বার্থেই চলবে। এই বই পুরোপুরি non-cooperative game theory নিয়ে।

২.৬ বইয়ের রোডম্যাপ (পাঁচ পর্ব)

Bonanno-র বই পাঁচটা পর্বে (Part) বিভক্ত, দুটো ভলিউমে ছাপা। নিচের মানচিত্রটা পুরো কাঠামো এক নজরে দেখায়:

Map of game theory: cooperative vs non-cooperative, then ordinal (Part I), cardinal (Part II), and advanced (Parts III-V)

চিত্র ১: game theory-র মানচিত্র। প্রথম বিভাজন cooperative বনাম non-cooperative (এই বই ডান ডালে)। non-cooperative আবার ভাগ হয় — Part I ordinal payoff (অনিশ্চয়তা ছাড়া), Part II cardinal payoff (lottery-সহ), আর Parts III–V উন্নত বিষয়।

  • Volume 1 (মূল ধারণা): Chapters 1–7, অর্থাৎ Part I ও Part II।
  • Volume 2 (উন্নত বিষয়): Chapters 8–16, অর্থাৎ Part III থেকে Part V।

পর্বগুলো একটু বিস্তারিত:

  • Part I — ordinal payoff-এর খেলা। খেলোয়াড়ের পছন্দ শুধু ক্রম হিসেবে দেওয়া। Chapter 2 — strategic-form game (কৌশলগত-রূপ খেলা); Chapter 3 — perfect information-সহ dynamic game; Chapter 4 — (সম্ভবত) imperfect information-সহ সাধারণ dynamic game। আমাদের পরের অধ্যায় এই Part I-এর strategic form থেকেই শুরু।
  • Part II — cardinal payoff-এর খেলা। পছন্দ এবার lottery পর্যন্ত বিস্তৃত। Chapter 5 — expected utility; Chapter 6 — mixed strategy (মিশ্র কৌশল) ও mixed-strategy Nash equilibrium; Chapter 7 — dynamic game-এ mixed strategy।
  • Part III — knowledge, common knowledge ও belief। কে কী জানে, আর "সবাই জানে যে সবাই জানে..." (common knowledge) কীভাবে মডেল করা যায় (Chapters 8–10)।
  • Part IV — dynamic game ও equilibrium refinement। subgame-perfect equilibrium-কে আরও সূক্ষ্ম করা: weak sequential, sequential, perfect Bayesian equilibrium (Chapters 11–13)।
  • Part V — incomplete information-এর খেলা। যেখানে খেলোয়াড়রা একে অপরের সম্পর্কে সব জানে না (Harsanyi-র তত্ত্ব; Chapters 14–16)।

প্রতিটা অধ্যায়ের প্রতি সেকশনের শেষে exercise, সব exercise একসাথে অধ্যায়ের শেষ-থেকে-আগের সেকশনে, তারপর বিস্তারিত সমাধান — আর প্রতিটা অধ্যায় শেষ হয় একটা "challenging question" দিয়ে। (আমরাও সেই ঢঙেই এগোব।)

৩. মূল সংজ্ঞা ও যুক্তি

এবার ধারণাগুলোকে পরিষ্কার সংজ্ঞায় সাজাই।

player (খেলোয়াড়)। সিদ্ধান্ত নেওয়া একটা সত্তা। খেলোয়াড়দের সংগ্রহ:

\[N = \{1, 2, \dots, n\}\]

strategy (কৌশল)। খেলোয়াড় \(i\)-এর সম্ভাব্য চালগুলোর সেট \(S_i\)। সব খেলোয়াড়ের কৌশল একসাথে নিলে হয় একটা strategy profile (কৌশল-সমাহার), আর সব সম্ভাব্য profile-এর সেট:

\[S = S_1 \times S_2 \times \dots \times S_n\]

একটা profile লেখা হয় \(s = (s_1, \dots, s_n)\), আর \(i\) বাদে বাকিদের অংশ \(s_{-i}\)

payoff / preference (প্রাপ্তি / পছন্দ)। প্রতিটা profile সম্পর্কে খেলোয়াড় \(i\) কেমন অনুভব করে। দুই স্তরে —

  • ordinal: একটা পছন্দ-ক্রম (preference relation) \(\succeq_i\) যা \(S\)-এর ফলাফলগুলোকে সাজায় ("\(s\) অন্তত \(s'\)-এর সমান ভালো")।
  • cardinal: একটা utility function \(u_i : S \to \mathbb{R}\), যেখানে সংখ্যার মান ও পার্থক্যও অর্থবহ।

তাই একটা (ordinal) strategic-form game সংক্ষেপে একটা tuple:

\[G = \big\langle N,\; (S_i)_{i \in N},\; (\succeq_i)_{i \in N} \big\rangle\]

cardinal সংস্করণে \(\succeq_i\)-এর জায়গায় \(u_i\) বসে।

strategic interdependence (কৌশলগত পরস্পর-নির্ভরতা)। এই বিষয়ের সংজ্ঞায়ক শর্ত: খেলোয়াড় \(i\)-এর প্রাপ্তি শুধু \(s_i\)-এর নয়, পুরো profile-এর ফাংশন —

\[u_i = u_i(s_i, s_{-i})\]

অর্থাৎ \(s_{-i}\) (অন্যদের চাল) বদলালে \(i\)-এর প্রাপ্তিও বদলাতে পারে।

best response (সেরা জবাব)। অন্যদের কৌশল \(s_{-i}\) স্থির ধরলে, খেলোয়াড় \(i\)-এর যে কৌশল তার প্রাপ্তি সর্বোচ্চ করে:

\[s_i^\ast \in \arg\max_{s_i \in S_i} \; u_i(s_i, s_{-i})\]

লক্ষ করো — best response একটা শর্তসাপেক্ষ ধারণা: "অন্যরা \(s_{-i}\) খেললে, আমার সেরা চাল কী?" এই সরল ধারণাটাই পরে Nash equilibrium-এর ভিত্তি হবে (যেখানে সবাই একসাথে পরস্পরের best response খেলে)।

rational player (যুক্তিবাদী খেলোয়াড়)। যে খেলোয়াড় নিজের বিশ্বাস অনুযায়ী best response খেলে — অর্থাৎ নিজের প্রাপ্তি সর্বোচ্চ করার চেষ্টা করে।

cooperative / non-cooperative। binding agreement সম্ভব হলে cooperative; না হলে non-cooperative (এই বই)।

৪. উদাহরণ ও Analogy

৪.১ একটা payoff matrix পড়া — দেখা করার খেলা

দুই বন্ধু, Player 1 ও Player 2, দেখা করতে চায় কিন্তু আগে থেকে কথা বলার সুযোগ নেই। প্রত্যেকের দুটো কৌশল — একটা জায়গা বাছা (ধরো "Top" মানে Cafe, "Bottom" মানে Library; Player 2-এর জন্য "Left" = Cafe, "Right" = Library)। দুজন একই জায়গায় গেলে দেখা হয় (ভালো), আলাদা জায়গায় গেলে দেখা হয় না (খারাপ)। তবে Player 1 একটু বেশি চায় Cafe-তে, Player 2 একটু বেশি চায় Library-তে।

এটা একটা \(2 \times 2\) strategic-form game, যাকে payoff matrix (প্রাপ্তি-ছক) দিয়ে দেখানো হয়:

A 2x2 payoff matrix schematic with row player and column player, each cell showing a pair of payoffs

চিত্র ২: payoff matrix পড়ার নিয়ম। সারি = Player 1-এর কৌশল, কলাম = Player 2-এর কৌশল। প্রতিটা ঘরে জোড়া (Player 1-এর প্রাপ্তি, Player 2-এর প্রাপ্তি) — নীল সংখ্যা Player 1-এর, লাল সংখ্যা Player 2-এর।

সংখ্যায় ছকটা (প্রতিটা ঘরে জোড়া "Player 1, Player 2"):

Player 1 \ Player 2 Left (Cafe) Right (Library)
Top (Cafe) \((2,\ 1)\) \((0,\ 0)\)
Bottom (Library) \((0,\ 0)\) \((1,\ 2)\)

পড়ার নিয়ম। যদি Player 1 "Top" আর Player 2 "Left" খেলে (দুজনেই Cafe), তবে ফলাফল \((2, 1)\) — Player 1 পায় \(2\), Player 2 পায় \(1\)। দুজনেই খুশি (দেখা হলো), তবে Player 1 একটু বেশি (এটা তার পছন্দের জায়গা)।

best response খুঁজি। এটাই দেখায় কেন সিদ্ধান্তটা "কৌশলগত":

  • Player 2 যদি Left খেলে: Player 1-এর Top \(= 2\) বনাম Bottom \(= 0\)Top ভালো।
  • Player 2 যদি Right খেলে: Player 1-এর Top \(= 0\) বনাম Bottom \(= 1\)Bottom ভালো।

মানে Player 1-এর সেরা চাল স্থির নয় — সেটা পুরোপুরি নির্ভর করে Player 2 কী করবে তার উপর। ঠিক এই পরস্পর-নির্ভরতাই strategic interaction-এর হৃদয়।

৪.২ ordinal নাকি cardinal — এই খেলায় কোনটা লাগে?

উপরের খেলায় কোনো lottery নেই — প্রতিটা কৌশল-জোড়া একটা নিশ্চিত ফলাফল দেয়। তাই এখানে শুধু ক্রম দরকার: Player 1-এর কাছে \((\text{meet at Cafe}) \succ (\text{meet at Library}) \succ (\text{no meeting})\), যা \(2, 1, 0\) দিয়ে লেখা। এই \(2, 1, 0\)-এর বদলে \(9, 4, 1\) লিখলেও সব best response একই থাকত — কারণ ক্রম বদলায়নি। অর্থাৎ এটা একটা ordinal game (Part I-এর জগৎ)।

কখন cardinal লাগত? ধরো Player 2 প্রস্তাব দিল — "নিশ্চিত Library-দেখা" নেবে, নাকি একটা lottery: "৫০% Cafe-দেখা, ৫০% দেখা-না-হওয়া"? এই তুলনা করতে শুধু ক্রম যথেষ্ট নয় — জানতে হবে ফলাফলগুলোর সংখ্যাগত utility কত, তারপর expected utility হিসেব করতে হবে। তখনই আমরা Part II (cardinal)-এ ঢুকি।

৪.৩ Analogy — game theory একটা "ব্যাকরণ"

ভাষার ব্যাকরণ যেমন যেকোনো বাক্যকে কর্তা-কর্ম-ক্রিয়ায় ভেঙে দেয়, game theory তেমনি যেকোনো কৌশলগত পরিস্থিতিকে players + strategies + payoffs-এ ভেঙে দেয়। একবার এই "ব্যাকরণ" জানা থাকলে — সে দাবা হোক, নিলাম হোক, দুই দেশের বাণিজ্য-দর-কষাকষি হোক, বা দুই প্রাণীর টিকে থাকার লড়াই — সব একই ভাষায় লেখা ও বিশ্লেষণ করা যায়। এই সর্বজনীনতাই game theory-কে এত শক্তিশালী করে।

৫. Python-এ করো

চিত্র ২-এর খেলাটাই কোডে সাজাই — দুটো payoff matrix U1, U2 দিয়ে, তারপর প্রতিটা খেলোয়াড়ের best response বের করি, আর দেখি কোন profile-গুলোতে দুজনেই একসাথে best response খেলছে (এটাই Nash equilibrium-এর পূর্বাভাস — পরের অধ্যায়ে সংজ্ঞা)।

import numpy as np

# একটা সরল ২×২ strategic-form game (কৌশলগত-রূপ খেলা)
# Player 1 = সারি (row), Player 2 = কলাম (column)।
strat1 = ["Top", "Bottom"]     # Player 1-এর কৌশল
strat2 = ["Left", "Right"]     # Player 2-এর কৌশল

# U1[i, j] = কৌশল-জোড়া (i, j)-তে Player 1-এর payoff (ordinal — শুধু ক্রম অর্থবহ)
# U2[i, j] = একই জোড়ায় Player 2-এর payoff
U1 = np.array([[2, 0],
               [0, 1]])        # (Top,Left)=2, (Top,Right)=0, (Bottom,Left)=0, (Bottom,Right)=1
U2 = np.array([[1, 0],
               [0, 2]])        # (Top,Left)=1, (Top,Right)=0, (Bottom,Left)=0, (Bottom,Right)=2

# ---- best response (সেরা জবাব) ----
def br_player1(j):
    # Player 2-এর কলাম j স্থির; কোন সারি i-তে U1 সর্বোচ্চ?
    col = U1[:, j]
    return [i for i in range(len(col)) if col[i] == col.max()]

def br_player2(i):
    # Player 1-এর সারি i স্থির; কোন কলাম j-তে U2 সর্বোচ্চ?
    row = U2[i, :]
    return [j for j in range(len(row)) if row[j] == row.max()]

print("== Player 1-এর best response ==")
for j in range(2):
    br = [strat1[i] for i in br_player1(j)]
    print(f"  Player 2 = {strat2[j]:6s} হলে →  {br}")

print("== Player 2-এর best response ==")
for i in range(2):
    br = [strat2[j] for j in br_player2(i)]
    print(f"  Player 1 = {strat1[i]:6s} হলে →  {br}")

# ---- পরস্পরের best response (mutual best response) ----
# যেখানে দুজনেই একসাথে best response খেলছে — Nash equilibrium-এর পূর্বাভাস।
print("== পরস্পরের সেরা জবাব (mutual best response) ==")
for i in range(2):
    for j in range(2):
        if i in br_player1(j) and j in br_player2(i):
            print(f"  ({strat1[i]}, {strat2[j]}) → payoff ({U1[i, j]}, {U2[i, j]})")

চালালে পাবে:

== Player 1-এর best response ==
  Player 2 = Left   হলে →  ['Top']
  Player 2 = Right  হলে →  ['Bottom']
== Player 2-এর best response ==
  Player 1 = Top    হলে →  ['Left']
  Player 1 = Bottom হলে →  ['Right']
== পরস্পরের সেরা জবাব (mutual best response) ==
  (Top, Left) → payoff (2, 1)
  (Bottom, Right) → payoff (1, 2)

দুটো জিনিস লক্ষ করো। প্রথমত, প্রতিটা খেলোয়াড়ের best response অন্যের চালের উপর নির্ভরশীল — কোনো স্থির "সেরা চাল" নেই। দ্বিতীয়ত, দুটো profile-এ দুজনেই একসাথে best response খেলছে — \((\text{Top}, \text{Left})\)\((\text{Bottom}, \text{Right})\)। এই "পরস্পরের সেরা জবাব" অবস্থাই Nash equilibrium (পরের অধ্যায়গুলোতে বিস্তারিত), আর দুটো থাকা মানে দেখা-করার খেলায় সমন্বয়ের (coordination) একাধিক উপায় আছে।

৬. সাধারণ ভুল

  1. সব সিদ্ধান্তকেই "game" ভাবা। একা বসে কী খাব ঠিক করা কোনো game নয় (individual decision) — game হতে হলে কমপক্ষে দুজন খেলোয়াড় লাগে যাদের সিদ্ধান্ত পরস্পরকে প্রভাবিত করে। "প্রকৃতি/দৈব" খেলোয়াড় নয়, কারণ সে তোমার চাল দেখে জবাব দেয় না।
  2. ordinal payoff-এর সংখ্যাকে "আসল পরিমাণ" ভাবা। ordinal game-এ \(2, 1, 0\) নিছক ক্রম-লেবেল; এদের \(9, 4, 1\) দিয়ে বদলালেও একই খেলা। শুধু ranking অর্থবহ, ব্যবধান নয়।
  3. lottery ছাড়াই cardinal দরকার ভাবা। যতক্ষণ অনিশ্চয়তা/lottery নেই, ordinal-ই যথেষ্ট। cardinal (utility) কেবল তখন লাগে যখন lottery-র মধ্যে তুলনা করতে হয় (expected utility)।
  4. "non-cooperative" মানে "শত্রুতা" ভাবা। এর মানে শুধু binding চুক্তি সই করা যায় না — খেলোয়াড়দের স্বার্থ মিলেও যেতে পারে (যেমন দেখা-করার coordination খেলা)।
  5. best response-কে "সবসময়ের সেরা চাল" ভাবা। best response সবসময় শর্তসাপেক্ষ — "অন্যরা \(s_{-i}\) খেললে আমার সেরা চাল"। অন্যদের চাল বদলালে সেরা চালও বদলাতে পারে।
  6. rationality-কে বাস্তবের হুবহু ছবি ভাবা। "rational player" একটা আদর্শায়ন; বাস্তব মানুষ bounded rational। এটা মডেল, বাস্তবতার নিখুঁত প্রতিলিপি নয়।

৭. এক্সারসাইজ

সহজ থেকে কঠিন — ৬টা। আগে নিজে চেষ্টা করো, তারপর নিচের সমাধান মেলাও।

  1. (game-এর উপাদান) দুই প্রতিবেশী দোকান একই পণ্যের দাম "High" বা "Low" রাখবে ঠিক করছে; একজনের বিক্রি অন্যের দামের উপরও নির্ভর করে। এই পরিস্থিতির players, strategies আর কীসের উপর payoff নির্ভর করে — এক-দুই লাইনে বলো।

  2. (strategic বনাম individual) কোনটা strategic interaction, কোনটা individual decision — বলো ও কারণ দাও: (ক) একা ঠিক করছ কাল ছাতা নেবে কি না; (খ) সকালে অফিস যাওয়ার রাস্তা বাছছ, যেখানে যানজট নির্ভর করে আরও হাজারো মানুষ কোন রাস্তা বাছে তার উপর।

  3. (ordinal বনাম cardinal) এক খেলোয়াড় বলল "জেতা > ড্র > হারা" — এটুকু কি ordinal না cardinal তথ্য? কখন এর চেয়ে বেশি (cardinal) দরকার হবে — একটা উদাহরণ দাও।

  4. (best response) চিত্র ২-এর খেলায় ছক থেকে বের করো: Player 1-এর best response — Player 2 = Left হলে? Right হলে? আর Player 2-এর best response — Player 1 = Top হলে? Bottom হলে?

  5. (cooperative বনাম non-cooperative) কোনটা কোন শাখা — বলো ও কারণ দাও: (ক) কয়েকটা দল আইনত বাধ্যতামূলক জোট-চুক্তি করে ভোট ভাগ করছে; (খ) দুই ফার্ম দাম বাড়াতে চায় কিন্তু antitrust আইনে চুক্তি বেআইনি, তাই কেউ কাউকে বিশ্বাস করে বাঁধতে পারে না।

  6. (challenging — mutual best response) চিত্র ২-এর খেলায় সব profile পরীক্ষা করে দেখাও কোন কোন profile-এ দুজনেই একসাথে best response খেলছে। কতটা পেলে? এর অর্থ দেখা-করার সমন্বয়ের ভাষায় ব্যাখ্যা করো।


৮. সমাধান (ব্যাখ্যাসহ)

১-নং সমাধান দেখাও
  • players: দুই দোকান (ধরো দোকান A ও দোকান B)।
  • strategies: প্রত্যেকের জন্য \(\{\text{High}, \text{Low}\}\)
  • payoff: প্রত্যেকের লাভ উভয়ের দামের উপর নির্ভর করে — যেমন A সস্তা দিলে বেশি খদ্দের পায়, কিন্তু সেটা নির্ভর করে B কী দাম দিল তার উপর। অর্থাৎ \(u_A = u_A(s_A, s_B)\) — অন্যের চাল \(s_B\) ঢুকে আছে, তাই এটা strategic interaction।
২-নং সমাধান দেখাও
  • (ক) individual decision — ফলাফল শুধু তোমার সিদ্ধান্ত + আবহাওয়ার (প্রকৃতি) উপর। আবহাওয়া তোমার সিদ্ধান্ত দেখে বদলায় না, তাই কোনো "প্রতিপক্ষ খেলোয়াড়" নেই।
  • (খ) strategic interaction — তোমার রাস্তার যানজট নির্ভর করে অন্য চালকরা কোন রাস্তা বাছে তার উপর, আর তারাও একইভাবে ভাবছে। প্রত্যেকের payoff সবার সিদ্ধান্তের ফাংশন — \(u_i(s_i, s_{-i})\)
৩-নং সমাধান দেখাও

"জেতা > ড্র > হারা" শুধু একটা ক্রম — তাই এটা ordinal তথ্য (কোনটা কোনটার চেয়ে ভালো, এটুকুই; "কত গুণ ভালো" নেই)।

cardinal তখন দরকার যখন lottery-র মধ্যে বাছতে হবে — যেমন "নিশ্চিত ড্র" বনাম "৫০% জেতা, ৫০% হারা"। এই তুলনা করতে জেতা/ড্র/হারার সংখ্যাগত utility লাগে, তারপর expected utility মিলিয়ে সিদ্ধান্ত — শুধু ক্রম এখানে যথেষ্ট নয়।

৪-নং সমাধান দেখাও

ছক থেকে (প্রতিটা ঘরে প্রথম সংখ্যা Player 1-এর, দ্বিতীয় Player 2-এর):

  • Player 2 = Left → Player 1: Top \(=2\) বনাম Bottom \(=0\)Top
  • Player 2 = Right → Player 1: Top \(=0\) বনাম Bottom \(=1\)Bottom
  • Player 1 = Top → Player 2: Left \(=1\) বনাম Right \(=0\)Left
  • Player 1 = Bottom → Player 2: Left \(=0\) বনাম Right \(=2\)Right

লক্ষ করো — কারও সেরা চাল স্থির নয়, প্রতিটাই অন্যের চালের উপর নির্ভরশীল।

৫-নং সমাধান দেখাও
  • (ক) cooperative — খেলোয়াড়রা বাধ্যতামূলক চুক্তি (binding agreement) সই করে জোট গড়ছে; চুক্তি বলবৎযোগ্য, তাই সহযোগিতা টেকে।
  • (খ) non-cooperative — চুক্তি বেআইনি ও বলবৎ-অযোগ্য, তাই কেউ কাউকে বাঁধতে পারে না; প্রত্যেকে শেষমেশ নিজের স্বার্থে সিদ্ধান্ত নেয়। এই বই এই শাখা নিয়েই।
৬-নং সমাধান দেখাও (challenging)

চারটে profile পরীক্ষা করি — একটা profile তখনই "mutual best response" যখন দুজনেরই চাল অন্যের বিপরীতে best response:

  • \((\text{Top}, \text{Left})\): Player 1-এর Left-এর জবাব Top ✓, Player 2-এর Top-এর জবাব Left ✓ → দুজনেই best response। payoff \((2, 1)\)
  • \((\text{Top}, \text{Right})\): Player 2-এর Top-এর জবাব Left, কিন্তু এখানে Right — ✗।
  • \((\text{Bottom}, \text{Left})\): Player 1-এর Left-এর জবাব Top, কিন্তু এখানে Bottom — ✗।
  • \((\text{Bottom}, \text{Right})\): Player 1-এর Right-এর জবাব Bottom ✓, Player 2-এর Bottom-এর জবাব Right ✓ → দুজনেই best response। payoff \((1, 2)\)

অর্থাৎ দুটো mutual-best-response profile: \((\text{Top}, \text{Left})\)\((\text{Bottom}, \text{Right})\)। অর্থ — দেখা-করার খেলায় সমন্বয়ের দুটো স্থিতিশীল উপায় আছে: হয় দুজনেই Cafe (Player 1 একটু বেশি খুশি), নয় দুজনেই Library (Player 2 একটু বেশি খুশি)। কোনটা ঘটবে তা ঠিক করতে দরকার এমন কিছু যা payoff-এ নেই — যেমন একটা focal point (আগের অধ্যায়ের ধারণা)। এই "একাধিক equilibrium" আর তাদের বাছাই-ই সামনের অধ্যায়গুলোর বড় প্রশ্ন।

৯. সারসংক্ষেপ ও Checklist

এক-নজরে:

  • game theory = strategic interaction-এর আনুষ্ঠানিক ভাষা — যেখানে কয়েকজন rational খেলোয়াড়ের কাজ একে অপরের ফলাফল বদলে দেয়।
  • strategic বনাম individual: individual-এ প্রাপ্তি \(u(s_i)\) (একজন বনাম প্রকৃতি); strategic-এ প্রাপ্তি \(u_i(s_i, s_{-i})\) — অন্যদের চাল \(s_{-i}\) ঢুকে থাকে। এই নির্ভরতাই বিষয়ের হৃদয়।
  • rational agent (Homo rationalis): সুস্পষ্ট লক্ষ্য, শুধু সেই লক্ষ্যের দিকে যায়, আর হিসেব করার ক্ষমতা আছে — একটা আদর্শায়ন।
  • ordinal বনাম cardinal: ordinal = শুধু ক্রম (lottery ছাড়া যথেষ্ট, Part I); cardinal = utility-র মান/ব্যবধান (lottery-তে তুলনা করতে লাগে, Part II)।
  • cooperative বনাম non-cooperative: binding চুক্তি সম্ভব হলে cooperative; না হলে non-cooperative — এই বই non-cooperative
  • best response: অন্যের চাল স্থির ধরে নিজের সেরা জবাব \(s_i^\ast \in \arg\max_{s_i} u_i(s_i, s_{-i})\); শর্তসাপেক্ষ, স্থির নয়। "সবাই একসাথে পরস্পরের best response" = Nash equilibrium-এর পূর্বাভাস।
  • রোডম্যাপ: Part I (ordinal) → Part II (cardinal) → Parts III–V (knowledge, refinement, incomplete info)। পরের অধ্যায় শুরু হয় Part I-এর strategic form দিয়ে।

Checklist — নিজেকে যাচাই করো:

  • [ ] game theory-কে "strategic interaction-এর ভাষা" হিসেবে বর্ণনা করতে পারি।
  • [ ] একটা পরিস্থিতি strategic interaction না individual decision — আলাদা করতে পারি (\(u_i(s_i, s_{-i})\) বনাম \(u(s_i)\))।
  • [ ] "rational player" মানে কী, আর এটা কেন আদর্শায়ন — বলতে পারি।
  • [ ] ordinal ও cardinal payoff-এর পার্থক্য বুঝি, আর কখন কোনটা লাগে বলতে পারি।
  • [ ] cooperative ও non-cooperative game theory আলাদা করতে পারি ও এই বই কোনটা তা জানি।
  • [ ] একটা \(2\times 2\) payoff matrix পড়তে পারি এবং প্রতিটা খেলোয়াড়ের best response বের করতে পারি।
  • [ ] Bonanno-র বইয়ের পাঁচ পর্বের রোডম্যাপ মোটামুটি বলতে পারি।
  • [ ] Python-এ একটা সরল খেলা সাজিয়ে best response ও mutual best response বের করতে পারি।

➡️ পরের অধ্যায়: 10.5 — Ordinal Games in Strategic Form — strategic-form game-এর আনুষ্ঠানিক সংজ্ঞা, ordinal payoff, আর dominant/dominated strategy দিয়ে খেলা সমাধানের প্রথম পদ্ধতি।