الثلاثاء، 12 فبراير، 2013

الحاسوب و التطور



الحواسيب آلات رائعة حقاً فهي معجزة العصر الحديث، بل يمكن القول أنها هي التي جعلته حديثاً. من دون الحواسيب لم نكن لنتمكن من الوصول إلى المعرفة والترفيه التي ننعم بها. لكن ما الذي بالضبط جعلهم بهذه القوة؟


تكمن قوة الحواسيب في قدرتها على معاملة المعلومات لنا. كلما كانوا أسرع أمكننا حل المشاكل والوصول إلى حلول بشكل أسرع. تحسنت الحواسيب عبر السنين وهي الآن سريعة جداً بحيث أمكن حل المشاكل والحسابات التي كانت تأخذ سنين في أجزاء من الثانية، وبسبب نجاحهم المذهل في حل المشاكل، اندمجت الحواسيب في كل ناحية من حياتنا. توجه العلماء خاصة إلى الحاسوب كأداة للبحث في عالم الطبيعة. بل يعتقد العديد بأن الحاسوب يمكن أن يحاكي الطبيعة نفسها، بل حتى الحياة نفسها، فأنشأ العلماء برامج حاسوبية تظهر كيف نمت الحياة وتنافست وتغيرت وبالطبع كيف تطورت أيضاً.


ترتكز وظيفة الحاسوب على لغة مرمزة coded مكتوبة باستعمال أبجدية مكونة من حرفين فقط هما الصفر والواحد. وظيفة الكائنات الحية أيضاً مرتكزة على لغة مكتوبة بالرموز باستعمال أبجدية كيميائية مؤلفة من 4 حروف “A, T, G,  C”. حتى الآن الاختلاف الوحيد بين الكود الوراثي للبشر والكود الثنائي للحاسوب فقط في عدد الحروف المستعملة، والحروف الأكثر تؤدي إلى تعقيد معلومات أكبر.
















في ورقة نشرت من قبل
Lenski وزملاؤه بعنوان "الأصل التطوري للميزات المعقدة" عام 2003 في عدد أيار لمجلة نيتشر. درس الباحثون في هذه التجربة الخاصة 50 مجتمعاً مختلفاً كل منها 3600 فرد. كل فرد بدأ بكود code من 50 سطراً دون قدرة على إنجاز "عمليات منطقية". تمت مكافأة الذين طوروا القدرة على إنجاز عمليات منطقية، والمكافآت كانت أكبر للعمليات التي كانت "معقدة أكثر". بعد 15,873 جيلاً، أنتج 23 جينوماً ذريات قادرة على إجراء العملية الأكثر تعقيداً: أخذ مدخلين وتحديد إذا كانا متكافئين (وظيفة EQU)، [ملاحظة في البرمجة وظيفة function تدعى أحياناً دالة لكن اعتمدنا وظيفة لأنها أنسب]. تراوح طول سطور الكود التي صنعت هذه الأفراد بين 49 إلى 356 تعليمة. النمط السائد النهائي كان أفراداً يحوون 83 تعليمة مع قدرة على إنجاز تسعة وظائف (دوال) منطقية تسمح لهم بكسب زمن حاسوبي أكثر.


مبدئياً يمكن لـ 16 طفرة (تأشيب  recombination)،  مقترنة بـ 3 تعليمات وجدت في السلف الرقمي الأصل،  أن تنتج كائن قادر على إنجاز عملية التكافؤ المعقدة EQU. في الواقع فإن الذي حصل كان أكثر تعقيداً حيث تطورت وظيفة عملية التكافؤ (التساوي) بعد 51 إلى 721 خطوة عبر المسار التطوري، واستعملت الكائنات 17 إلى 43 تعليمة لإنجازها، مع ملاحظة أن نوعاً متطوراً احتاج فقط كوداً من 17 تعليمة- وهو أصغر بتعليمتين من الكود الأكثر فعالية (أي الأقصر) الذي كتبه الباحثون بيدهم كوداً مسبقاً. حتى تطور كود صغير بمقدار 17 سطراً تطلب على الأقل 16 حدث طفرة/تأشيب. في إحدى الحالات، 27 من الـ 35 تعليمة التي استعملها كائن لإنجاز العملية المنطقية اشتقت عبر التأشيب، وظهر الكل عدا واحدة في سطر السلالة (الذرية) قبل بداية إنجاز الدالة المعقدة لأول مرة.


