Lilavati

শ্যানন এনট্রপি

অনুব্রত ভট্টাচার্যঅনুব্রত ভট্টাচার্য · 20 August 2026

আজ থেকে প্রায় ৭৮ বছর আগে ক্লড শ্যানন (Claude Shannon) আমরা এখন যেটিকে Information Theory বলি তার একদম গোড়ার দিকের একটা বিষয় নিয়ে চিন্তা করছিলেন। এই ব্যাপারটা বোঝার জন্য আমাদের একটু প্রেক্ষাপট প্রয়োজন।

আজ থেকে প্রায় আটাত্তর বছর আগে ক্লড শ্যানন (Claude Shannon) আমরা এখন যেটিকে Information Theory বলি তার একদম গোড়ার দিকের একটা বিষয় নিয়ে চিন্তা করছিলেন। এই ব্যাপারটা বোঝার জন্য আমাদের একটু প্রেক্ষাপট প্রয়োজন।

ধরা যাক তোমাকে (মানে পাঠককে) আমাদের দেশের উত্তর পূর্বে মেঘালয় রাজ্যের চেরাপুঞ্জিতে পাঠানো হয়েছে। তোমার কাজ হল চেরাপুঞ্জি থেকে আগামী বারো দিনের আবহাওয়া সম্পর্কে কলকাতায় জানান দেওয়া, একটা বিশেষ বার্তা বা কোডেড message-এর মাধ্যমে। বারো দিন পরে তোমাকে চেরাপুঞ্জি থেকে ভারতীয় ডাকের মাধ্যমে খামের মধ্যে একটা বিশেষ কাগজ পাঠাতে হবে কলকাতায়। সেই কাগজে প্রিন্টেড থাকবে শুধু একটা বারো অঙ্কের সংখ্যামালা, যেটা তৈরি কেবল 00 আর 11 দিয়ে। এই সংখ্যামালা বা স্ট্রিং তৈরির নিয়মটা এরকম যে - প্রথম থেকে যততম দিনে বৃষ্টি হবে string-এর বাঁদিক থেকে ঠিক তত তম স্থানে 00 থাকবে আর না হলে 11 থাকবে। উদাহরণস্বরূপ, 001000010001001000010001, এই স্ট্রিং টার মানে হল যে চেরাপুঞ্জিতে তৃতীয়, অষ্টম এবং দ্বাদশ দিন বাদে সবদিন বৃষ্টি হয়েছে, এই তিনটে দিন রোদ ঝলমলে ছিল। কিন্তু এখানে তুমি একটা ছোট সমস্যায় পড়েছ। এই যে বিশেষ কাগজে তোমাকে এই প্রিন্টেড সংখ্যামালাটা পাঠাতে হবে সেটা একটা বিশেষ machine readable (মানে এই যন্ত্রটা শুধুমাত্র এই কাগজে লেখা থাকলেই information টা process করতে পারবে) হওয়া প্রয়োজন। আর এই কাগজে প্রিন্ট করার জন্য যে ধরনের প্রিন্টার প্রয়োজন তা চেরাপুঞ্জিতে নেই। অগত্যা তোমাকে কলকাতা থেকেই যা প্রয়োজন হতে পারে সেরকম সবকটা প্রিন্টেড বারো ডিজিট string মেঘালয়ে নিয়ে যেতে হবে। তোমার পাঠানো তথ্য ভবিষ্যতের আবহাওয়া পূর্বাভাসের জন্য কোনও এক আন্তর্জাতিক database এ অন্তর্ভুক্ত করা হবে। এই কারণে ওই বিশেষ যন্ত্রের সাহায্য নেওয়া হবে সমস্ত তথ্য সংরক্ষন-এর কাজে।

