“নেটওয়ার্ক” শব্দটার সাথে সবাইকে নতুন করে পরিচয় করিয়ে দিতে গেলে বর্গমূলের পাঠকরা আমাকে কান ধরে উঠবস করাবে। এটা এমন একটা আইডিয়া, যেটা সব্বাই বোঝে। কিসের কিসের নেটওয়ার্ক হতে পারে – এও তেমন কোন কঠিন প্রশ্ন নয়। নিচের ছবিটাই জলজ্যান্ত উত্তর।
ফেসবুক প্রতিমুহূর্তে জানান দিচ্ছেঃ এ তার বন্ধু, সে ওমুকের বন্ধু, তমুক আবার আমার বন্ধু… এলাহি কান্ড। এই এলাহি কান্ডকে আমরা “সোশাল নেটওয়ার্ক” নামে ডাকি। শতকোটি অণু মিলে একটা চিনি বা লবনের যে ক্রিস্টাল তৈরি করে, সেটাও একটা নেটওয়ার্ক। মলিকুলার নেটওয়ার্ক। ঢাকাশহরে মেগাসিটি, তরঙ্গ, ফালগুন, ৬ নাম্বার, উইনার – এই বাস গুলোর কথাই বলি, কিংবা লুফথানসা, এমিরেটস, রায়ানএয়ার, বাংলাদেশ বিমানের ফ্লাইট গুলো – সবাই নিজের নিজের জায়গায় যাত্রী পারাপার করে নেটওয়ার্ক তৈরি করে আছে। একই ভাবে সারাদেশের ইলেকট্রিক পাওয়ার গ্রীড, কিংবা আমাদের শরীরের মেটাবলিজমের কেমিক্যাল রিএ্যাকশনে অংশ নেওয়া প্রোটিন, কিংবা আমাদের মস্তিষ্কের নিউরন-সিন্যাপ্স, কিংবা একটা বনের প্রাণীদের ভেতরকার ফুডচেইন, কিংবা সারা পৃথিবীর ইন্টারনেট – অনেক অনেক অনেক জায়গায় নেটওয়ার্কের উপস্থিতি।
স্বভাবতই একেকটা নেটওয়ার্কের মেজাজ-মর্জি একেক রকম। বিভিন্ন ধরনের সায়েন্টিফিক কমিউনিটিতে তাই নেটওয়ার্ক নিয়ে নাড়াচাড়া করার একটা প্রবল আগ্রহ প্রায়ই দেখা যায়। সবাই মোটামুটি নেটওয়ার্ক সায়েন্সকে বোঝা শুরু করে একটা ইউনিক টুলবক্স দিয়ে। সেটা হল, গ্রাফ থিওরি।
গ্রাফ জিনিসটা কী? নিচের ছবির জিনিসটাই হচ্ছে গ্রাফ।
ছবিতে তো শুধু কিছু নাম্বার লাগানো গোল্লা আর কিছু লাইন দেখা যাচ্ছে। এটাই কি গ্রাফ? হ্যাঁ এটাই গ্রাফ বাই ডেফিনিশন! গোল্লা গুলোর নাম রাখা হয়েছে Vertex , আর লাইন গুলো হল Edge . গ্রাফ হচ্ছে জাস্ট কিছু ভার্টেক্স এবং এজ-এর একটা সেট। উপরের সব গুলো নেটওয়ার্কই কিন্তু একেকটা গ্রাফ। যেমন ফেসবুক নেটওয়ার্কে ভার্টেক্স বা নোড গুলো হচ্ছে একেকটা মানুষ। এবং এজ হচ্ছে তাদের মধ্যেকার ফেসবুক-ফ্রেন্ডশিপ। এ্যাভিয়েশন নেটওয়ার্কের ক্ষেত্রে ভার্টেক্স হচ্ছে একেকটা এয়ারপোর্ট। আর এজ হচ্ছে একেকটা ফ্লাইট।
ছবিতে তো শুধু কিছু নাম্বার লাগানো গোল্লা আর কিছু লাইন দেখা যাচ্ছে। এটাই কি গ্রাফ? হ্যাঁ এটাই গ্রাফ বাই ডেফিনিশন! গোল্লা গুলোর নাম রাখা হয়েছে Vertex , আর লাইন গুলো হল Edge . গ্রাফ হচ্ছে জাস্ট কিছু ভার্টেক্স এবং এজ-এর একটা সেট। উপরের সব গুলো নেটওয়ার্কই কিন্তু একেকটা গ্রাফ। যেমন ফেসবুক নেটওয়ার্কে ভার্টেক্স বা নোড গুলো হচ্ছে একেকটা মানুষ। এবং এজ হচ্ছে তাদের মধ্যেকার ফেসবুক-ফ্রেন্ডশিপ। এ্যাভিয়েশন নেটওয়ার্কের ক্ষেত্রে ভার্টেক্স হচ্ছে একেকটা এয়ারপোর্ট। আর এজ হচ্ছে একেকটা ফ্লাইট।
সবাইই শুধু কিছু ভার্টেক্স এবং এজের সেট। তাই সবাইকে এ্যনালাইজ করার জন্য সামান্য গ্রাফ থিওরীর প্রিরিকুইজিট প্রয়োজন। তার সাথে আমি কিছু লিনিয়ার এ্যালজ্যাব্রার জ্ঞানও ডিমান্ড করছি, কারন আসল খেলাটা জমবে ম্যাট্রিক্স দিয়ে।
জানিনা আমি নিজে কতদিন নেটওয়ার্ক সায়ন্সের সাথে থাকব, কারন এই কোর্সের পরীক্ষা গতকালই হয়ে গেল। কিন্তু যারা নেটওয়ার্ক নিয়ে পড়াশোনা শুরু করার কথা ভাবছেন, তাদের জন্য একদম কিকস্টার্টার হিসেবে এই লেখা গুলো কাজে লাগতে পারে।
আমরা পরের পোস্ট গুলোর পথ ধরে হাঁটতে হাঁটতে দরকার মত নতুন শব্দ শিখে নেব। দুএকটা আজ থেকেই শুরু করা যায়। যেমন- ডিগ্রী।
ডিগ্রী
একটা ভার্টেক্সের সাথে যতগুলো এজ যুক্ত, সেটাই তার ডিগ্রী। উপরের ছবিতে ভার্টেক্স-১ এর ডিগ্রী দুই। ভার্টেক্স-১৫ এর ডিগ্রী চার। -তম ভার্টেক্সের ডিগ্রীকে সাধারনত মানুষ দিয়ে লেখে। সুতরাং ছবিতে
ইত্যাদি।
একটা ভার্টেক্সের সাথে যতগুলো এজ যুক্ত, সেটাই তার ডিগ্রী। উপরের ছবিতে ভার্টেক্স-১ এর ডিগ্রী দুই। ভার্টেক্স-১৫ এর ডিগ্রী চার। -তম ভার্টেক্সের ডিগ্রীকে সাধারনত মানুষ দিয়ে লেখে। সুতরাং ছবিতে
ইত্যাদি।
আমরা সবসময় একটা নেটওয়ার্কের ভার্টক্সের সংখ্যাকে দিয়ে, এবং এজ-এর সংখ্যাকে দিয়ে লিখব। গুনে দেখুন, ছবিটায়
কম্পনেন্টআমি চাইলেই ভার্টেক্স-১ থেকে ভার্টেক্স-৪ -এ পৌঁছতে পারিনা। তেমনি, ১ থেকে ১৪-তেও পৌঁছতে পারিনা। তবে
১ থেকে ২ বা ৩ -এ যেতে পারি।
১৪ থেকে ১৫, ১৬ তে যেতে পারি।
১০ থেকে ৬-এ যেতে পারি।
৮ এবং ৫ থেকে কোথাও যেতে পারিনা।
আমাদের নেটওয়ার্কটিতে ভার্টেক্স ১,২,৩ এবং তার এজ গুলোর সেট টা একটা কম্পনেন্ট। এদের ভেতর ঘোরাফেরা করা যায়। কিন্তু এদের থেকে বাইরে কোন লিঙ্ক নেই। একই ভাবে ৪,৬,৭,৯,১০,১১,১২,১৩ নম্বর ভার্টেক্স এবং তাদের এজ গুলো নিয়ে যেই সেট, সেটা আরেকটা কম্পনেন্ট। আবার, ১৪,১৫,১৬,১৭,১৮ নিয়ে আরেকটা কম্পনেন্ট। ৫ নিজেই একটা কম্পনেন্ট। ৮-ও ৫-এর মত একটা একলা কম্পনেন্ট।
কানেক্টেডনেসএকটা গ্রাফে যদি একটাই কম্পনেন্ট থাকে, তাহলে সেটাকে বলা হয় কানেক্টেড গ্রাফ। ছবির নেটওয়ার্কটা কি কানেক্টেড? মোটেই না। কারন ওখানে ৫টা কম্পনেন্ট জ্বলজ্বল করছে। বোঝাই যাচ্ছে, একটা কম্পনেন্ট নিজেই একটা গ্রাফ। এবং অবশ্যই কানেক্টেড।
সেলফ-এজ, মাল্টি-এজ, সিম্পল গ্রাফকোন ভার্টেক্সের নিজের সাথে নিজেরই যদি এক বা একাধিক এজ থাকে, তাহলে সেই এজ হচ্ছে সেলফ-এজ। আবার দুটো ভার্টেক্সের ভেতর যদি একের বেশি এজ থাকে, সেই এজ গুলো হচ্ছে মাল্টি-এজ। একটা গ্রাফে যদি কোন ভার্টেক্সের সাথেই এমন সেলফ-এজ বা মাল্টি-এজ কোনটাই না থাকে, তাহলে গ্রাফটা একটা সিম্পল গ্রাফ। ছবির গ্রাফটা সিম্পল না। কারন ভার্টেক্স ১৪-এর একটা সেলফ এজ আছে। আবার ভার্টেক্স ১৬ থেকে ১৭ তে মাল্টি-এজ।
আমি গ্রাফ এবং নেটওয়ার্ক শব্দ দুটোকে একই অর্থে ব্যবহার করছি।
পাথ, পাথ-লেংথ, জিওডেসিকআমরা কি ভার্টেক্স-৬ থেকে ১২ ‘তে যেতে পারি? নিশ্চয়ই পারি। কী কী রাস্তায় যেতে পারি?
একটা হল ক্রমান্বয়ে ৬,৪,৭,১১,১২।
আরেকটা রাস্তা হল, ৬,৪,৭,১০,১৩,১২।
আরেকটা হল, ৬,৪,৭,১০,৯,১১,১২।
আরেকটা ৬,৪,৭,১০,১১,৯,৭,১১,১০,৯,১১,১০,১৩,১২।
একটা হল ক্রমান্বয়ে ৬,৪,৭,১১,১২।
আরেকটা রাস্তা হল, ৬,৪,৭,১০,১৩,১২।
আরেকটা হল, ৬,৪,৭,১০,৯,১১,১২।
আরেকটা ৬,৪,৭,১০,১১,৯,৭,১১,১০,৯,১১,১০,১৩,১২।
এরকম হয়ত আরও চাইলে খুঁজে বের করা যাবে। এই রাস্তা গুলোর প্রতিটিই একেকটা পাথ . একটা পাথে যতগুলো এজ ব্যবহার করে আমরা গন্তব্যে পৌঁছেছি, সেটাই হল তার পাথ-লেংথ। যেমন ওপরের চারটা পাথের লেংথ গুলো হচ্ছে যথাক্রমে চার, পাঁচ, ছয় এবং তের।
স্বভাবতই, সবচে ছোট লেংথের পাথটাই জিওডেসিক পাথ। আমরা গুগলম্যাপে যখন একজায়গা থেকে আরেকজায়গায় যাওয়ার জন্য রুট খুঁজি, তখন গুগলম্যাপ সাধারনত জিওডেসিক পাথ হিসেব করে সেটাকে হাইলাইট করে দেখায়। অন্তত কার্জন হল থেকে নীলক্ষেতের বইয়ের দোকানে যাওয়ার ম্যাপে সেরকমটাই দেখা যাচ্ছে।
একটা নেটওয়ার্কে জিওডেসিক পাথ যে একটাই হবে, এমন কোন কথা নেই। কয়েকটা থাকতেই পারে। যেমন আগের ছবির নেটওয়ার্কটিতে ১২ থেকে ১০ নম্বর ভার্টেক্সে পৌঁছানোর জিওডেসিক দুটো। ১২,১১,১০ এবং ১২,১৩,১০।
এখন যদি প্রশ্ন করা হয়, ৬ থেকে ১৩ ‘তে কতগুলো পথে যাওয়া সম্ভব, তাহলে কি আমরা বসে থেকে গুনে গুনে উত্তর বের করব? বা জিগেস করা হল, ৬ থেকে ১৩ ‘তে ছয়-লেংথের কয়টা পথ সম্ভব, তাহলেই বা কী করব?
এই সব প্রশ্নের উত্তর দাওয়ার জন্য আমাদের হাতে একটা প্রচন্ড স্মার্ট টুল আছে। সেটা হচ্ছে এ্যাডজেসেন্সি ম্যাট্রিক্স। এই ম্যাট্রিক্স জাদুর কাঠির মত সব উত্তর হাজির করবে।
এ্যাডজেসেন্সি ম্যাট্রিক্সটা তাহলে কী জিনিস?
পরের পোস্টেই বলি।
0 comments:
Post a Comment