Tuesday, April 3, 2007

আর্ট লাইফ-১




সিঙ্গুলারিটি নিয়ে লেখা শুরু করেছি হালে, কিন্তু পুরো ব্যাপারটা আসলে বেশ জটিল, এখন মনে হচ্ছে টেকনিকাল অংশগুলো বাদ দিয়ে বিশ্বাসযোগ্য করে লেখা বেশ কঠিন৷ সে যাক, আগে একটা সময় ছিল ব্লগে আমরা বিবর্তন বাদ নিয়ে প্রচুর ঘাপলা করতাম, এখন সে ধরনের বিতর্ক কম, অনেক নতুন লেখক এসে ফ্রন্টপেজ কেমন বাজারের মতো অবস্থা৷ আর সেই শোমচৌ, অপবাক, মুখফোড়ও নাই, অন্তত দিনান্তে তাদের পোস্ট দেখা যায় না৷ তো যখন ঐ বিতর্ক হতো তখন একটা প্ল্যান ছিল বিবর্তন বাদের প্রক্রিয়াটা হাতে কলমে করে দেখানো, আসলে এটা নতুন কিছু না, আর্টিফিশিয়াল লাইফ নিয়ে অনেক আগে থেকেই কাজ হচ্ছে, আর প্রকৃতির বিবর্তনবাদের সূত্র এমন গোপন কিছু না যে রিক্রিয়েট করা যাবে না৷

কার্ল সিমস মনে হয় প্রথম দিককার একজন যারা আর্টিফিশিয়াল লাইফ নিয়ে প্রজেক্ট করেছেন সেই ৮০র দশকে৷ তবে এখনকার সময়ে জেনেটিক আ্যলগরিদমের প্রয়োগ অবশ্য অন্য জায়গায়, যেমন জেট ইঞ্জিন ডিজাইন করা, স্টক মার্কেট এনালাইসিস ইত্যাদি৷ আগের লেখায় লিখছি হিমু আর আমি একটা প্ল্যান করতেছি GA দিয়ে ছড়া লেখানো যায় কি না৷

তবে তার আগে আরও কিছু ছোট প্রজেক্ট করে হাত মকশো করছি৷ যেমন এখানে যেটা দিলাম, চাইলে ডাউনলোড করতে পারবেন
এখান থেকে৷ আর্টলাইফ আসলে একটা লিমিটেড এনভায়রনমেন্টে বিবর্তনবাদের এক্সপেরিমেন্ট৷ প্রোগ্রামটা চালিয়ে সিমুলেশন শুরু করলে randomly বেশ কিছু খাবারের সোর্স তৈরী হবে (ধরা যাক এগুলো সালফার প্রস্রবন, ছবিতে বেগুনী রঙের) আর শুরুতে বেশ কয়েকটি প্রানী ছেড়ে দেয়া হবে৷ শুরুর প্রানীগুলো বেশ সহজিয়া একটা মাথা, একটা পাকস্থলী, আর একজোড়া পা৷ ওরা চোখ দিয়ে বেশ কিছু দুর দেখতে পারে৷ শুরুতে সবার ক্রোমোজোম ১০ টি করে, প্রত্যেক ব্লকের জন্য তিনটি আর একটা মাস্টার ক্রোমোজোম৷ খাবার খেয়ে একটা পরিমানের বেশী পেট ভরলে প্রানীগুলো বংশ বিস্তার করে, বংশ বিস্তার অযৌন, মানে ক্লোনিং যেমন ব্যাক্টেরিয়া বা এমিবা করে থাকে৷ তবে প্রতি প্রজন্মেই বেশ কিছু জিন এ মিউটেশন হবে (এখানে আমি ঠিক করেছি ১০%, একটু বেশী অবশ্য)৷ মিউটেশন হচ্ছে বিবর্তনের চালিকাশক্তি৷ আর যেহেতু খাবারের উত্স সীমিত ন্যাচারাল সিলেকশন অটোমেটিক শুরু হয়ে যাবে৷ আরেকটা ব্যাপার হচ্ছে বেশ কিছুক্ষন না খেয়ে থাকলে প্রানীগুলো মারা যায়৷

তো এভাবে মিনিটখানেক চালালেই দেখা যাবে এভ্যুলুশন ইন এ্যাকশন৷ কখনও এমন প্রানী তৈরী হয় যাদের অনেক জোড়া পা, এরা খুব দ্রুত এক জায়গা থেকে আরেক জায়গায় গিয়ে খাবার খেয়ে আসে, আরেকদল আবার একাধিক পাকস্থলী বানিয়ে নিয়েছে যাতে একবারে অনেক খাবার খাওয়া যায়, আরেক দল একাধিক মাথা বানিয়েছে যেন অনেক দুর থেকে খাবার খুজে পায় ইত্যাদি৷ সবচেয়ে মজার হচ্ছে এর মধ্যে আরেকদল পা ঝেড়ে ফেলে শুধু মাথা আর পেট নিয়ে জন্মেছে, এবং এরা বেশ সফল, এরা যেটা করছে ঠিক একটা প্রস্রবনের সামনে ঘাটি গেরে খাবার খাচ্ছে আর সংখ্যা বাড়াচ্ছে, যেহেতু নড়াচড়ার দরকার নেই তাই পা বাদ দিয়ে দিয়েছে, সুবিধাটা হচ্ছে ছোট শরীর হওয়ায় খাবার লাগে কম, আর জন্মায় তাড়াতাড়ি ইফেক্টিভলি এরা হচ্ছে একধরনের উদ্ভিদ, আসলে আমার অজান্তেই এগুলো তৈরী হয়েছে৷ আমার ধারনা ছিল সবচেয়ে সফল প্রানী হবে ভীষন জটিল কোনটা, দেখা যাচ্ছে আসলে তা না, বরং অনেকে সরলীকৃত হয়ে বেশী সফল হচ্ছে৷

পরের উইকএন্ডে প্ল্যান হচ্ছে আরো জেনেটিক ডাইভার্সিটি যোগ করা, একই সাথে ওদের সারভাইভাল আরো কঠিন করে দিতে হবে যেন জেনেটিক এ্যালগরিদম আরো সৃজনশীল সমাধান বের করতে পারে৷

No comments:

 
eXTReMe Tracker