يضم نموذج الباحثين 103 طفرة/تأشيب مفرد، 6 طفرات مضاعفة واثنتين من الطفرات الثلاثية. في المدى القريب كانت 45 من هذه الطفرات مفيدة، 48 حيادية، و18 مضرة. 13 من الخطوات الـ 45 المفيدة أنتجت وظائف منطقية غير معبر عنها من قبل الوالد المباشر. 15 من ال 18 طفرة المضرة جعلت الولد أقل احتمالاً أو ملائمة للتناسل من الوالد. اثنتين من الطفرات المضرة أنقصت ملائمة الأولاد بأكثر من النصف (الملائمة= معدل التضاعف). إحدى هذه الطفرات المضرة جداً، أنتجت ولداً أنتج بدوره بعد خطوة طفرة أعطت بدورها عملية منطقية معقدة.


كل ذلك يبدو مشابهاً لتطور وظيفة برنامج معقدة في كود حاسوبي والعديد اقتنع أن ذلك موازي وقريب جداً لما يحصل في العالم الطبيعي. لكن هناك العديد من العقبات لهذه التجربة. أحدها أن هدف الدالة النهائي كان محدد مسبقاً كما مع داوكنز في تجربته التطورية الحاسوبية "بدا لي كأنه عفريت"– عدا أن هناك فرق هنا في أن كل خطوة ضمن تجربة لنسكي كانت في الواقع فريدة وظيفياً. المشكلة أن هذه الدوال كانت محددة مسبقاً بالتصميم الذكي لتكون مفيدة وظيفياً. البيئة الملائمة كانت معدة لنجاح سيناريو تطوري معين، والذي كان محدد مسبقاً عبر التصميم الذكي. أيضاً نمط الطفرات المستعملة لم يكن عموماً طفرات نقطية، بل ارتكز على مبادلة مقاطع كبيرة حول كود مبرمج مسبقاً ذو هدف. عرف الباحثون أنه مع تأشيبات قليلة نسبياً للكود سنحصل على وظيفة منطقية ذات "تعقيد متزايد". أخيراً، البيئة كانت معدة لإنتاج تغيرات حيث نسبة التغيرات المقيدة مقارنة بالتغيرات الأخرى المحتملة كانت عالية جداً. كما في تطور المقاومة للصادات الحيوية هذه الدالة كانت سهلة لتطوير المقاومة المعطاة المستعملة من قبل العلماء بسبب إعداد الثغرات الحيادية لتكون صغيرة جداً. كان نجاح التجربة أيضاً معتمداً على خطوط مؤسسة مسبقة للكود الذي أعد للعمل معاً لحل المشاكل المنطقية من نمط معين.


أنا أقترح أن هذا الإعداد الخاص لم يكن قادراً على تطوير أنماط من الدوال (الوظائف) الأخرى، مثل القدرة على فتح سواقة قرص ليزري CD أو القدرة على التسبب بجعل الشاشة أن تشعل أو تطفأ. الثغرات المتضمنة ستتطلب أنماطاً مختلفة من تسلسلات الكود البدئية التي قد لا تكتسب بنمط كود التأشيب المستخدم في هذه التجربة. الطفرات النقطية ستكون مطلوبة والثغرات الكبيرة جداً في الوظيفة  يجب أن تعبر قبل أن تكون هذه الوظائف الأخرى واقعية.


باختصار، أظن أن هذه التجربة معدة للنجاح مع هدف محدد جداً ولا تشرح تطور أنظمة وظيفية فريدة غير المستويات الأكثر بدائية. فقد انتهت بإنتاج بعض الحلول "غير المتوقعة" للمشكلة، لكن هذا هو المتوقع. قد يكون هناك العديد من الطرق للتدخل مع تفاعل الصاد الحيوي مع التسلسل الهدف والتي يمكن أن لا تكون متوقعة، لكن نسبة الوظيفة هو ما يهم هنا ومن الواضح أنه عالٍ جداً مقارنة بالتسلسلات الحيادية (40% طفرات مفيدة مقارنة بـ 10% مضرة وفقط 43% حيادية). ضُمن النجاح بالطريقة التي أعد بها المصممون الذكيون تجربتهم . فقد كانوا قادرين لاحقاً على تعريف بيئتهم قبل زمن البدء بطريقة معينة جداً. الوظائف المنطقية التي تطورت كانت معتمدة على البيئة المنتقاة الملائمة والمعدة قبل وقت من قبل شخص معين ID. ماذا لو كان هناك ثغرة بين نمط من وظيفة منطقية ونمط آخر من وظيفة منطقية أخرى؟ مثل الذي بين دالتي (وظيفتي) NAND و EQU المطلوبة لتطور كل من دوال AND أو OR أو NOR أو XOR أو NOT؟ ماذا لو لم يتم التعرف على هذه الوظائف (الدوال) من قبل بيئة معينة على أنها مفيدة؟ عندها سيكون هناك ثغرة حيادية ناشئة عن البيئة بين وظيفتي NAND و EQU. ماهي الأفضليات بأن البيئة "الملائمة" التي تتعرف على واحد على الأقل من هذه الوظائف الأخرى على أنها مفيدة ، ستأتي عند الزمن الملائم؟