পাঠকের বা তোমার কাছে এতক্ষণে হয়তো সমস্যাটা স্পষ্ট হয়ে গেছে। চেরাপুঞ্জিতে কী আবহাওয়া হবে সেটা তো আগে থেকে নিশ্চিতভাবে জানা নেই! আর সেই কারবারেই এই তথ্য সংগ্রহের প্রসঙ্গ উত্থাপন। কিন্তু আগে থেকে কি করে সেইসব সংখ্যামালা ছাপিয়ে নিয়ে যাওয়া সম্ভব যাতে সেগুলোর মধ্যে থেকেই চেরাপুঞ্জির বারো দিনের আবহাওয়া মিলবে? আগে দেখা যাক যে এরকম কতগুলো সংখ্যামালা হতে পারে তা আদৌ গোনা যায় কিনা। এককথায় উত্তর হল, যায়। সবমিলিয়ে 0,10, 1 দিয়ে বারো অঙ্কের 2122^{12} (মানে 2×2×...×2,122 \times 2 \times ...\times 2, 12 বার গুণ) string তৈরি করা যায়। কারণ 1212 টা জায়গায় 00 বা 11 এর যে কোন একটা বসানো যায়, অর্থাৎ প্রত্যেক স্থানে দুটো choice আছে, সেজন্য 1212 টা জায়গায় 22 কে বারো বার গুণ করে 2122^{12} পাওয়া যাবে। কিন্তু 2122^{12} বিশাল একটা সংখ্যা, এবং এই পরিমান কাগজ ছাপানোর জন্য প্রচুর সময় এবং খরচা আছে, যে দুটোর কোনটাই ধরা যাক এই মুহূর্তে হাতে নেই। কিন্তু ভেবে দেখ এইভাবে চিন্তা করাটাও কিন্তু একটু অবাস্তবিক। আমরা এভাবে দৈনন্দিন জীবনে কোন সিদ্ধান্তই নিই না। আমরা ছোট বড় সমস্ত সিদ্ধান্তই নিই কোন ঘটনার সম্ভাবনার উপর ভিত্তি করে। হঠাৎ করে কেউ সাধারণত যে সময়ে অফিসে বের হয় তার 88 ঘণ্টা আগে বের হয় না, এই ভেবে যে, ''যদি রাস্তায় অসামান্য পরিমাণ ট্র্যাফিক জ্যাম হয় তাহলে তো এই সময়টা হাতে রাখা উচিত!'' বা, ''আগে যদি কোন ট্রেন দুর্ঘটনা ঘটে তাহলে লাইনের সব ট্রেনই অনেক দেরিতে চলবে তাই ঘণ্টা ছয় আগে বেরিয়ে যাই'', এই স্বগতোক্তি করে! কিন্তু দুটোই তো হয় এবং যে কোন দিন হতেও পারে। ট্রেন বা বাস দুর্ঘটনার কথা ভেবে আমরা যে ট্রেনে বাসে চড়ি না তাও না। তাহলে আমরা সিদ্ধান্তটা নিই কিসের উপর ভিত্তি করে? নিই সম্ভাবনার উপর ভিত্তি করে। দুর্ঘটনার সম্ভাবনা এতটাই কম যে এইটুকু ঝুঁকি নেওয়াই যায়। নাহলে জীবন স্তব্ধ হয়ে যাবে এবং সকালে ঘুম থেকে ওঠার কোন কারণই থাকবে না। আবহাওয়ার খবর কলকাতায় জানাতেও তুমি একই রকম ভাবে ভাবতে পার, তাই না? চেরাপুঞ্জিতে অত্যন্ত বেশি পরিমাণ বৃষ্টিপাত হয়। আগের বছরগুলোর আবহাওয়া দপ্তরের রিপোর্ট ঘেঁটে তুমি দেখলে যে সময়টা চেরাপুঞ্জি যাচ্ছ তার আশেপাশে দু-তিন মাস নিয়ম করে প্রতি বছর গড়ে দশ দিনের মধ্যে নয় দিন বৃষ্টি হয়। মানে বৃষ্টির সম্ভাবনা 9/109/10 এবং রোদ ঝলমলে থাকার সম্ভাবনা 1/101/10। তাহলে আশা করা যায় যে তোমার কাটানো বারো দিনের মধ্যে 12/101.212/10 \sim 1.2 দিন বৃষ্টি হবে। অর্থাৎ আনুমানিক 11 দিন ( \sim চিহ্নটার মানে আনুমানিক বা কাছাকাছি মানকে বোঝানো। aba \sim b, এর মানে aa আর bb যথেষ্ট কাছাকাছি, এতটাই কাছাকাছি যে a=ba=b এর মত ভাবা যেতে পারে)। তাহলে 1212 অঙ্কের যে string টা কাজে লাগার সম্ভাবনা সবচেয়ে বেশি সেটায় আনুমানিক একটা 11 আছে এবং বাকি সব 00। যেমন ধরো, 111111111111111111111111 - এই string টা কাজে লাগার কোন সম্ভাবনাই প্রায় নেই। ফলতঃ সীমিত কাগজ, কালি এবং সময়ের কারণে এই string টা সাথে না নিয়ে শুধু এরকম 1212 digit string গুলো নিয়ে যাওয়াই ভাল যেখানে শুধু একটা জায়গায় 11 আছে আর বাকি সব জায়গায় 00। এবার একটা অঙ্ক কষা যাক - আমি একটা general পরিস্থিতি কল্পনা করছি। ধরা যাক তোমাকে nn দিনের আবহাওয়ার খবর দিতে বলা হল ( nn একটা variable বা চলরাশি, আমাদের উদাহরণে n=12n=12 ছিল)। এখানে খেয়াল রেখো যে আমাকে এখন একটা nn-digit string কলকাতায় পাঠাতে হবে। যেহেতু রোদঝলমল থাকার সম্ভাবনা 1/101/10 আর রোদঝলমল থাকলে সেদিনের জায়গায় 11 বসবে, তাই আশা করা যে একটা সম্ভাব্য nn-digit string-এ n/10n/10 টা 11 থাকবে।

তাহলে প্রথম প্রশ্ন হল যে এরকম কটা nn digit string আছে। আমি যদি একটা nn-digit string কে এইভাবে ভাবি, যে বাঁদিক থেকে ডানদিকে 11 থেকে nn নম্বর লেখা পরপর বাক্স রাখা আছে, তাহলে প্রশ্নটা দাঁড়ায় যে আমি কোন কোন নম্বর বাক্সে 11 বসাচ্ছি আর কতভাবে (কারণ - বাকিগুলোতে এমনিই 00 বসবে), অর্থাৎ আমি 1,2,...,n1, 2, ..., n- এই সংখ্যাগুলোর মধ্যে আন্দাজ কতভাবে n/10n/10 টি সংখ্যা নির্বাচন করতে পারি সেটা বুঝতে হবে। যারা XI, XII -এ বিন্যাস ও সমবায়- এর বিষয়ে পড়েছ, তারা বুঝতে পারবে যে এই সংখ্যাটা হল nCn/10{}^{n}C_{n/10} বা (nn/10)\binom{n}{n/10} (nCr=n!r!(nr)!{}^{n}C_r = \frac{n!}{r!(n-r)!} যেখানে n!=12nn! = 1 \cdot 2 \cdots n)। বলে নেওয়া ভালো যে আমরা nCn/10{}^{n}C_{n/10} এই সংখ্যাটাকে একটা আনুমানিক মান হিসাবে নিচ্ছি, কারণ n10\frac{n}{10} পূর্ণসংখ্যা নাও হতে পারে কিন্তু nn যত বড়ো হবে, এটা তত ভালো একটা approximation- এ পরিণত হবে। এই সংখ্যাটাকে W(n)=nCn/10W(n) = {}^{n}C_{n/10} লিখলাম। এটা বলার সারমর্ম হল যে, আমি যদি এই W(n)W(n) সংখ্যক nn-digit string সঙ্গে নিয়ে যাই, তাহলে বিশেষ ভুল-ত্রুটি ছাড়াই actual weather profile এর কাছাকাছি একটা nn-digit string খামে ভরে কলকাতায় পাঠানোর ভালো সম্ভাবনা থাকবে।

