مدل آتش سوزی جنگل اتوماتای سلولی
کادر ۹-۲ مدل آتش سوزی جنگل اتوماتای سلولی در ArcGIS
کاربردی
برای پیروی از این مثال، ArcMap را شروع کنید و شبکه inittrees را از مسیر زیر بارگیری کنید. C:\Databases\GIS4EnvSci\VirtualCatchment\Grids
این لایه رستر درختان موجود در جنگل را نشان می دهد. مقدار سلول ۱ نشان دهنده درخت و صفر نشان دهنده سایت خالی است. این مثال مدل CA را نشان میدهد که چگونه آتشسوزیهای جنگلی پس از شعلهور شدن تصادفی درختان از طریق برخورد صاعقه گسترش مییابد. پسوند Spatial Analyst مورد نیاز است. این مدل CA از ( دروسل و شوابل، ۱۹۹۲) است که با چهار قانون گذار که به طور همزمان اعمال می شوند تعریف می شود :
- درخت سوزان به سلول خالی تبدیل می شود.
- اگر حداقل یک همسایه در حال سوختن باشد، درخت شعله ور می شود.
- درخت با احتمال برخورد صاعقه به درختی سوزان تبدیل می شود حتی اگر همسایه ای در حال سوختن نباشد.
- درختی در سلول خالی با احتمال p رشد می کند.
لازم به ذکر است که این قوانین نمایشی واقع گرایانه از نحوه رفتار جنگل های واقعی نیستند. این مثال به دنبال نشان دادن نحوه اجرای مدل CA در ArcGIS است، نه اینکه چگونه مدل آتش سوزی جنگل ایجاد می شود.
مدل سازی مکانی در ArcGIS را می توان با ModelBuilder یا از طریق برنامه نویسی انجام داد. ModelBuilder یک ابزار نمودار در ArcGIS برای ایجاد و اجرای مدلهای مکانی با استفاده از دنبالهای از ابزارهای تحلیل مکانی است که خروجی ابزار را به ابزار دیگر به عنوان ورودی تغذیه میکند. همچنین ابزار مفید برای ساخت و اجرای گردش های کاری است که با استفاده از نمودارهای نفوذ مکانی در بخش ۴-۱ مورد بحث قرار گرفته است. در اصل ، ModelBuilder را می توان برای مدل سازی پویا از طریق فرایند تکراری استفاده کرد. با این حال استفاده از زبان برنامه نویسی برای مدل سازی پویا بسیار کارآمدتر است. زبان برنامه نویسی اصلی برای ساخت و پیاده سازی مدل در نسخه فعلی ArcGIS پایتون است که زبان برنامه نویسی رایگان، کراس پلتفرم و منبع باز است. در این مثال مدل CA به زبان پایتون نوشته شده است. برای کمک به درک اسکریپت پایتون، نظرات (با کاراکتر # شروع می شود) ارائه می شود. برای یادگیری برنامه نویسی پایتون در ArcGIS ، با Zandbergen (2013) مشورت کنید.
مدل CA را بررسی کنید
۱) روی دکمه Start در نوار وظیفه ویندوز کلیک کنید، به All Programs اشاره کنید، روی ArcGIS کلیک کنید، روی Python 2/7 (برای۱۰/۱ ArcGIS استفاده می شود؛ نسخه دیگری از Python ممکن است برای نسخه های دیگر ArcGIS استفاده شود) و IDLE (Python GUI) را انتخاب کنید. . پنجره Python Shell راه اندازی می شود.
۲) در پنجره Python Shell، روی File در نوار منوی اصلی کلیک کرده و Open را انتخاب کنید. به C:\Databases\GIS4EnvSci\VirtualCatchment\Scripts بروید و forest_fire_model.py را انتخاب کنید. .py پسوندی است که به نام فایل اسکریپت پایتون متصل شده است. مدل CA در اسکریپت پایتون موجود است که در پنجره جدید به نام forest_fire_model.py باز می شود. اسکریپت در جدول ۹-۵ فهرست شده است.
جدول ۹-۵ اسکریپت پایتون برای مدل آتش سوزی جنگل CA در کادر ۹-۲
در این اسکریپت، ArcPy بسته پایتون است که دسترسی پایتون را برای همه ابزارهای ArcGIS فراهم می کند. سطری که با # شروع می شود نشان می دهد که بقیه خط یک نظر است که خط زیر برنامه را توضیح می دهد. شماره خطوط صرفاً برای سهولت خواننده درج می شود و بخشی از برنامه نیست. خط ۱۰ دایرکتوری را به عنوان فضای کاری ورودی ها و خروجی های ابزار پردازش جغرافیایی ArcGIS مشخص می کند. می توانید فضای کاری را که در آن inittrees را ذخیره کرده اید تغییر دهید. خروجی های مدل CA نیز در فضای کاری نوشته می شود.
خطوط ۲۳ و ۲۵ احتمال رشد درخت و برخورد صاعقه را تعیین می کند. معمولا احتمال برخورد صاعقه بسیار کم است. p بزرگتر از f است تا بتوان ساختارهای بزرگ را توسعه داد. خطوط ۴۴ و ۴۶ به طور تصادفی به ترتیب در هر مرحله از زمان احتمال رشد و احتمال برخورد صاعقه را به هر سلول اختصاص می دهند. خط ۴۱ مشخص می کند که آیا در سلول های مجاور آتش سوزی وجود دارد یا خیر. به عنوان حداکثر آمار در FocalStatistics تابع، اگر تابع مقدار ۲ را برای یک سلول برگرداند، آن سلول حداقل یک همسایه سوزان دارد. خط ۵۵ از نتیجه حاصل ازFocalStatistics برای تعیین اینکه آیا یک درخت تبدیل به یک درخت سوزان می شود یا خیر.
خطوط ۵۰-۶۳ قوانین انتقال را با استفاده از ابزار ArcGIS Con پیاده سازی می کنند. این ابزار مقدار خروجی هر سلول را بر اساس درست یا نادرست بودن مقدار سلول در یک عبارت شرطی مشخص شده کنترل می کند. به عنوان مثال، خط ۵۲ به این معنی است که اگر مقدار یک سلول در inRaster برابر صفر باشد (سلول خالی) و در عین حال احتمال رشد درختی کمتر یا مساوی p باشد، ۱ به آن مکان سلول اختصاص داده می شود. true (که توسط یک درخت پر شده است) در خروجی شطرنجی outCon2 در غیر این صورت، سلول در outCon2 (نادرست) اختصاص داده می شود.
خط ۲۷ تعداد گام های زمانی را ۱۰ تنظیم می کند. می توانید آن را به ۲۰، ۳۰ یا هر عدد دیگری تغییر دهید. خط ۳۸ نشان می دهد که CA برای تعداد مشخصی از مراحل یا تیک های زمانی اجرا می شود. خط ۷۱ به این معنی است که خروجی یا حالت های هر سلول در مرحله زمانی i به عنوان ورودی برای مدل سازی در مرحله زمانی بعدی i +1 استفاده می شود.
مدل CA را اجرا کنید
- در پنجره py، روی Run > Run Module کلیک کنید تا اسکریپت در پنجره اجرا شود. منتظر بمانید تا پیام “The process is over” در پنجره Python Shell ظاهر شود.
- در ArcMap، لایه های شطرنجی fires0, fires1, fires2, fires3, . . . را از فضای کاری تنظیم شده در اسکریپت اضافه کنید. این لایه ها آتش سوزی و مناطق سوخته را در مراحل زمانی ۰، ۱، ۲، ۳ و … نشان می دهند. شکل ۹-۹ حالت های آتش سوزی را در مراحل زمانی ۳، ۵، ۷ و ۹ نشان می دهد. به دلیل ماهیت تصادفی مدل سازی، خروجی های شما ممکن است متفاوت به نظر برسند.
برگرفته از کتاب کاربرد GISدر محیط زیست
ترجمه:سعید جوی زاده،شهناز تیموری،فاطمه حسین پور فرزانه