أنت ترى، المشي العشوائي لا يضم فقط تغيرات عشوائية في الكود ولكن أيضاً في البيئة. بدون عقل ذكي يوجه التغيرات في البيئة في الطريقة الملائمة فقط، التصنيع العضوي للعديد من المركبات التي صنعت في مخابر الكيمياء لن تعمل. ترتيب التغيرات البيئية هو مهم بأهمية ترتيب الجزيئات في "تطور" الوظائف أو المركبات الجديدة.


فكر لنسكي والعلماء الآخرون بذلك، فأعدوا بيئات مختلفة ليروا أي البيئات ستدعم تطور كل الوظائف المحتمل أنها مفيدة- لتضم وظيفة EQU الأكثر تعقيداً. تأمل الوصف التالي حول ما حصل عندما لم تعرف الخطوات الوسطية المختلفة اعتباطياً من قبل العلماء على أنها "مفيدة".


"في الحال المعاكسة، تطور 50 مجتمعاً في بيئة حيث كوفئت فقط EQU ولم تقوم وظيفة أبسط بإنتاج طاقة. نتوقع بأن EQU ستتطور بشكل أقل بكثير غالباً لأنه لم يتم الحفاظ على انتقاء الوظائف الأبسط التي تقدم الأساسيات لبناء ميزات معقدة أكثر. فعلاً لم يطور أي من هذه المجتمعات EQU، وهو اختلاف كبير جداً عن الجزء الذي كان في البيئة المكافئة للجميع "أي لجميع الوظائف" (P 4.3 x 10-9 Fisher’s exact test). لكن هذه المجتمعات اختبرت أنماط وراثية genotypes أكثر، وسطياً، من تلك التي في البيئة المكافئة للجميع (2.15 x 107 1.22 x 107; P<0.0001. Mann-Witney test)، لأنها تميل إلى امتلاك جينات أصغر، أجيال أسرع وبالتالي تنقلب بشكل أسرع. لكن كل المجتمعات المكتشفة كانت فقط جزءاً دقيقاً من الفضاء الكلي للأنماط الظاهرية. بإعطاء جينوم سلف ذو طول 50 إلى 26 تعليمة ممكنة بكل موقع، هناك ما يقارب 5.6 x 1070 نمط ظاهري، وحتى هذا العدد يقلل من أهمية فضاء الأنماط الظاهرية لأن الطول يتطور." أكثtypesه المجتمعات أنماط وراثية ذي كان في البيئة المكافئة (يات لبناء ميزات معقدة أكثر.المحتمل أنها مفيدة- لتضم وظيفة لن تعمل.


أليس هذا عجيباً؟ الثغرة الحيادية التي تولدت تعيق بنجاح تطور وظيفة EQU. الآن ألا يتسق ذلك مع توقعي؟ هذه التجربة كانت ناجحة لأن المصممين الأذكياء كانوا قادرين على تعريف ما التسلسل أو الوظائف التي كانت "مفيدة" لتطور "كائناتهم". إذا عرفت تسلسلات أو وظائف كافية على أنها مفيدة، عندها فإن هكذا نسبة عالية ستؤدي إلى تطور سريع- كما رأينا هنا. لكن عندما توجد ثغرات حيادية غير معرفة، ستكون مشكلة حقيقية للتطور. في هذه الحالة ثغرة مكونة من 16 طفرة حيادية فقط ستعيق بفعالية تطور وظيفة EQU ( فقط للفضولين، شروط التجربة موضوع في المرجع من قبل المؤلفين).


المشكلة هنا أنه بدون إدخال معلومات إضافية من العقول الذكية للعلماء، فإن التجربة ستفشل.


تتطلب كل أنظمة الوظيفة المعينة متزايدة التعقيد مدخل من مصدر معلومات أعلى مؤسس مسبقاً- سواء أكانت مخزنة في كود وراثي أو عالم بشري. سبب ذلك هو أن الأجزاء المفردة لا تعلم كيف تنظم نفسها بأي اتجاه معين مع الأجزاء الأخرى لتوليد وظيفة معينة عالية التعقيد. بسبب هذا، الأفضل أن الأجزاء يمكن أن تتجمع ذاتياً، بدون مساعدة مصدر معلومات أعلى، بشكل بركة متجانسة أو بنية بلورية متجانسة.


الكثير من الناس يحسبون أن كل التغيرات في الوظيفة متكافئة- بحيث أن أي مثال فعل ما في التطور يمكن أن يشرح باقي التأثيرات الأخرى في الوظيفة. لكن الواقع هي أن هناك مستويات مختلفة من التعقيد.


بعض التغيرات تتحقق بشكل أسهل من الأخرى. لكن أي تغير يكلف ثمناً ما. هذا الثمن يدعى الأنتروبية (الفوضى) entropy. إنتروبية نظام هو وصف قابلية النظام على القيام بعمل مفيد. بكلمات أخرى هو وصف لعدم التوازن أو عدم التجانس. مثلاً، لنفترض صندوقين A و B. يحتوي كلا الصندوقين جزيئات غازية. الجزيئات في الصندوق B أسخن وبالتالي تتحرك أسرع. إذا سمح لهما بالامتزاج، يولد عدم التوازن تدرجاً يمكن أن يستعمل لإنجاز عمل مفيد. مثلاً، حركة الغاز من الصندوق ب إلى الصندوق أ يمكن أن يستعمل لتدوير مروحة وتوليد طاقة كهربائية. لكن عندما نصل إلى التوازن، لا تدور المروحة بعد ذلك. عند التوازن، يقال أن أنتروبية النظام أصبحت أعظمية. إحصائياً، من الممكن لجزيئات الغاز، ببعض الصدف العشوائية، أن يحصل لجزيئات منها ارتداد بحيث تعود كلها في الصندوق B وتدور المروحة بحركتهم. هذه الحقيقة ممكنة لكن هل هي محتملة؟ فالإنتروبية إذاً وصف لاحتمالية العمل. مثال أبسط، قطرة من الماء من وعاء سمك يمكن أن تنظم طاقتها الجزيئية بحيث تصطف وتمشي خارج وعاء السمك وتقفز من الوعاء إلى الطاولة. هذا الحدث ممكن إحصائياً لكن  تعمل قطرة الماء الخاصة معاً بهذا الأسلوب بعيد الاحتمال جداً – وفق قوانين الأنتروبية.


وبالتالي وفقاً لقانون الأنتروبي، تميل كل تغيرات الطبيعة غير العقلانية إلى التوازن- أو الحالة الأخفض من عمل محتمل ممكن. كيف إذاً تحارب الأحياء النظام؟ تنمو الأنظمة الحية لتحافظ على عدم التوازن أو حالة منخفضة من الأنتروبية. تتحرك الأنظمة الحية وتعمل بشكل ثابت دون خسارة القدرة على العمل. حقيقة فإنها غالباً كلما زادت قدرتها على العمل زاد ما يمكن أن تعمله. أليس ذلك ضد قانون أساسي للطبيعة؟ ذلك متوقع انطلاقاً من حقيقة أن العمل المنجز من قبل الأنظمة الحية يتم بثمن أنتروبي للبيئة المحيطة أو "النظام". تزيد أنتروبية الكون في كل وقت تحك إذنك أو تطرف بعينك. لكن عندما يموت الكائن الحي، لا يحافظ على نفسه بعدم الانتظام. لا تحارب بعد ذلك قانون الأنتروبية. أحجار بناء الجمل الحية تبدأ مباشرة بالتقكك فتصبح متوازنة كل مع الأخرى لتشكيل مستنقع (بركة) متجانس. الأنظمة الحية فريدة إلى حد ما في كونها قابلة باتساق على أخذ هذا المستنقع المجانس واستعماله لتشكيل أنظمة غير متجانسة قادرة على العمل. كيف تفعل الأنظمة الحية ذلك؟ هي مبرمجة على فعل ذلك بكود موجود مسبقاً من المعلومات بشكل مشابه كثيراً للحواسيب المبرمجة على محاربة الأنتروبية.


تولد الحواسيب عدم تجانس كما الأنظمة الحية تماماً. فهي تولد ترتيباً order من فوضى واضحة. يمكن أن تبرمج لتنظيم أحجار البناء غير المرتبة (المجانسة) بحيث تعمل وظيفة. نفس أحجار البناء يمكن استعمالها لبناء منزل أو سيارة. لا تعلم الحواسيب هذا. فهي مبرمجة على استعمال أحجار البناء لبناء فقط ما يقال لها أن تبني. نفس ذلك صحيح بالنسبة للأنظمة الحية. تبني الأنظمة الحية ما تقول لها الدنا الخاص بها. الحقيقة هي أن نفس أحجار البناء الأساسية تستعمل في كل الأنظمة الحية، لكن الخلية الفرد تعرف فقط ما يقول لها الدنا الخاص بها. عندما تتمايز، خلية مفردة في أصبع قدم السلحفاة تعرف فقط كيف تستعمل أحجار البناء لعمل أجزاء إصبع قدم السلحفاة. السؤال بالطبع، هل يمكن للحواسيب أو الأنظمة الحية أن تبني أنظمة مرتبة تعمل بشكل فريد بعيداً عن برمجتها الأساسية؟


لا أحد يشكك فكرة أن التغير يحصل. التغير واضح، لكن هل يمكن أن يعمل قانون طبيعة غير عاقل بحيث يميل دائماً نحو التوازن لينتهي بالعمل ضد نفسه بالمساهمة في تأسيس طرق جديدة وفريدة لإنقاص التوازن؟ هل هناك أي يعمل قانون طبيعة بحيث يحدث برنامج حاسوب أو عتاد hardware دون الحاجة إلى الإبداع البشري الذكي؟ نحن نعرف أن البناء الوراثي (البرنامج software) لكل المخلوقات "يتغير" على أرض الواقع. برنامج الكائنات الحية يتغير. كيف يحصل ذلك؟ هذه التغيرات ليست جزءاً من رزمة البرنامج نفسها. يشار إلى تغيرات قانون الطبيعة بالطفرات العشوائية في برنامج الكائنات الحية. إذا سمح لها بالاستمرار دون تحقق، تميل هذه الطفرات إلى تجانس غير وظيفي. بنفسها، يمكن أن تزيد هذه الطفرات ترتيباً معيناً أو تعقيداً وظيفياً لرزمة البرنامج- لكن فقط بطريقة محدودة جداً. بنفس الطريقة يمكن لعدة جزيئات من الماء في نهر أن تجري صعوداً للحظة، لكن ليس طويلاً وبطريقة غير مهمة. لماذا؟ لأنها تتبع قانون الطبيعة للأنتروبية. الطفرات في أي نظام تميل عموماً إلى التجانس العشوائي، عدم الانتظام، عدم الوظيفية، أو عدم القدرة على العمل. نادراً ما تحصل طفرة أو اثنتين لنحصل على وظيفة جديدة ومفيدة ذات تعقيد زائد- لكن دائماً هذه الوظائف الجديدة من المستويات الدنيا للتعقيد الوظيفي. مثلاً رغم أن وظائف بسيطة جداً مثل مقاومة الصادات وحتى تطور أنزيمات بروتينية مفردة فريدة (مثل اللاكتاز أو النيلوناز) تتطور في زمن حقيقي، لكن ذلك لا يعمل على النظام متعدد البروتين ذو المستوى الأعلى حيث كل بروتين يعمل معاً بنفس الوقت في توجه معين مع البروتينات الأخرى فلا يلاحظ تطوره. مثل هذه الأنظمة متعددة البروتينات موجودة في كل مكان، مثل أنظمة الحركة الجرثومية (مثل السياط) ولم تلاحظ بعد أنها تطورت. كما قطرة الماء التي تمشي خارج وعاء السمك، فإنه من الممكن إحصائياً لطفرة مفرطة hypermutation أن تولد أنظمة جديدة ومذهلة، لكن لم يحصل ذلك أبداً بعيداً عن المستويات المنخفضة من التعقيد الوظيفي. تتبع الطفرة المفرطة قوانين زيادة الأنتروبية تماماً مثل الجزيئات الغازية في الصندوقين A و B حتى يتحقق التوازن. الموت هو الهدف النهائي للطفرة المفرطة. لا يمكن لأي كائن حي أن يتحمل طفرة مفرطة مدة طويلة.


لكن يفترض بالانتقاء الطبيعي أن ينقذ ذلك- فهل يقوم بذلك؟ الانتقاء الطبيعي هو عملية حيث تنتقي الطبيعة تغيرات البرامج تلك التي تنتج عتاد hardware أكثر ثباتاً وتكاثراً معطياً بيئة خاصة وتنبذ تلك التي لا تنتج ذلك. بهذه الطريقة، تعامل الطفرات العشوائية التي لا تؤدي إلى التجانس بإرشاد قوة الانتقاء الطبيعي نحو تنوع في الوظائف التي تبتعد عن التجانس. يفترض أن يكون الانتقاء الطبيعي قوة مذهلة. ويفترض أن يكون قابلاً على تخريب قانون أساسي في الطبيعة بتحويل المستنقع المتجانس عديم المعنى والعمل والوظيفة إلى أنظمة عاملة أكثر تنوعاً مرة بعد أخرى. كيف يفعل الانتقاء الطبيعي ذلك؟ يقال عن الانتقاء الطبيعي أنه يعتمد على الاحتمالية الإحصائية. مثلاً لنقل أنه فقط تغير واحد من مليون تغير برنامج أو طفرة واحدة من مليون طفرة تعد مفيدة. إذا تم كشف هذه الفائدة من قبل الطبيعة، أو أي قوة انتقاء أخرى فإن الأشياء يمكن أن تتحسن عبر الزمن. إحصائيات الصدفة العشوائية، عندما تندمج مع قوة انتقائية تنزع إلى تفضيل تنظيم أعلى بدلاً من عدم الانتظام. السؤال الذي يطرح نفسه، إذا كان الانتقاء الطبيعي يعمل نحو جودة تحسين برمجية الكائنات الحية، إذاً لماذا لا يستعمل لتحسين برمجيات الحاسوب أيضاً؟ هذا السؤال يبدو معقولاً باعتبار أن كلاً من النظامين لهما لغة مرمزة متشابهة. إذا عمل الانتقاء الطبيعي مع أبجدية فيجب أن يكون قادراً بسهولة على العمل مع الأبجدية الأخرى. لكن هذا لا يحصل لا مع الحواسيب ولا برمجيات الكائنات الحية بعيداً عن المستويات المنخفضة من التعقيد الوظيفي. لم لا ؟


من الواضح أن الانتقاء الطبيعي لا يمكن أن يقرأ اللغة المرمزة للحواسيب أو الكائنات الحية. الانتقاء الطبيعي لا يمكنه أن يرى أبجدية أي من النظامين. الانتقاء الطبيعي قادر فقط على انتقاء تغيرات العتاد hardware أو التغيرات في وظيفة العتاد. لكن أليست وظيفة العتاد (الهاردوير) مرتكزة على البرمجية (سوفت وير)، أليس تغير البرمجية هو الذي يؤدي إلى تغير وظيفة العتاد (الهاردوير)؟ نعم ولا. وظيفة العتاد (الهاردوير) مرتكزة تماماً على البرمجيات لكن هذا الأساس معتمد على انتظام معين للأجزاء. ليست كل الانتظامات لها نفس الوظيفة، جزء قليل جداً من الانتظامات لديه وظيفة مفيدة. المعنى الوظيفي لجزء معين هو اعتباطي تماماً- كما أن معنى كلمة ما مرتبط اعتباطياً بسلسلة من الرموز تدعى حروف. من دون هذا الارتباط الاعتباطي، الحروف نفسها لا تعني شيئاً وليس لها وظيفة. نفس الشيء صحيح بالنسبة للبيت والبايت في الحاسوب ومن أجل الكود الوراثي في الكائنات الحية. وبالتالي إذا تغيرت الرموز أو حدث لها طفرة إلى شيء لا يملك معنى أو وظيفة مرتبطة به اعتباطياً عندها لا يوجد وظيفة مميزة. لا يوجد نمط ظاهري معبر عنه. من دون نمط ظاهري phenotype، فهي غير مرئية لعملية الانتقاء الطبيعي. كل التغيرات اللاحقة للكود هي "حيادية neutral" ومن هنا فهي معتمدة على قوانين الصدفة العشوائية لوحدها. هذا يقود دائماً إلى تجانس عديم الحياة. إذاً ما الأفضليات التي ستجعل الصدفة العشوائية تحارب قانون زيادة الأنتروبية و "العمل"؟ ما الأفضليات التي تجعل قطرة الماء ترقص في حوض السمك؟


لم تزل غير مقتنعاً بعد؟ دعنا نلقي نظرة قريبة على لغات الحواسيب والكائنات الحية. أعدت لغة الحاسوب باستعمال أنظمة من بتات bits وبايتات bytes. البيت هو صفر أو واحد. ثمانية بيتات متسلسلة هي بايت. مثلاً السلسلة 10101010 هي بايت. إذا قورن البيت بحرف في اللغة الانكليزية، فإن البايت يقارن بكلمة. الحاسوب يقرن معاني مختلفة لـ"كلمات البايت". هذه الاقترانات للمعنى أو الوظيفة اعتباطي، كما في أي لغة رمزية (وكما كان مع تجربة لنسكي حيث عرفت الوظائف المختلفة اعتباطياً على أنها "مفيدة"). نفس الشيء في الكلمات الوراثية في الأنظمة الحية. وبالتالي بايت مفرد يمكن أن يرتبط مع معنى حرفي أو رقمي مثلاً حرف “A”. من أجل سلسلة من 8 بيتات، هناك 256 احتمالاً مختلفاً من المشاركات. هذا يعني أن بايت الحاسوب يمكن أن يمثل حتى 256 وظيفة مميزة منفصلة. كل من هذه الكلمات ستمتلك تعريفاً مميزاً منفصلاً في قاموس الحاسوب الاعتباطي للكلمات.


نفس الشيء صحيح لأي نظام حي. كل كلمة وراثية في الدنا ذات تعريف اعتباطي مرتبط بها من قبل الكود الوراثي. لكن بدلاً من أن يكون هناك 8 أحرف للكلمة المعرفة، الكود الوراثي يتعرف فقط على كلمات من ثلاثة حروف تدعى "كودونات". بما أن هناك أربعة حروف وراثية في الدنا بدلاً من اثنين في لغة الحاسوب، هناك حتى 64 كودوناً مُعَرفاً مختلفاً في الكود الوراثي. عملياً فإن الكود الوراثي يعطي عدة كودونات نفس التعريف وبالتالي هناك بعض الحشو، لكنه عملياً ذو قدرة على التعرف حتى 64 تعريفاً مختلفاً.


وبالتالي إذا أعطى حاسوب كوداً لتعريف وظيفة منفصلة لكل واحد من الـ 265 بايت الممكن في قاموسه، فإن تغيراً واحداً في أي بايت معطى سينتج تغيراً ملحوظاً في الوظيفة. إذا كان هذا التغير مرغوباً، سيحافظ عليه في حين أن التغيرات الأخرى ستهمل. التطور سيكون بذلك عملية بسيطة وسريعة نسبياً. المشكلة هي أن الحاسوب يحتاج إلى أكثر من 256 وظيفة منفصلة بل حتى النظام الحي الأبسط يحتاج أكثر من 64 وظيفة منفصلة. كيف نحقق ذلك؟ ماذا إذا استعملت عدة كلمات لترميز التعريفات الفريدة الأخرى؟ ماذا إذا انضم بايتين معاً لإعطاء تعريف فريد مكتمل من قبل الحاسوب؟ كم ستصبح الوظائف الممكنة؟ سيكون هناك 65,536 وظيفة معرفة محتملة مختلفة والتي سيتم تمييزها في قاموس الحاسوب.


هذا ما يحصل في الواقع. تربط الأكواد الحاسوبية معانٍ اعتباطية بالبايتات المتعددة. بالعكس لغة الدنا للكائنات الحية تترجم إلى لغة أخرى تدعى بروتينات. لغة البروتين مرتكزة على أبجدية من 20 حرفاً تدعى الحموض الأمينية. البروتين يتوضع في ترتيب خطي كما هو مملى عليه بتسلسل الكودونات الخطي في الدنا. هذا البروتين يمكن أن يكون طويلاً جداً، مئات أو حتى آلاف الحموض الأمينية "الحروف" وهو مرتبط بمعنى اعتباطي من قبل النظام الخاص الذي يتلاءم معه. بسبب العدد الكبير من البروتينات الممكنة لطول معين، ليس كل بروتين ذو وظيفة معرفة أو مفيدة في شكل حي معطى أو نظام لوظيفة تعمل في بيئة معينة. بالطبع هذا يعني أنه ليس كل تغير في تسلسل الدنا وبالتالي في البروتين سيؤدي إلى تغير مفيد في وظيفة النظام. نفس الشيء صحيح للحواسيب. بسبب مشاركات البايتات المعرفة في لغة الحاسوب، من الممكن أن تكون بعض المشاركات للبايتات غير معرفة على أنها "مفيدة". إذا حصل ذلك للتطور بالطفرة العشوائية، لا تنتج  تغير لأعلى سلم التعقيد الوظيفي.












لتصوير هذه النقطة اعتبر أنه في الأنظمة الحية كل  واحد من الـ 64 كودون يرمز واحد من الـ20 حمض أميني فقط. يمكننا الآن أن نرسم حاسوب موازي وتخيلي حيث كل كود من 256 بايت ترمز إحدى الـ 26 حرف من الأبجدية الانكليزية، وفراغ ونقطة لجعلها فقط 28 محرف ممكن. الآن لنتخيل حاسوباً يعرف الوظائف وفقاً للكلمات الانكليزية أو الجمل بطول وسطي من 28 محرف. كم تعريف وظيفي مختلف سيتوفر لهذا الحاسوب؟ الجواب هو كبير جداً 3 x 1040 لكي نفهم هذا العدد، فإن الجينوم البشري يحتوي فقط حوالي 35000 حينة. هذا يعني أنه  لتوليد إنسان وظيفي بشكل كامل يتطلب ذلك أقل من 35,000 بروتين معرف بشكل فريد. إذا تطلبت وظيفة ما فقط بروتين واحد بطول 100 حمض أميني وسطياً فسيكون هناك 1 × 10130 بروتيناً مختلفاً محتملاً يمكن أن يستعمل (أي 1 مع 130 صفر). لكن أنظمة "البشر" تتعرف فقط على الجزء الأصغر من هذه الاحتمالات. ونفس الشيء صحيح من أجل أنظمة الحاسوب.


لنقل أن حواسيبنا تتعرف على 1,000,000 أمر منفصل مكتوب من مستوى وظيفة طولها 28 محرفاً إنكليزياً. بداية لأمر command مميز، كم الطول الذي يأخذه كي يتطور أي أمر مميز آخر بمستوى الوظيفة إذا تم تجريب أمر مختلف كل ثانية؟ أترى المشكلة البدئية؟ إنه أمر واحد مميز. إذا تغيرت كلمة مميزة، فلن تصبح مميزة بعد ذلك. ستصبح دون وظيفة. دون وظيفة مُعَرفة، لن يكون هناك دليل أو قوة قائدة في مستقبل أي من تغيرات الكلمة. التغيرات من هنا معتمدة على نحو تام على الفرصة العشوائية وحدها (لذلك يدعى تطور "حيادي"). إحصائيات الرمي العشوائي تقول أنه وسطياً ستأخذ 3 × 1026 سنة أو مئة ألف تريليون تريليون للوصول إلى كلمة أخرى يتم التعرف عليها على أنها "وظيفية". دون المسلك الوظيفي في كل خطوة في الطريق، فإن هذه الثغرة الحيادية تعيق قوة الانتقاء الطبيعي للانتقاء وبالتالي تعيق هذه الثغرة التغير في جملة مفيدة إلى أي جملة مفيدة أخرى من مستوى تعقيد معين.


كذلك الحواسيب غير قادرة على تطوير برامجها الخاصة غير المستويات الأبسط للوظيفة (كما قلنا سابقاً) دون مساعدة تصميم ذكي من علماء الحاسوب. الحواسيب معتمدة دائماً على برمجة خارجية من أجل أي تغير في الوظيفة يجعلها تصعد في سلم التعقيد. الحاسوب لا يمكن أن يطور برنامج جديد أو يفعل أي شيء غير برمجته الأصلية. لماذا؟ لأنه إذا أمكن للمنتقي أن ينتقي بناء على الوظيفة، عندها ليصعد سلم التعقيد الوظيفي، سيعمى المنتقي بثغرات التغيرات الحيادية في الكود مما لا يعطي المنتقي دليلاً على أن التغيرات أخذت مكانها على عكس التغيرات "الأفضل" و"الأسوأ" التي ليست كالتغير "الحيادي".


أنا أقترح أن نفس المشاكل موجودة عندما نأتي إلى التطور

الدارويني في الكائنات الحية. الطبيعة لا يمكنها أن تنتقي فقط

على ما ترى. ما تراه الطبيعة هو الوظيفة- وليس كود اللغة

الكامن وراءها أو الرموز الجزيئية في الدنا نفسها. الثغرات

الإحصائية بين الكلمات المميزة في قاموس نظام حي ضخم.

الثغرات هائلة جداً، حتى الآن الدليل التطوري الأفضل المثبت

في المخبر يصف التغيرات المنفصلة فقط بواحد أو اثنين أو

ثلاثة حموض أمينية ممكنة. من دون تجارب أو نقاش إحصائي

لشرح هذه المشاكل، النظريات التطورية في مشكلة حقيقية

عندما تحاول شرح وجود وظائف حاسوبية أو بيولوجية معقدة

تنشأ فوق الدوائر الدنيا على سلم تعقيد وظيفي معين.


refrence

http://www.detectingdesign.com/computerevolution.html

1.     Gelehrter, Thomas D. et al. Principles of Medical Genetics, 1998
.http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1683258/

2.     Lemonick, M. Gene Mapper, Time, Vol. 156, No. 26, pp110, 2001.

3.     B.G. Hall, Evolution on a Petri Dish.  The Evolved B-Galactosidase System as a Model for Studying Acquisitive Evolution in the Laboratory,   Evolutionary Biology, 15(1982): 85-150.

4.     Lenski, Richard, Ofria, Charles, Pennock, Robert and Adami, Christoph. "The evolutionary origin of complex features." Nature, 8 May 2003, vol. 423,  p.130.

  http://www.ncbi.nlm.nih.gov/pubmed/12736677


هناك تعليق واحد: