همگام سازی: سماع عرفانی طبیعت

از نظر گشته نهان ای همه را جان و جهانبار دگر رقص کنان بی‌دل و دستار بیاگاهی اوقات اتفاقات ساده ای در اطراف ما می افتد که براحتی از کنار آن ها می گذریم اما از دید یک دانشمند این اتفاقات نمی تواند بدون دلیل باشد! مثال معروف آن سیب نیوتون است. اینجا می خواهم تعدادی مثال ساده بزنم! تا به حال به این دقت کرده اید که یک جمعیت بسیار بزرگ براحتی می توانند با هم به صورت هماهنگ دست بزنند؟ قدری مکث کنید! این آدم ها قبلا با هم هماهنگ نکرده اند و آموزش خاصی هم ندیده اند اما یک جمعیت ده هزار نفری هم براحتی می توانند بعد از چند ثانیه، دست زدن های (یا پا زدن های) هماهنگ انجام دهند!اما گاهی این اتفاقات ساده فرم های عجیب تری می گیرند که دیگر نه تنها دانشمند که آدم عادی را هم دچار تعجب و حیرت می کند. مثال حیرت انگیز آن که احتمالا هم ندیده اید کرم های شب تاب هستند. کرم های شب تاب در شب چشمک می زنند اما در نقاطی از زمین دسته های بزرگی از آن ها در شب بر روی درختان جنگل پرواز می کنند و شما شاهد هزاران کرم شب تاب می شوید که همزمان با هم چشمک می زنند! چطور چنین چیزی ممکن است؟ چگونه یک کرم شب تاب این سوی جنگل دقیقا با کرم شب تابی صدها متر آن طرف تر همزمان چشمک می زند؟ یک ویدویو از این پدیده جالب را در زیر می توانید ببینید. https://www.aparat.com/v/5EH6C این موضوع برای تقریبا یک قرن یک معما بود تا اینکه در سال ۱۹۹۲ گروهی از دانشمندان آمریکایی با بودجه ای تحقیقاتی شروع به مطالعه این پدیده کردند. اما بزودی رسانه ها شروع به مسخره کردن این حرکت با تیتر هایی همچون: “پول های مالیاتی شما کجا می روند؟ مطالعه کرم شب تاب های بورنیو!” در روزنامه ها کردند. اما در نهایت نتایج جالبی از این تحقیقات بیرون آمد.هر کرم شب تاب یک ساعت طبیعی درونی دارد و هر زمان که این ساعت بر روی مثلا ۱۲ قرار می گیرد یک چشمک (فلش) می زند!و به جای اینکه هر کرم شب تاب با تمام کرم های دیگر هماهنگ کند هرگاه هر کرم شب تاب یک همسایه می بیند که دارد چشمک می زند عقربه خودش را قدری به سمت ۱۲ هل می دهد تا به روند چشمک زدن او نزدیک تر شود.همین قانون بسیار ساده به تنهایی منجر به هماهنگی کل کرم های شب تاب می شود! اما همیشه جزییات هستند که مهم می شوند (The devil is in the detail)کمی فنی تر شویم!اما جزییات ریاضی بسیاری در این پدیده که یک نوع خودسازماندهی (self-organization) در یک سیستم دینامیکی است،‌ دخیل هستند که این جا بیشتر آن را بررسی می کنیم.می توان یک جمعیت بزرگ به اندازه N از کرم های شب تاب را در نظر گرفت که ازین به بعد به آن ها نوسان کننده (oscilator) می گوییم. هر نوسان کننده دقیقا مانند ساعت بالاست یعنی یک زاویه یا به زبان ریاضی فاز دارد. فاز را با تتا نمایش می دهد. آهنگ تغییرات تتا همان فرکانس می باشد (یعنی با چه سرعتی در هر ثانیه می چرخد). به زبان ریاضی:معادله ۱در ابتدا این فرکانس های w_i‌به صورت تصادفی (بر اساس مثلا یک توزیع احتمال) هستند. یعنی در ابتدا این کرم های شب تاب فقط با آهنگ های مخصوص خود که مستقل از بقیه است چشمک می زنند.اما گفتیم این فرکانس در عمل نمی تواند ثابت باشد بلکه بر اساس دیگر نوسان کننده ها تغییر می کند. یعنی هر نوسان کننده میزان فرکانسش را به همسایه خود نزدیک تر می کند. روش های زیادی برای مدل کردن این تصویر کلی وجود دارد اما یک مدل معروف در این زمینه مدل kuramoto است. در این مدل آهنگ فاز هر نوسان کننده بر اساس فاصله ی این نوسان کننده از دیگران تغییر می کند. این فاصله بر اساس سینوس تفاوت فاز ها مشخص می شود(قدری درنگ کنید و به این فکر کنید چرا تابع سینوس برای فاصله انتخاب شده است). همچنین باید در نظر داشت که هر نوسان کننده فقط یک نوسان کننده دیگر را نمی بینید بلکه (فعلا) همه آن ها را میبیند. پس باید میانگین همه دیگر نوسان کننده ها را در نظر گرفت. به زبان ریاضی:معادله ۲یک پارامتر دیگر هم در کار است: K به پارامتر اتصال (coupling) شناخته می شود و نشان دهنده این است که چقدر نوسان کننده ها بر روی هم اثر می گذارند. یک تصویر از این نوسان کننده ها را در زیر می بینیم. شما می توانید هر یک را دقیقا مانند یک کرم شب تاب ببینید. (یک نمایش فوق العاده را هم می توانید اینجا ببینید)اگر تعداد نوسان کننده زیاد باشد و در ابتدا بر اساس توزیع تصادفی از فرکانس ها شروع به چشمک زدن بکنند و K کوچک باشد همگام سازی رخ نخواهد داد. اما اگر K به اندازه کافی بزرگ باشد این اتفاق در نهایت رخ می دهد. K_c مقدار بحرانی K است که بعد از آن پدیده همگام سازی رخ می دهد.اگرچه این مدل می تواند همگام سازی را نشان دهد اما از واقعیت فاصله دارد. همانطور که در مثال کرم های شب تاب دیدیم این موجودات نمی توانند تمام دیگر کرم ها را ببینند بلکه فقط یک همسایگی کوچک را می بینند. به این ترتیب به جای میانگین گرفتن بر روی همه دیگران فقط همسایه ها را در نظر می گیریم.معادله ۳که در آن V(i) نزدیک ترین همسایه ها برای نوسان کننده i نشان می دهد و سیگما پارامتر اتصال است.در نهایت به یک تعریف دیگر نیاز داریم. برای آنکه بدانیم چقدر نوسان کننده ها با هم هماهنگ هستند نیاز به یک متر داریم. برای این کار می توان میانگین فازها را به صورت زیر درنظر گرفت:معادله ۴این میانگین تجربی عددی بین صفر و یک است و هر قدر به یک نزدیک تر باشد نشان دهنده هماهنگی (چشمک زدن همزمان) بیشتر است و هر قدر به صفر نزدیک تر باشد نشان دهنده پراکنده تر بودن و ناهماهنگ بودن بیشتر است. مثال آن را می توانید در شکل زیر ببینید.همانطور که می بینید در شکل a فازها پخش تر هستند و میانگین آنها تقریبا همدیگر را خنثی می کند و نتیجه به صفر بسیار نزدیک است اما در b فازها در یک بخش تجمع کرده اند و میانگین به یک بسیار نزدیک تر است.کرم های شب تاب چطور کنار هم قرار گرفته اند؟اما شاید مهمترین سوال این باشد که کرم های شب تاب چطور کنار هم قرار گرفته اند؟ منظور از قرار گرفتن این است که این حشره ها با هم ارتباط دارند و منظور از ارتباط این است که آن ها به هم نگاه می کنند و بر اساس آن چشمک زدن خود را تنظیم می کنند. اگر ارتباط کرم های شب تاب را به صورت یک گراف یا شبکه در نظر بگیریم نخست باید بدانیم هر کرم شب تاب با تمام بقیه کرم ها ارتباط ندارد چون آن ها نمی توانند بیشتر از فاصله مشخصی را ببینند. ارتباطات آن ها بیشتر محلی است. وقتی بیشتر روی موضوع تحقیق شد مشخص شد که قضیه بسیار جالب تر از یک شبکه بزرگ با ارتباطات محلی است.مطالعه بر روی شبکه های پیچیده (شبکه هایی با تعداد زیاد نود) نشان داد که شبکه ها در مقیاس بزرگ مانند یک ارگانیسم از قوانین آماری مشخصی پیروی می کنند. یکی از مهمترین خاصیت این شبکه ها این است که بیشتر نود ها همسایه هم نیستند اما نود های همسایه ی هر نود دلخواهی به احتمال زیاد خودشان با هم ارتباط دارند. چنین ویژگی ای منجر به ارتباطات محلی می شود! خاصیت بعدی این است که در این شبکه ها فاصله هر دو نود دلخواه بسیار کوتاه است! این قدری عجیب به نظر می رسد اما در واقع به خاطر خاصیت ارتباطات چگال محلی و ارتباطات بین خوشه ها ممکن است. به این شبکه ها شبکه های جهان-کوچک (small-world network) می گویند. به صورت فرمال تر در شبکه های جهان-کوچک اگر فاصله بین هر دو نود دلخواه L باشد این فاصله فقط به صورت لگاریتمی با تعداد نود های شبکه رشد می کند! به عبارت دیگر:معادله ۵ اما نکته جالب اینجاست که شبکه های جهان-کوچک همه جا هستند! شبکه های اجتماعی، شبکه پروتیین ها، اینترنت و حتی مغز انسان جهان-کوچک هستند! مثلا در زمینه شبکه های اجتماعی خاصیت کوتاه بودن مسیر به این معناست که شما می توانید با هر شخص دیگری بر روی یک شبکه ی اجتماعی از طریق تعداد بسیار کمی افراد میانیوصل شوید (دوست دوست دوست) مثلا در فیس بوک این عدد به صورت متوسط ۶ نفر است.خاصیت دیگری که این شبکه ها دارند scale-free بودن آن هاست. این بدان معناست که مهم نیست شما در چه حد در شبکه زوم کرده باشید جز در آن شبیه به کل است! دقیقا مانند کلم بروکلی! این خیلی یاد آور فراکتال هاست. دلیل این ویژگی این است که در این شبکه ها توزیع درجه ی نود ها از توزیع power law می آید. به عبارتی اگر نسبت گره هایی که درجه ی k دارند P(k) باشد. در این صورت:معادله ۶ که گاما در این جا عددی بین دو و سه است. اما مهمترین چیزی که در بین همه این شبکه ها مشترک است این است که این شبکه ها مصنوعی نیستند! به عبارتی این ها خواص شبکه هایی هستند که به صورت طبیعی در طبیعت ایجاد و تکامل می یابند. آن ها بیشتر شبیه به ارگانیسم های زنده ای هستند که در نهایت به این خواص می رسند تا شبکه هایی که به صورت مصنوعی بر روی یک کامپیوتر ایجاد می شود.اما این ها چه ربطی به موضوع اصلی دارد؟ در واقع پدیده همزمانی نمی تواند براحتی اتفاق بیفتد مگر آنکه شبکه ای که بستر ایجاد آن است از نوع جهان-کوچک باشد! دلیل این موضوع خاصیت دیگری از این شبکه هاست. در این شبکه ها به علت ارتباطات محلی و بین خوشه ای سرعت انتشار اطلاعات بسیار بالاست. مطالعات زیادی در مورد خاصیت همزمانی در شبکه های ساده متشکل از حتی دو نود تا شبکه های منظم مانند lattice ها انجام شده است. به طور مثال در lattice‌ ها همزمانی نه به صورت کامل بلکه به صورت محلی اتفاق می افتد. یک نمونه آن را در ویدیو زیر بر روی یک مکعب سه بعدی می توان دید: https://www.aparat.com/v/cuhMi اما شبکه های جهان کوچک در زمینه همگام سازی از همه شبکه های دیگر موفق تر هستند. اگر چه این شبکه ها به صورت طبیعی ایجاد می شوند اما ریاضیدانان کم کم راه هایی برای ساختن آنها به صورت مصنوعی یافتند. در اینجا دو مدل مهم آن ها را معرفی می کنم.مدل Erdős–Rényi: این مدل بسیار ساده گرافی را توصیف می کند که هر گره با احتمال p به هر گره دیگر متصل است و در غیر این صورت ارتباطی وجود ندارد. این شبکه دارای خاصیت خوشه بندی نیست فقط گره ها در آن با احتمال مشخصی به هم متصل هستند. و توزیع گره ها در آن ها به جای power law بیشتر شبیه توزیع پواسون است.مدل Barabási–Albert model: در این مدل ابتدا یک شبکه از m نود داریم که به هم متصل هستند سپس شروع به ایجاد اتصالات جدید می کنیم. احتمال اتصال به هر نود متناظر است با نسبت درجه آن. یعنی نود هایی که به نود های بیشتری متصل شده اند با احتمال زیاد باز هم لینک های جدیدی به آن ها متصل خواهد شد. دقت کنید این صرفا یک احتمال است همیشه لینک های تصادفی جدیدی ایجاد می شوند. به عبارتی احتمال اتصال هر نود به نود i برابر است با:معادله ۷ این مدل منجر به شبکه ای می شود که دارای توزیع درجاتی است که از power law پیروی می کند اما خاصیت خوشه های محلی ندارد.مدل Watts–Strogatz model: این مدل در پی ایجاد شبکه ای است که دارای خاصیت خوشه های محلی است و برای اینکار دنبال چیزی بین lattice که بسیار منظم است و گراف تصادفی Erdős–Rényi است. این گراف ابتدا با یک گراف منظم مانند چپ ترین شکل زیر آغاز می کند و سپس برخی از لینک ها را قطع و دوباره به صورت تصادفی به نود دیگری وصل می کند. این کار را می توان آنقدر ادامه داد که کاملا یک گراف تصادفی داشت اما در میانه راه گرافی که به وجود می آید خاصیت جهان کوچک دارد. به این معنا که خوشه هایی در آن شکل می گیرد. مدل watts-strogatz می تواند منجر به شبکه هایی با خاصیت خوشه بندی محلی شود اما توزیع درجه های آن برخلاف شبکه های طبیعی از قانون power law پیروی نمی کند.مانطور که دیدید هیچ کدام از این مدل های مصنوعی به صورت دقیق نمی تواند آنچه در طبیعت رخ می دهد را شبیه سازی کنند. اما تنها با مطالعه همین شبکه ها هم می توان چیزهای زیادی در مورد شبکه های طبیعی فهمید.شبیه سازیشبیه سازی را در زبان متلب انجام می دهیم. دلیل این کار نحو ساده متلب است.ابتدا شبکه ErdosRenyi را ایجاد می کنیم. اینجا برای نمایش گراف از ماتریس همسایگی استفاده می کنیم.برای ایجاد گراف Barabasi Albert به صورت زیر عمل می کنیم.با تابع کمکی DisconnectNodes به صورت زیر:و همچنین گراف watts strogatz:حالا باید مهم ترین بخش را پیاده سازی کنیم و آن هم مجموعه معادلات دیفرانسیلی است که باید به صورت همزمان حل شوند. برای حل معادله ۳ در بالا نیاز داریم که تابعی مانند زیر را پیاده سازی کنیم.تنها چیزی که باقی می ماند یک تابع اصلی است که این ها را فراخوانی کند.همانطور که درابتدای کد می بینید ابتدا مدل مان را می سازیم (من برای گراف های دیگر آن را کامنت کرده ام که می توانید خودتان آن ها را هم امتحان کنید). سپس متغیر های اولیه را ایجاد می کنیم که شامل بازه و قدم هاست. یک بخش مهم از کد بالا آماده سازی Omega است. در اینجا آن را با توزیع نرمال به صورت تصادفی شروع کردیم. سپس در حلقه ی اصلی قرار می گیریم. این حلقه بر روی زمان است و در هر قدم یک بار تمام معادلات دیفرانسیل را حل می کنیم و سپس localr را محاسبه می کنیم که همان معادله ۴ است و نشان دهنده این است که چقدر هماهنگی وجود دارد. سپس زوایا را در یک لیست به نام angles پشت سر هم قرار می دهیم. در نهایت با خروج از حلقه شروع به visualize کردن خروجی ها می کنیم. برای این کار تعدادی دایره با اندازه و مکان های تصادفی در نظر می گیریم و در plot_frequency_scatter شروع به ایجاد یک پویا سازی برای تپش آن ها با فرکانس هایی می کنیم که در حلقه ضبط شده اند. خروجی در نهایت باید نشان دهد که آن ها با هم تپش می کنند.خروجی نهایی به صورت زیر می شود:می توانید کد ها را تغییر دهید و حتی visualization های بهتری تولید کنید اما قوانین اصلی ثابت می مانند!ای همه را جان و جهان…همزمانی چشمک زدن کرم های شب تاب یک مساله فقط در مورد این موجودات نیست. همزمان سازی یک الگوی جهانی است و همین آن را شگفت انگیز می کند. مثال های آن آنقدر زیاد هستند که نمی توان به همه پرداخت اما اینجا چند مورد دیگر آن را ذکر می کنم.یکی از مثال های دیگر همزمان سازی صدای همزمان جیرجیرک ها در شب است. به ناگاه صدها جیرجیرک شروع به تولید صدا به صورت همزمان می کنند. یک نمونه آن را در زیر می شنوید.https://soundcloud.com/rohola-zandie-617030389/crickets-chirping-in-sync-at-nightهمگام سازی لزوما همیشه مفید نیست. همگام سازی ای که در نورون های مغز انجام می شود یکی از اصلی ترین دلایل بیماری صرع است. در این بیماری نورون های مغز در یک سیستم در هم تنیده شده شروع به تپش می کنند و در نهایت این موج آنقدر گسترده می شود که از کنترل خارج شده و منجر به حمله های عصبی صرع می شود.اما در عین حال برخی از همگام سازی ها برای انسان حیاتی هستند. مهمترین مثال آن همگام سازی سلول های موسوم به pacemaker cell هستند که اساس تپش های منظم قلب هستند و آن را ممکن می کنند. همگام سازی همچنین در سطح کوانتومی و اتمی هم رخ می دهد. برای آنکه به یک سفر بسیار خواندنی با دانش جدید همگام سازی بروید کتاب زیر که توسط strogatz یکی از پیشگامان این موضوع است، توصیه می شود.در نهایت باید گفت همگام سازی همه جا در اطراف ما اتفاق می افتد و این یک ویژگی ریاضیاتی از جهان ماست! همگام سازی رقص هماهنگ و خود ظهور (emergent) طبیعت است اما آنچه واضح است این است که جهان ما تمایل زیادی به این رقص هماهنگ که شبیه به رقص هماهنگ صوفیان موسوم به سماع است دارد! این می تواند برای عده ای حتی جنبه ای عرفانی هم داشته باشد!منابع:[1] Zeegers, Benthen Pascal. Spontaneous synchronization in complex networks. BS thesis. 2015.[2] Strogatz, Steven H. Sync: How order emerges from chaos in the universe, nature, and daily life. Hachette UK, 2012.[3] https://ncase.me/fireflies/