এই গৌরচন্দ্রিকার পরে আবার প্রবন্ধের শুরুর বিষয়ে ফেরা যাক। Claude Shannon ঠিক এই সমস্যাটা নিয়েই ভাবছিলেন- কারো কাছে আন্দাজ কতগুলো n-digit string বা pattern থাকলে এমনভাবে তথ্য সম্প্রচার করা যাবে যাতে ভুল-ত্রুটির সম্ভাবনা nn বড়ো হওয়ার সাপেক্ষে কমতে কমতে নগণ্য হয়ে যায়।

আবার এই W(n)W(n) -এর বিবরণে ফেরা যাক। W(n)=(nn/10)W(n) = \binom{n}{n/10}, এই যে ফর্মুলা সেটাকে আমরা generalize করার চেষ্টা করব। আমি এখানে 1/101/10 কে একটা variable pp দিয়ে পালটে দিলাম। pp এখানে কোন একটা ঘটনার সম্ভাবনা প্রকাশ করবে। অর্থাৎ pp হচ্ছে 00 থেকে 11 এর মধ্যে কোন একটা বাস্তব সংখ্যা। nn যত বড় হতে থাকে ততই এর একটি সুন্দর আনুমানিক মান পাওয়া যায় যে, n!(n/e)n2πnn!\sim(n / e)^n \sqrt{2 \pi n}। একে Stirling’s Approximation ও বলা হয়। এখন,

W(n)=(nnp)=n!(np)!(nnp)!W(n)=\binom{n}{n p}=\frac{n!}{(n p)!(n-n p)!}

বা, lnW(n)=ln(n!)ln((np)!)ln((n(1p))!)\ln W(n)=\ln (n!)-\ln ((n p)!)-\ln ((n(1-p))!)

Stirling’s Approximation থেকে পাওয়া যায় যে,

ln(n!)nln(n)n12(ln(2π)+ln(n))\ln (n!) \sim n \ln (n)-n- \frac{1} {2} (\ln (2 \pi)+\ln(n))

অতএব সরলীকরণ করে পাই যে,

lnW(n)n[plnp(1p)ln(1p)]\frac{\ln W(n)}{n} \sim[-p \ln p-(1-p) \ln (1-p)], যখন nn-এর মান খুব বড় (কারণ 12(ln(2π)+ln(n))n,n\frac{1}{2} \frac{(\ln (2 \pi)+\ln(n))} {n}, n বড় হওয়ার সাথে শূন্যের দিকে যায়)। এর একটা নাম দেওয়া যাক, H(p)=plnp(1p)ln(1p)H(p)=-p \ln p-(1-p) \ln (1-p)। মনে রাখা প্রয়োজন যে nn-এর বড় মানের জন্য lnW(n)nH\frac{\ln W(n)}{n} \sim H বা W(n)enHW(n) \sim e^{nH}। অর্থাৎ HH হল W(n)W(n)-এর exponential growth rate।

আমরা এবার একটা সম্পূর্ণ অন্য প্রসঙ্গে যাব। এমন একটা মানবিক অনুভূতিকে গাণিতিক ভাষায় বর্ণনা করার চেষ্টা করতে হবে যা আমাদের ব্যক্তিজীবনকে প্রায় চালনাই করে বলা চলে। আমি expectation বা প্রত্যাশার কথা বলছি। জীবনে কোনো ঘটনা থেকে কতটা প্রত্যাশা করা যায়, তাকে মাপার একটা উপায় চাই। একটা উদাহরণ নেওয়া যাক। ধরা যাক, যে একটা fair coin টস করা হচ্ছে। মানে Heads(H) এবং Tails(T) দুটো পড়ার সম্ভাবনাই 1/21/2 করে। ধরে নেওয়া যাক, যে H পড়লে আমি 1010 টাকা পুরস্কার পাব আর T পড়লে আমাকে 1010 টাকা দিতে হবে। যদি এই coin টা বারবার টস করে যাই আর জিজ্ঞেস করি যে আমি গড়ে কত টাকা পাব, তোমরা না ভেবেই উত্তর দেবে যে 00 টাকা। কারণ- গড়ে যতবার H পড়ার সম্ভাবনা ঠিক ততবারই সম্ভাবনা T পড়ারও। ফলত, কেটেকুটে লাভ-লোকসান কিছুই থাকবে না। এবার একটু স্বাদবদল করা যাক। ধরা যাক, H পড়লে 1010 পাব আর T পড়লে 55 পাব। তাহলে যদি দুবার টস করি, গড়ে একবার H এবং একবার T পড়বে আর আমি 10+5=1510+5 = 15 টাকা পাব। এটাকে গড় করলে হয় 7127 \frac{1}{2} টাকা। যদি 44 বার টস করি তাহলে গড়ে দুবার H আর দুবার T পড়বে। সবমিলিয়ে হাতে আসে 3030 টাকা। তা গড় করলে আবার 7127 \frac{1}{2} টাকা। 66 বার বা 88 বার টস করলেও একই ব্যাপার হবে, আমি (12×10+12×5)=712(\frac{1}{2} \times 10 + \frac{1}{2} \times 5) = 7 \frac{1}{2} টাকাই পাচ্ছি। তাহলে যদি 2k2k বার টস করা হয়, তাহলে সম্ভাব্য সবমিলিয়ে (10k+5k)=15k(10k+ 5k)= 15k টাকা পাওয়া যায়। অর্থাৎ গড় করলে আবার 7127 \frac{1}{2} টাকা। এবার যদি (2k+1)(2k+ 1) বার টস করা হয়, তাহলে সম্ভাব্য (10k+5k+5)(10k+5k+5) এবং (10k+5k+10)(10k+5k+10) - এর মধ্যে কোনো একটা টাকার অঙ্ক হাতে আসে। এদের গড় করলে দাঁড়ায় যথাক্রমে {(15k2k+1)+(52k+1)}\left\{\left(\frac{15k}{2k+1}\right) + \left(\frac{5}{2k+1}\right)\right\} এবং {(15k2k+1)+(102k+1)}\left\{\left(\frac{15k}{2k+1}\right) + \left(\frac{10}{2k+1}\right)\right\}kk বড়ো হতে থাকলে 52k+1\frac{5}{2k+1}, 102k+1\frac{10}{2k+1} দুটোই ছোটো হতে হতে 00 এর কাছে চলে যায় আর k2k+1\frac{k}{2k+1}, 12\frac{1}{2} -এর কাছাকাছি যেতে থাকে। অর্থাৎ, kk বড়ো হতে থাকলে আবার গড়ে সেই 7127 \frac{1}{2} টাকাই পাওয়া যায়, সে জোড় বা বিজোড় যতবারই টস করিনা কেন। এর মানে আমি expect করতে পারি যে গড়ে 7127 \frac{1}{2} টাকাই পাব। আবারো স্বাদবদল করা যাক। ধরা যাক, আমাদের coin-টা একটু বিগড়েছে। কোনো কারণে তিনবার টস করলে গড়ে দুবার H আর একবার T পড়ছে। এবার H পড়লে 66 টাকা পাব আর T পড়লে 33 টাকা দিতে হবে। তাহলে, 3n3n বার টস করলে সম্ভাব্য 2n2n বার H আর nn বার T পড়বে [অর্থাৎ, (2n×6n×3)(2n \times 6 - n \times 3) টাকা পাওয়া যাবে]। যদি (3n+1)(3n+1) বার টস করা হয়, তাহলে পাওয়া যাবে (2n×6n×33)(2n \times 6 - n \times 3 - 3) আর (2n×6n×3+6)(2n \times 6 - n \times 3 + 6) -এই দুটোর মধ্যে কোনো একটা অঙ্কের টাকা। (3n+2)(3n+2) বার টস করলে [(2n×6n×3)2×3][(2n \times 6 - n \times 3) - 2 \times 3] এর সমান বা এর চেয়ে বড়ো এবং [(2n×6n×3)+2×6][(2n \times 6 - n \times 3) + 2 \times 6] -এর সমান বা এর চেয়ে ছোটো একটা অঙ্কের টাকা পাওয়ার সম্ভাবনা আছে। একটু আগে যেভাবে গড় নিয়ে দেখা হয়েছিল, ঠিক সেভাবেই দেখা যায় যে এই সবকটা ক্ষেত্রেই গড়ে (2/3×61/3×3)=(41)=3(2/3 \times 6 - 1/3 \times 3) = (4 - 1) = 3 টাকা expect করতে পারি। তাহলে যদি Head পড়ার সম্ভাবনা pp হয় এবং ফলত Tail পড়ার সম্ভাবনা (1p)(1-p) হয় এবং H পড়লে যদি M(p)M(p) টাকা এবং T পড়লে M(1p)M(1-p) টাকা পাওয়া যায়, তবে গড়ে [pM(p)+(1p)M(1p)][pM(p) + (1-p)M(1-p)] টাকা পাওয়া যাবে, তা expect করা যায় (টাকা দিতে হলে MM ঋণাত্মক হবে)। এই coin toss করাটাকেই একটা random experiment ভাবা যেতে পারে। অর্থাৎ এমন একটা experiment যার ফলাফল নিশ্চিত নয়, এবং [pM(p)+(1p)M(1p)][pM (p) + (1-p) M (1-p)] হল MM এর expectation, এই random experiment এর ফলাফল হিসাবে।

আবার information compression এর প্রশ্নে ফেরা যাক। পাঠক বলবেন যে আমরা information compression-এর প্রশ্নে গেলামই বা কখন। কিন্তু একটু খেয়াল করলেই পাঠক বুঝতে পারবে যে, আমরা যে শুধু এই প্রশ্নে গেছি তাই নয়, আমরা এই বিষয়ে বিস্তর আলোচনা করে ফেলেছি। পাঠকের মনে পড়বে, আমাদের প্রথম উদাহরনে যেখানে সবমিলিয়ে 212=40962^{12} = 4096 টি combination ছিল, সেটাকে আমরা e12[910×ln(910)+110×ln(110)]49.45166e^{-12\left[\frac{9}{10} \times \ln \left(\frac{9}{10}\right)+\frac{1}{10} \times \ln \left(\frac{1}{10}\right)\right]} \sim 49.45166 সংখ্যক সম্ভাব্য combination এ কমিয়ে এনেছিলাম। শ্যানন বুঝতে পারেন যে, W(n)W(n) এর বড় বা ছোট হওয়া (ঠিক করে বললে limnlnW(n)n=H\lim _{n \to \infty} \frac{\ln W(n)}{n}=H এর বড় বা ছোট হওয়া) আরও এক ভাবে অনুভব করা যায় - তা হল অনুভূত বিস্ময় বা surprise এর মাধ্যমে এতক্ষণে পরিষ্কার যে, W(n)W(n) এর চেয়ে কমসংখ্যক nn-digit string এর মধ্যে থেকে যদি কাগজ কলকাতায় পাঠাতে হয়, তাহলে তথ্যবিকৃতি ঘটবে। কারণ W(n)W(n) সংখ্যক প্রতিটি string ই উপলব্ধ হওয়ার সম্ভাবনা আছে। অর্থাৎ, W(n)W(n) যত বড়ো হবে ততই একটা নির্দিষ্ট weather pattern আবিষ্কারে আমাদের বিস্ময়ও বাড়বে। তাই W(n)W(n) কে আমরা এই আবহাওয়ার nn দিনের information complexity- এর একটা পরিমাপ হিসাবে আমরা ভাবতে পারি। এই বিষয়ে আমরা পরে আরও কথা বলব। যাই হোক, বিস্ময়ের অনুভূতিকে এই প্রেক্ষাপটে একটি গাণিতিক ভিত্তির উপর দাঁড় করানোর প্রচেষ্টা করা যাক। অর্থাৎ, আমরা এবার বিস্ময় মাপব।

যদি একটা fair coin দুবার টস করা হয়, তবে HH, HT, TH, TT - এই চারটি ফলাফল হতে পারে। কথা বলার সুবিধার্থে কিছু ঘটনা (event) এর আগে থেকে নামকরণ করা যাক,

Event AA → পরপর দুটো টসেই H পড়া

Event BB → অন্তত একটা টসে H পড়া

Event CC → অন্তত একটা টসে T পড়া

AA ঘটার একমাত্র উপায় হল HH উপলব্ধ হওয়া অর্থাৎ AA ঘটার সম্ভাবনা মান P(A)=1/4P(A) = 1/4 (P(A)P(A) এর মাধ্যমে AA ঘটার সম্ভাবনা বা probability বোঝানো হচ্ছে)। BB ঘটতে পারে HH, HT, TH, এর মধ্যে যেকোনো একটা ঘটলেই ফলত P(B)=3/4P(B) = 3/4। স্বাভাবিকভাবেই আমরা AA ঘটলে BB ঘটার চেয়ে বেশি বিস্মিত হব। আবার লক্ষ্য করে দেখা যায় যে P(C)=3/4P(C) = 3/4। অর্থাৎ, BB এবং CC ঘটলে আমরা সমপরিমাণ বিস্মিত হব। কারণ এই দুটো ঘটনা ঘটার সম্ভাবনা সমান। এর থেকে বোঝা যায় যে বিস্ময়, বা surprise ঠিক ঘটনাটি নয়, বরঞ্চ ঘটনাটির সম্ভাবনার উপর নির্ভর করে। এছাড়া বিস্ময় এর দ্বিতীয় নিয়ম হল যে, কোন ঘটনা ঘটার সম্ভাবনা যত বাড়বে ততই বিস্ময় কমবে, surprise কে যদি একটি অপেক্ষক (function) SS হিসাবে ভাবা যায় তাহলে এটি ক্রমহ্রাসমান, আমাদের আপাতত আলোচনার সুবিধার জন্য, S:[0,1][0,]S : [0, 1] \to [0, \infty] এবং SS হল ক্রমহ্রাসমান বা decreasing, S(0)=,S(1)=0S(0) = \infty , S(1) = 0। এর কারণ হল যে, কোনো অসম্ভব ঘটনায় অপরিসীম পরিমাণ surprise অনুভূত হয় বা S(0)=S(0) = \infty। আবার যেটা নিশ্চিত ঘটনা, তা ঘটায় কোন বিস্ময়ই অনুভব করি না, তাই S(1)=0S(1) = 0, কারণ নিশ্চিত ঘটনার সম্ভাবনা 11। এখানে বলে রাখা দরকার যে, S(0)=S(0)= \infty ব্যাপারটা গাণিতিকভাবে খুব একটা যুক্তিযুক্ত নয়, বরঞ্চ বলা উচিত যে ঘটনার সম্ভাবনা যত ছোট হয়ে 00 এর দিকে যাবে, surprise SS ঠিক ততই যে কোনো বড়ো সংখ্যাকে একসময় ছাড়িয়ে যাবে, সে যত বড়োই হোক না কেন। অর্থাৎ limp0+S(p)=\lim_{p \rightarrow 0^+} S(p) = \infty, যারা limit এর সংজ্ঞার সঙ্গে পরিচিত তারা বুঝতে পারবে যে কি বলার চেষ্টা করা হচ্ছে। তবে কাজ চালানোর জন্য এখানে S(0)=S(0) = \infty বলব। এখানে আরেকটা সূক্ষ্ম ব্যাপার আছে, দুটো ঘটনা যখন স্বতন্ত্র বা independent হয় তখন তাদের একসাথে ঘটার সম্ভাবনা তাদের প্রত্যেকের এককভাবে ঘটার সম্ভাবনার গুণফল হয়- এটাকে আমরা independent ঘটনার সংজ্ঞা হিসাবে নেব । এটা স্পষ্ট যে, XXYY যদি দুটি independent event হয় এবং যদি এদের ঘটার সম্ভাবনা যথাক্রমে α\alphaβ\beta হয়, তাহলে XYX \cap Y ঘটায় (অর্থাৎ XXYY একসাথে ঘটায়) পাঠক S(α)+S(β)S(\alpha)+S(\beta) পরিমাণ বিস্ময় অনুভব করবে। যেমন ধরা যাক যে শীতকালে কলকাতায় বৃষ্টি শুরু হল, এই ঘটনায় কিছুটা হলেও বিস্ময় অনুভব হবে, তা বিশ্ব উষ্ণায়ণ এর কারণে আবহাওয়া যতই পরিবর্তনশীল হোক না কেন! আবার ধরো বাড়ির পাশের রাস্তায় হঠাৎ করে একটা বাইক পিছলে রাস্তা থেকে সরে একটা accident ঘটে গেল। বৃষ্টির ঘটনাটিকে XX ও accident এর ঘটনাটিকে YY বলা যাক। ধরা যাক বাড়ির পাশের রাস্তা ভালো করে বাঁধানো এবং তাতে accident প্রায় হয় না বললেই চলে। তাই হঠাৎ করে YY ঘটলে পাঠক যথেষ্ট বিস্মিত হবে, কিন্তু যেহেতু বৃষ্টির পরে accident-টা ঘটেছে, এতে বোঝা যায় যে YY ঘটার পিছনে XX এর অবদান রয়েছে এবং তোমার অবচেতনে এই ব্যাপারটা আগে থেকেই সঞ্চিত আছে। তাই দুটো যোগ করে যতটা বিস্মিত হওয়ার কথা তার থেকে কিছুটা কম বিস্ময় অনুভব হবে। কিন্তু এই YY ঘটনাটাই যদি ভারতের কোনোবার ফ্রান্সে ফুটবল বিশ্বকাপ জেতা হয় তাহলে কিন্তু বিস্ময়গুলো যোগ হয়ে অনুভূত হবে। কারন কলকাতায় বৃষ্টি হওয়ার সাথে ফ্রান্সে ভারতের বিশ্বকাপ জেতার কোনো সম্পর্ক নেই।

একটা সহজ উদাহরণ নেওয়া যাক। আবার একটা fair coin দুবার টস করা হচ্ছে। প্রথমবার H পড়ার ঘটনাকে AA ও দ্বিতীয়বার H পড়ার ঘটনাকে BB বলা যাক। তাহলে A,BA, BABA \cap B কে সেট হিসাবে লিখলে পাব যে AA হচ্ছে {HH, HT}, BB হচ্ছে {HH, TH} আর ABA \cap B হচ্ছে {HT} এবং সম্ভাব্য সমস্ত outcome এর set হল {HH, HT, TH, TT}। ফলত, A,BA, BABA \cap B ঘটার সম্ভাবনা যথাক্রমে 12,12,14\frac{1}{2}, \frac{1}{2}, \frac{1}{4}। Independence এর আগে যে সংজ্ঞা দেওয়া হয়েছিল, তা থেকে দেখা যায় যে A,BA, B স্বতন্ত্র বা independent ঘটনা। এবার যদি surprise function SS নির্মাণের সময় এই independence এর ব্যাপারটা মাথায় রাখা যায়, তাহলে কী দেখা যাবে? AA এবং BB ঘটনাদুটি একসাথে ঘটার জন্য যদি S(12)S\left(\frac{1}{2}\right) পরিমাণ surprise অনুভূত হয়, তবে ABA \cap B বা AABB একসাথে ঘটলে [S(12)+S(12)]\left[S\left(\frac{1}{2}\right) + S\left(\frac{1}{2}\right)\right] পরিমাণ surprise অনুভূত হবে। কিন্তু ABA \cap B ঘটার সম্ভাবনা 14\frac{1}{4}, তাই ABA \cap B ঘটায় S(14)S\left(\frac{1}{4}\right) পরিমাণ surprise অনুভূত হয়। দুটোকে তুলনা করলে পাওয়া যায় যে, S(14)=S(12×12)=S(12)+S(12)S\left(\frac{1}{4}\right) = S\left(\frac{1}{2} \times \frac{1}{2}\right) = S\left(\frac{1}{2}\right) + S\left(\frac{1}{2}\right) । এবার যদি এই বিষয়টিকে generalise বা সাধারণীকরণ করা যায়, তবে কী পাওয়া যাবে? AA এবং BB যদি স্বতন্ত্র ঘটনা হয় এবং AABB ঘটার সম্ভাবনা যদি যথাক্রমে ppqq হয়, তাহলে নিশ্চিত যে, S(pq)=S(p)+S(q)S(pq) = S(p) + S(q), কারণ AABB স্বতন্ত্র হওয়ায় ABA \cap B ঘটার ফলে S(p)+S(q)S(p) + S(q) পরিমাণ বিস্ময় অনুভূত হবে, আবার ABA \cap B ঘটার সম্ভাবনা pqpq (AABB স্বতন্ত্র হওয়ার কারণে)। ফলত, ABA \cap B ঘটায় অনুভূত surprise হল S(pq)S(pq)। দুটোকে জুড়লে পাই S(pq)=S(p)+S(q)S(pq) = S(p) + S(q)

তাহলে surprise function SS এর মধ্যে আমরা কী কী চাই?

S:[0,1][0,]S : [0, 1] \to [0, \infty]

S is decreasing, S(0)=,S(1)=0,S(pq)=S(p)+S(q) S \text{ is decreasing, }S(0) = \infty, S(1) = 0, S(pq) = S(p) + S(q)

উপরন্তু কাজ করার সুবিধার্থে SS কে continuous বা অবিচ্ছিন্ন ভাবতে কোনো ক্ষতি দেখা যায় না, এখান থেকে প্রমাণ করা যায় যে, S(p)=ln(p)S(p) = -\ln(p) না হয়ে আর কোনো উপায় নেই (S(p)=logapS(p) = -\log _{a} p ও হতে পারে, যেখানে a>1a > 1, আমরা convention হিসাবে a=ea = e নিলাম)! অর্থাৎ যদি কোনো ঘটনা AA ঘটার সম্ভাবনা pp হয়, তাহলে AA ঘটার ফলে S(p)=ln(p)S(p) = -\ln(p) পরিমাণ surprise অনুভূত হবে।

তাহলে এখনো পর্যন্ত যা যা নিয়ে কথা হয়েছে, তা একবার একটু সংক্ষেপে স্মরণ করে নেওয়া যাক। একদম প্রথমে আবহাওয়ার তথ্য সম্প্রচার এর উদাহরণের মাধ্যমে আমরা কোনো binary random experiment (যার শুধুমাত্র দুটো ফলাফল – 00 এবং 11) এর information complexity এর সাথে পরিচিত হলাম। অর্থাৎ, যদি random experiment এর ফলাফল (outcome) কে 00 এবং 11 দিয়ে লেখা হয় এবং যদি 00 এবং 11 আসার সম্ভাবনা যথাক্রমে (1p)(1-p)pp হয়, তাহলে nn দিনের ঘটনাক্রম জানানোর জন্য সবচেয়ে সম্ভাব্য W(n)nCnpW(n) \sim { }^n C_{n p} সংখ্যক nn-digit binary string (অর্থাৎ 0,10, 1 দ্বারা নির্মিত) প্রয়োজন। আমরা দেখেছিলাম যে, ln[W(n)]n=pln(p)(1p)ln(1p)=H(p)\frac{\ln[W(n)]}{n} = -p\ln(p) - (1-p)\ln(1-p) = H(p), যখন nn \to \infty (nn যত বড়ো হয়ে অসীমের দিকে যাচ্ছে)। এরপর আমরা expectation নিয়ে কথা বললাম। যদি দুটো ঘটনা ঘটার সম্ভাবনা qq এবং (1q)(1-q) হয় এবং প্রথম ও দ্বিতীয় ঘটনায় যথাক্রমে M(q)M(q) এবং M(1q)M(1-q) পরিমাণ টাকা পাওয়া যায়, তাহলে গড়ে [qM(q)+(1q)M(1q)][qM(q) + (1-q) M(1-q)] পরিমাণ টাকা পাওয়া যাবে, তা expect করতে পারি। এখানে টাকাই অপেক্ষক (function), এটা ভেবে নাও। শেষে দেখলাম যে কোনো ঘটনা AA ঘটার সম্ভাবনা যদি pp হয়, তাহলে AA ঘটার ফলে S(p)=ln(p)S(p) = -\ln(p) পরিমাণ বিস্ময় বা surprise অনুভূত হয়। মানে ঠিক এর আগের প্রেক্ষাপটটি দেখলে একটা binary event (মানে যার দুটো outcome, একটার সম্ভাবনা pp এবং অপরটির (1p)(1-p)) এর জন্য expected surprise হল pln(p)(1p)ln(1p)-p \ln(p) - (1-p) \ln(1-p)। একটু পিছনে ফিরলেই দেখা যাবে যে এটা H(p)H(p) ব্যতীত আর কিছুই নয়। আমরা আগে লিখেছিলাম যে আমরা W(n)W(n) কে একটা binary event এর nn বারের ঘটনাক্রমে যে সঞ্চিত information, তার complexity এর একটা মাপকাঠি হিসাবে ভাবতে পারি। আমাদের আলোচনা থেকে স্পষ্ট যে, nn এর সাপেক্ষে W(n)W(n) এর যে exponential growth rate মানে limnln[W(n)]n\lim_{n \rightarrow \infty} \frac{\ln[W(n)]}{n}, তা আসলে binary event টির expected surprise ছাড়া কিছুই না। এই HH কেই বলা হয় শ্যানন এনট্রপি।

এনট্রপি শব্দটার উৎপত্তি পদার্থবিদ্যা থেকে, Thermodynamics যখন পড়ানো হয় তখন পাঠকদের সঙ্গে এই শব্দটার প্রথম পরিচয় হয়েছে। কোনো system এর বিশৃঙ্খলা পরিমাপ করতে এনট্রপি ব্যবহার করা হয়। তার সাথে তুলনা করেই আমাদের প্রেক্ষাপটেও এনট্রপি শব্দটা ব্যবহার করা যেতে পারে। একটা Random event এর থেকে নেওয়া পর পর nn বার এর ঘটনাক্রম অনুধাবন করা ততই কঠিন হবে যত আভ্যন্তরীণ randomness বাড়তে থাকবে। চেরাপুঞ্জিতে যদি টানা বৃষ্টি না হয়ে আবহাওয়া হঠাৎ করে রোদ ও বৃষ্টির মাঝে দোলাচলে রইত তবে এতটা নিশ্চিত হওয়া যেত না। আমাদের নতুন দাঁড়িপাল্লা HH দিয়ে মাপলেও এই ব্যাপারটা দেখা যায়। দুটো ঘটনা 0011 যদি সমান সম্ভাবনা 1/21/2 নিয়ে ঘটে তখনই H(p)H(p) সর্বোচ্চ হয়, p=1/2p=1/2 এ। এটাই এই Random event এ সঞ্চিত তথ্য বা Information এর complexity-র পরিমাপক। শ্যানন বুঝতে পারেন যে এনট্রপি তখনই সর্বোচ্চ হবে যখন যেকোনো গ্রহণযোগ্য ঘটনাক্রম উপলব্ধিতে দর্শক গড়ে সবচেয়ে বেশি আশ্চর্য হবেন।

কোন বিষয়েরই অতি ব্যাখ্যা ভাল নয়, পাঠক নিজে উপলব্ধি করলেই সর্বোৎকৃষ্ট ধারণা তৈরি হয়। এনট্রপি নামকরণ এর প্রসঙ্গে একটা ছোট গল্প দিয়ে শেষ করি। শ্যানন প্রথমে এই HH বস্তুটিকে 'Information' বলতে চেয়েছিলেন । কিন্তু শব্দটার অতিব্যবহারে চিন্তিত হয়ে স্থির করলেন যে HH কে 'অনিশ্চয়তা' মানে 'uncertainty' বলবেন। সেটাও পরে মনঃপূত না হওয়ায় গেলেন কিংবদন্তী-পদার্থবিজ্ঞানী ও গণিতজ্ঞ জন ভন নয়ম্যান এর কাছে, এই নামকরণ বিষয়ে আলোচনা করতে। যারা ভাবছে যে ''what is in a name?'' তাদের উদ্দেশে বলি যে গণিতে নামকরণ বেশ গুরুত্বপূর্ণ, continuity শব্দটা ব্যবহার হয় বলে চট করে একজন নতুন শিক্ষার্থীকে বলা যায় যে '' কোন function এর graph যদি পেন না তুলে নিরবিচ্ছিন্ন ভাবে আঁকা যায় তাহলে সেটা একটা continuous function''। এটা সংজ্ঞা নয় ঠিকই, কিন্তু সংজ্ঞা এবং স্বজ্ঞা যখন অবচেতনে এক হয়ে যায়, হয়ত বহুবার গভীর চিন্তাভাবনা এবং অঙ্ক অভ্যাস করার পরে, তখন continuity নিয়ে আবার সেই প্রথম দিকে ছবি দিয়ে আর হাত নাড়িয়ে ভাবায় ফিরে আসা যায়। আমাদের জীবদ্দশায় হয়ত সর্বশ্রেষ্ঠ গণিতজ্ঞদের একজন, Terence Tao এর ভাষায় বললে, শেখার এখানে তিনটে স্তর আছে- pre rigorous, rigorous আর post rigorous। তাই নামকরণের সার্থকতা গল্প, উপন্যাস এর থেকেও গণিতে বেশি গুরুত্বপূর্ণ, যদিও বিভিন্ন ঐতিহাসিক কারণে তা সবসময় হয়ে ওঠেনি। যাই হোক, শ্যানন এর নামকরণ নিয়ে এই দ্বিধার কথা শুনে, বুঝে ভন নয়ম্যান তখন উপদেশ দিলেন HH কে 'এনট্রপি' নাম দেওয়ার। প্রথম কারণটা হল যে Statistical mechanics এ এই একই নামে uncertainty function (আমরা যাকে SS বলছি) ব্যবহার করা হয়েছে। আর দ্বিতীয় এবং আরও গুরুত্বপূর্ণ কারণ হল এই যে, কেউই ঠিকঠাক জানে না যে এন্ট্রপি বস্তুটা আসলে কি, ফলত এই নামকরণ নিয়ে যে কোনো তর্কে তুমি (মানে শ্যানন) আগেই দুই পা এগিয়ে থাকবে।

সূত্র: আমি এই লেখার সূত্র হিসাবে দুটি কৃতজ্ঞতা স্বীকার করতে চাই। প্রথম সূত্রটি হল TIFR-CAM এর অধ্যাপক নিশান্ত চন্দগোটিয়া মহাশয় এর Thermodynamic formalism প্রসঙ্গে দেওয়া প্রথম দুটি লেকচার, যে দুটি 20242024 সালের ডিসেম্বর আইআইটি তিরুপতির গণিত বিভাগে আয়োজিত হয়। দ্বিতীয় সুত্র হল, সেপ্টেম্বর 6,20226, 2022 এ কেভিন হার্নেট এর লেখা online article, "How Shannon Entropy Imposes Fundamental Limits on Communication", যা Quanta ম্যাগাজিনে এ ছাপা হয়।

Comments

Sign in to join the conversation.