مدل های ساده با رفتار پیچیده یعنی هرج و مرج
تکنولوژی

مدل های ساده با رفتار پیچیده یعنی هرج و مرج

کامپیوتر ابزاری است که به طور فزاینده ای توسط دانشمندان برای کشف اسرار پنهان شده توسط طبیعت استفاده می شود. مدلسازی همراه با آزمایش و نظریه در حال تبدیل شدن به سومین راه برای مطالعه جهان است.

سه سال پیش، در دانشگاه سیلسیا، برنامه ای را برای ادغام روش های کامپیوتری در آموزش شروع کردیم. در نتیجه، بسیاری از مطالب آموزشی بسیار هیجان انگیز ایجاد شده است که مطالعه بسیاری از موضوعات را آسان تر و عمیق تر می کند. پایتون به عنوان ابزار اصلی انتخاب شد که همراه با قدرت کتابخانه های علمی موجود، احتمالا بهترین راه حل برای "آزمایش های کامپیوتری" با معادلات، تصاویر یا داده ها است. یکی از جالب ترین پیاده سازی های یک میز کار کامل Sage [2] است. این یک ادغام باز از یک سیستم جبر رایانه ای با زبان پایتون است و همچنین به شما امکان می دهد بلافاصله با استفاده از یک مرورگر وب و یکی از گزینه های دسترسی ممکن از طریق یک سرویس ابری [3] یا یک سرور محاسباتی واحد که روی آن تعاملی نسخه این مقاله بر اساس [4] است.

هرج و مرج در اکولوژی

در سال اول در دانشگاه آکسفورد، دانشمند استرالیایی رابرت می، جنبه های نظری پویایی جمعیتی را مورد مطالعه قرار داد. او کار خود را در مقاله ای خلاصه کرد که در مجله Nature تحت عنوان تحریک آمیز "مدل های ریاضی ساده با دینامیک بسیار پیچیده" [1] منتشر شد. در طول سالیان متمادی، این مقاله به یکی از پراستنادترین آثار در اکولوژی نظری تبدیل شده است. چه چیزی باعث چنین علاقه ای به این کار شده است؟

مشکل کلاسیک پویایی جمعیت محاسبه جمعیت آینده یک گونه خاص با توجه به وضعیت فعلی آن است. از نظر ریاضی، اکوسیستم ها به عنوان ساده ترین اکوسیستم هایی در نظر گرفته می شدند که در آن زندگی یک نسل از جمعیت یک فصل طول می کشد. یک مثال خوب، جمعیتی از حشرات است که در یک فصل دچار دگردیسی کامل می شوند، مانند پروانه ها. زمان به طور طبیعی به دوره های گسسته 2 مربوط به چرخه زندگی جمعیت تقسیم می شود. بنابراین، معادلات توصیف کننده چنین اکوسیستمی به طور طبیعی دارای به اصطلاح هستند زمان گسسته، یعنی t = 1,2,3،XNUMX،XNUMX…. رابرت می در میان چیزهای دیگر به چنین پویایی پرداخت. او در استدلال خود اکوسیستم را به گونه ای ساده کرد که جمعیت آن تابع درجه دوم جمعیت سال قبل بود. این مدل از کجا آمده است؟

ساده ترین معادله گسسته که تکامل یک جمعیت را توصیف می کند یک مدل خطی است:

که در آن Ni فراوانی در فصل i است و Ni + 1 جمعیت فصل بعد را توصیف می کند. به راحتی می توان فهمید که چنین معادله ای می تواند به سه سناریو منجر شود. وقتی a = 1 باشد، تکامل اندازه جمعیت را تغییر نخواهد داد و <1 منجر به انقراض می شود و مورد a > 1 به معنای رشد نامحدود جمعیت است. این منجر به عدم تعادل در طبیعت می شود. از آنجایی که همه چیز در طبیعت محدود است، منطقی است که این معادله را برای محاسبه مقدار محدود منابع تنظیم کنیم. تصور کنید که آفات غلات را می خورند که هر سال دقیقاً یکسان است. اگر حشرات در مقایسه با مقدار غذایی که می توانند تولید مثل کنند کم باشند، می توانند با قدرت تولید مثل کامل تولید مثل کنند که از نظر ریاضی با ثابت a > 1 تعیین می شود. اما با افزایش تعداد آفات، غذا کمیاب می شود و ظرفیت تولیدمثلی کاهش می یابد. در یک مورد بحرانی، می توان تصور کرد که حشرات زیادی متولد می شوند که قبل از اینکه فرصتی برای تولید مثل داشته باشند، تمام غلات را می خورند و جمعیت می میرند. مدلی که این اثر دسترسی محدود به غذا را در نظر می گیرد اولین بار توسط Verhulst در سال 1838 ارائه شد. در این مدل، نرخ رشد ثابت نیست، اما به وضعیت جمعیت بستگی دارد:

رابطه بین نرخ رشد a و Ni باید دارای ویژگی زیر باشد: اگر جمعیت افزایش یابد، نرخ رشد باید کاهش یابد زیرا دسترسی به غذا مشکل است. البته، توابع زیادی با این ویژگی وجود دارد: اینها توابع از بالا به پایین هستند. ورهولست رابطه زیر را پیشنهاد کرد:

که در آن a>0 و ثابت K>0 مشخص کننده منابع غذایی است و ظرفیت محیط نامیده می شود. تغییر K چگونه بر نرخ رشد جمعیت تأثیر می گذارد؟ اگر K افزایش یابد، Ni/K کاهش می یابد. به نوبه خود، این منجر به این واقعیت می شود که 1-Ni/K رشد می کند، به این معنی که رشد می کند. این بدان معنی است که نرخ رشد در حال افزایش است و جمعیت سریعتر رشد می کند. بنابراین بیایید مدل قبلی (1) را با فرض تغییر نرخ رشد مطابق با معادله (3) اصلاح کنیم. سپس معادله را بدست می آوریم

این معادله را می توان به صورت یک معادله بازگشتی نوشت

که در آن xi = Ni / K و xi + 1 = Ni + 1 / K نشان دهنده جمعیت های تغییر مقیاس در زمان i و در زمان i + 1 است. معادله (5) معادله لجستیک نامیده می شود.

ممکن است به نظر برسد که با چنین تغییر کوچکی، تحلیل مدل ما آسان است. بگذار چک کنیم. معادله (5) را برای پارامتر a = 0.5 در نظر بگیرید که از جمعیت اولیه x0 = 0.45 شروع می شود. مقادیر جمعیت متوالی را می توان با استفاده از معادله بازگشتی (5) به دست آورد:

x1= تبر0(10)

x2= تبر1(11)

x3= تبر2(12)

برای تسهیل محاسبات در (6) می‌توانیم از برنامه زیر استفاده کنیم (به زبان پایتون نوشته شده است و از جمله در پلتفرم Sage قابل اجراست. توصیه می‌کنیم کتاب http://icse.us.edu را مطالعه کنید. pl/e-book . )، با تقلید از مدل ما:

به = 0.5 x = 0.45 برای i در محدوده (10):      x \u1d a * x * (XNUMX-x)      x چاپ کنید

مقادیر متوالی xi را محاسبه می کنیم و متوجه می شویم که آنها به سمت صفر تمایل دارند. با آزمایش کد بالا، بدون در نظر گرفتن مقدار اولیه x0، به راحتی می توان متوجه شد که این موضوع درست است. این بدان معناست که جمعیت دائماً در حال مرگ است.

در مرحله دوم تجزیه و تحلیل، مقدار پارامتر a را به هر مقداری در محدوده ae افزایش می دهیم (1,3،0). معلوم می شود که سپس دنباله xi به مقدار معینی می رود x * > 0. با تفسیر این از دیدگاه بوم شناسی، می توان گفت که اندازه جمعیت در یک سطح مشخص ثابت است که از فصل به فصل تغییر نمی کند. . شایان ذکر است که مقدار x * به حالت اولیه xXNUMX بستگی ندارد. این اثر تلاش اکوسیستم برای ثبات است - جمعیت اندازه خود را با توانایی تغذیه خود تنظیم می کند. از نظر ریاضی، گفته می شود که سیستم به یک نقطه ثابت پایدار تمایل دارد، یعنی. ارضای برابری x = f(x) (این بدان معناست که در لحظه بعد وضعیت مانند لحظه قبلی است). با Sage، می‌توانیم با ترسیم جمعیت در طول زمان، این تکامل را به صورت گرافیکی مجسم کنیم.

چنین اثر تثبیتی مورد انتظار محققین بود و اگر غافلگیری نبود، معادله لجستیک (5) توجه زیادی را به خود جلب نمی کرد. مشخص شد که برای مقادیر مشخصی از پارامتر، مدل (5) به روشی غیرقابل پیش بینی رفتار می کند. اول، حالت های دوره ای و چند دوره ای وجود دارد. ثانیاً، با هر مرحله زمانی، جمعیت به طور ناهموار مانند یک حرکت تصادفی تغییر می کند. سوم، حساسیت زیادی به شرایط اولیه وجود دارد: دو حالت اولیه تقریباً غیرقابل تشخیص منجر به تکامل جمعیت کاملاً متفاوت می شود. همه این ویژگی ها مشخصه رفتاری است که شبیه یک حرکت کاملا تصادفی است و به آن آشوب قطعی می گویند.

بیایید این ملک را کشف کنیم!

ابتدا، بیایید مقدار پارامتر a = 3.2 را تنظیم کنیم و به تکامل نگاه کنیم. شاید تعجب‌آور به نظر برسد که این بار جمعیت به یک مقدار نمی‌رسد، بلکه به دو عدد می‌رسد که هر فصل متوالی اتفاق می‌افتد. با این حال، مشخص شد که مشکلات به همین جا ختم نشد. با a = 4، سیستم دیگر قابل پیش بینی نیست. بیایید به شکل (2) نگاه کنیم یا خودمان با استفاده از کامپیوتر دنباله ای از اعداد تولید می کنیم. به نظر می‌رسد که نتایج کاملاً تصادفی و برای جمعیت‌های اولیه کمی متفاوت هستند. با این حال، خواننده توجه باید اعتراض کند. چگونه یک سیستم توصیف شده توسط یک معادله قطعی 1، حتی یک معادله بسیار ساده، می تواند غیرقابل پیش بینی رفتار کند؟ خوب شاید.

از ویژگی های این سیستم حساسیت قابل توجه آن به شرایط اولیه است. کافی است با دو شرط اولیه شروع کنیم که یک میلیونیم با هم تفاوت دارند و تنها در چند مرحله به مقادیر جمعیتی کاملاً متفاوت خواهیم رسید. بیایید رایانه را بررسی کنیم:

a = 4.0

x = 0.123 y = 0.123 + 0.000001 PCC = [] برای i در محدوده (25): x = a*x*(1-x) u = a * u * (1-u) x، y را چاپ کنید

در اینجا یک مدل ساده از تکامل قطعی است. اما این جبر فریبنده است، فقط جبر ریاضی است. از نقطه نظر عملی، سیستم به طور غیرقابل پیش بینی رفتار می کند زیرا ما هرگز نمی توانیم شرایط اولیه را دقیقاً به صورت ریاضی تنظیم کنیم. در واقع، همه چیز با دقت خاصی تعیین می شود: هر ابزار اندازه گیری دقت خاصی دارد و این می تواند باعث غیرقابل پیش بینی بودن عملی در سیستم های قطعی شود که خاصیت هرج و مرج را دارند. به عنوان مثال، مدل‌های پیش‌بینی آب و هوا هستند که همیشه خاصیت آشفتگی را نشان می‌دهند. به همین دلیل است که پیش بینی های بلند مدت آب و هوا بسیار بد هستند.

تجزیه و تحلیل سیستم های آشفته بسیار دشوار است. با این حال، ما می توانیم بسیاری از اسرار آشوب را به راحتی با کمک شبیه سازی های کامپیوتری حل کنیم. اجازه دهید به اصطلاح نمودار انشعاب را ترسیم کنیم که در آن مقادیر پارامتر a را در امتداد محور آبسیسا و نقاط ثابت ثابت نقشه برداری لجستیک در امتداد محور ارتین قرار می دهیم. ما با شبیه سازی تعداد زیادی سیستم به طور همزمان و رسم مقادیر پس از چندین بار نمونه، نقاط پایدار را بدست می آوریم. همانطور که ممکن است حدس بزنید، این نیاز به محاسبات زیادی دارد. بیایید سعی کنیم مقادیر زیر را "با دقت" پردازش کنیم:

numpy را به عنوان np وارد کنید Nx = 300 اون = 500 х = به عنوان مثال فضای خطی (0,1،XNUMX، Nx) х = х + به عنوان مثال اروس ((Na، Nx)) х = np.transpose(х) a = به عنوان مثال Linspace (1,4، Na) a=a+np.zeros((Nx,Na)) برای i در محدوده (100): x=a*x*(1-x) pt = [a_، x_] برای a_، x_ c zip(a.flatten()،x.flatten())] نقطه (pt، اندازه = 1، شکل = (7,5،XNUMX))

باید چیزی شبیه به شکل (3) بدست آوریم. چگونه این نقاشی را تفسیر کنیم؟ به عنوان مثال، با مقدار پارامتر a = 3.3، 2 نقطه ثابت ثابت داریم (اندازه جمعیت در هر فصل دوم یکسان است). با این حال، برای پارامتر a = 3.5 ما 4 نقطه ثابت داریم (هر فصل چهارم تعداد جمعیت یکسان است)، و برای پارامتر a = 3.56 ما 8 نقطه ثابت داریم (هر فصل هشتم جمعیت یکسان است). اما برای پارامتر a≈3.57، ما بی نهایت نقاط ثابت داریم (اندازه جمعیت هرگز تکرار نمی شود و به روش های غیرقابل پیش بینی تغییر می کند). اما با یک برنامه کامپیوتری می توانیم محدوده پارامتر a را تغییر دهیم و ساختار هندسی بی نهایت این نمودار را با دستان خود کشف کنیم.

این فقط نوک کوه یخ است. هزاران مقاله علمی در مورد این معادله نوشته شده است، اما هنوز اسرار خود را پنهان می کند. با کمک شبیه سازی کامپیوتری، می توانید بدون توسل به ریاضیات بالاتر، پیشگام دنیای دینامیک غیرخطی باشید. از شما دعوت می کنیم نسخه آنلاین حاوی جزئیات بسیاری از ویژگی های جالب معادله لجستیک و روش های جالب تجسم آنها را مطالعه کنید.

1 قانون قطعی قانونی است که در آن آینده به طور منحصر به فردی توسط حالت اولیه تعیین می شود. متضاد قانون احتمالات است. 2 در ریاضیات، "گسسته" به معنای دریافت مقادیر از یک مجموعه قابل شمارش خاص است. برعکس "مستمر" است.

اضافه کردن نظر