## اخلوارزميات وبناء النماذج فى بيئة GIS Arc **أوال: اخلوارزميات الرياضية والرسوم االنسيابية** -1 **الخوارزميات:** خوارزمية رياضية هى مجموعة من الخطوات التى تؤدى فى تنفيذها الى الحل. تعد الخوازميات بداية لظهور النماذج، حيث تعد الوسائل األولى فى ترتيب الخطوات التى تسعى الثبات النظريات. تبنى الخوارزمية وفق الخطوات التالية: * لكل خوارزمية بداية (أبدا) ونهاية (توقف). * يتم استخدام أمر (أقرأ) إلدخال المعطيات. * يتم استخدام األمر (أكتب) للحصول على النتائج. * تستخدم العالمات الجبرية )* - / +( **مثال:** أكتب الخوارزمية الرياضية التى تعبر عن قراءة عددين وايجاد حاصل جمعهما. **الحل:** **المعطيات:** العدد األول (x)، العدد الثانى (y). **المطلوب:** حساب الجمع. **الخوارزمية المطلوبة:** -1 ابدأ. -2 اقرأ العدد x. -3 اقرا العدد y. -4 احسب x+y = calc. -5 اكتب calc. -6 توقف. -2 **المخططات االنسيابية:** وهو عمل تدفقى يستخدم مجموعة من األشكال الهندسية تربط فيما بينها أسهم لتوضح تنفيذ الخوارزميات. وهو يعد من أفضل وسائل تحليل النظم تحليل النظم بشكل يفوق الخوارزميات، حيث يمتلك كل شكل هندسى يستخدمه المخطط االنسيابى وظيفة معينة وشرط معين ؛ مما يجعل المخططات الهندسية شائعة االستخدام فى بحوث العمليات، و ربط النمذجة بالبرمجة حيث تعد وسيلة أساسية فى كتابة البرامج. **االشكال االساسية المستخدمة فى المخطط االنسيابى:** -1 الشكل البيضاوى: يرمز الى البداية – النهاية – التوقف. -2 المستطيل: يرمز الى العمليات الحسابية (processes)، وتعيين قيم المتغيرات. -3 متوازى االضالع: يرمز إلى المدخالت والمخرجات Input و Output. -4 المعين: يستخدم فى المقارنات والعمليات المنطقية ، مثل إيضاح القرارات أو الشروط Decision. -5 الدائرة: تستخدم لتوضيح نقاط توصيل المخطط االنسيابى وغالبا ً فى حالة المخططات ذات المراحل المتعددة Connector point. -6 السهم: عالقة المخططات االنسيابية بالنمذجة. يتضح من العرض السابق أن لكل شكل هندسى مدلول يعبر عنه، وتستخدم المخططات االنسيابية العمليات للتوصل الى النتائج، ألنها تعتمد على أساس رياضىمرتب ومنظم. وتستخدم لحل مشكالت متعددة، لكن فى حالة تعقد هذه المشكالت فإن المقابل هو Model المصمم داخل تطبيق نظم المعلومات الجغرافية GIS Arc حيث يبنى على أكواد وجمل برمجية تستطيع تحقيق الهدف من المخطط مهما كانت صعوبته، لذا تبنى النماذج الجيو معلوماتية على المخططات االنسيابية وتعتبر تطوير لها، حيث تتم بشكل علمى سليم يستخدم لغات البرمجة. **أمثلة على الخوازميات والمخططات االنسيابية:** **مثال:** أكتب خوارزمية الحل والمخطط االنسيابى لقراءة طول وعرض المستطيل وحساب مساحته. **الحل:** **المعطيات:** طول المستطيل (x) وعرض المستطيل (y). **المطلوب:** حساب مساحة المستطيل حيث y * x = calc. **الخوارزمية المطلوبة:** -1 ابدا. -2 اقرأ x , y. -3 احسب calc = x * y. -4 اكتب قيمة calc. -5 توقف. **مثال 2:** اكتب الخوارزمية المطلوبة وارسم المخطط االنسيابى لحساب الضريبة السنوية، علما بان الضريبة %10 من الدخل السنوى اذا زاد الدخل عن 5000 جنيها واال فإنه يعفى من الضريبة. **الحل:** **المعطيات:** الدخل السنوى x. **المطلوب:** حساب الضريبة y. y = x * 5000 if xor = 5000. y = 0 if x< 5000. **الخوارزمية المطلوبة:** ج- ابدا. ح- اقرا x. -خ if xor = 5000 فاحسب 5000 * x = y واال اجعل 0 = x. د-اكتب قيمة x. ذ-توقف. **ثانيا: بناء النماذج فى بيئة Desktop Gis ARC** تتعدد مفاهيم Model، وذلك على حسب فروع المعرفة التى يتخصص فيها الدارس. وفيما يخص موضوعنا فان النماذج فى بيئة برنامج Desktop ArcGISتستخدم للداللة على سلسلة من العمليات التحليلية المنسقة التى يتم اجراؤها للحصول على نتيجة محددة. والتمام ذلك يتم استخدام أداة Builder Model والتى تختص بالنمذجة فى نظم المعلومات الجغرافية. **أداة Builder Model:** وهي من أهم أدوات النمذجة باستخدام برنامج GIS Arc من خالل مايسمى بالبرمجة المرئية Builder Model programing Visual. ففيها يمكن فتح مئات األوامر التحليلية المتواجدة في برنامج Box Tool Arc - أحد تطبيقات برنامج GIS Arc - ،ويتم بناء النماذج أو تصميمها. ويمكن التعامل معها من خالل بعض الطرق التي من أهمها Tool Dialog التي بالضغط عليها click double تظهر نافذة line command وفيها يتم إدخال األوامر يدوياً ، أو من خالل Models. ويعتبر إضافة أى أداة عملية واحدة فى نموذج مركب. فباستخدام أداة واحدة قد ال يكتمل النموذج، فالنماذج المركبة تضم العديد من العمليات وبالتالي تتداخل معها العديد من األدوات ولغات البرمجة Scripts، التي عن طريقها يتم إضافة أكواد برمجية لتنفيذ بعض األوامر أو التعديل فيها. يلى ذلك بناء وتشغيل النموذج باستخدام Run. كما تستخدم هذه األداه فى التنبؤ فى حالة التحليالت المكانية الزمنية والمكانية. **.1 أنواع النماذج داخل BuilderModel فى Desktop ArcGIS** **النوع األول: النماذج املقيدة بالبيانات model Driven Data** وتعتمد فكرة هذا النموذج على بيانات ومتغيرات محددة مسبقا، وال يستطيع المستخدم تنفيذه على بيانات تختلف عن البيانات التى صمم عليها، اال إذا تم تغيير البيانات وتعميمها. لذا يعتبر هذا النوع من النماذج محليا يتم تشغيله على منطقة واحدة فقط هى المنطقة التى صمم وبنى على متغيراتها. اما اذا تم تطبيقه وتجريبه على منطقة اخرى فانه تواجه المستخدم مشكلة كبيرة وهى عدم تشغيل النموذج، وبالتالى تعتبر النماذج المحلية غير واسعة االستخدام وال يستطيع المستخدم تطويرها. **النوع الثانى النماذج العامة model Generic:** وهى أهم انواع النماذج فى نظم المعلومات الجغرافية، وتعتبر فى بدايتها نماذج محلية ثم تم احداث تغيرات عليها من قبل المصمم وليس المستخد حتى تم اتباع اساليب معينة عن طريقها يمكن تطوير النموذج وجعله نموذج عام، أى يمكن استخدامه على بيئات ومناطق متعددة ويمكن ادخال بيانات تختلف عن البيانات التى صمم مسبقا باالعتماد عليها مما جعله أكثر النماذج استخداما وأهمية. **.2 خطوات تطبيق النماذج املقيدة بالبيانات باستخدام Builder Model** **a. اعدادالمتغيرات واضافة البيانات واالدوات التحليلية** يتم اضافة المتغيرات من برنامج Map Arc من خالل صندوق C.O.T وذلك عن طريق أداة السحب المتواجدة بنافذة Model، حيث يتم إضافة المتغيرات التى تمثل المدخالت. وتعتبر متغيرات من الدرجة األولى، حيث تعتبر بمثابة المادة الخام التى تبنى عليها المتغيرات األكثر تقدما، ومن الممكن تقسيم المتغيرات على حسب درجة تقدمها فى النموذج الى االنواع التالية: **أ- متغيرات الدرجة األولى:** وهى الخام أي المتغيرات االولية التى تمثل المراحل االولى فى النموذج. **ب- متغيرات الدرجة الثانية:** وهى تبنى على متغيرات الدرجة األولى حيث نحصل عليها من عمليات معينة يتم تطبيقها على متغيرات الدرجة األولى. **ت- متغيرات الدرجة الثالثة:** وتبنى على متغيرات الدرجة الثالثة على الثانية وتصبح هذه المتغيرات أكثر تطورا وتقدما، وبتتابع المتغيرات وتسلسلها نصل الى النتيجة النهائية للنموذج. **b. إضافة البيانات واألدوات التحليلية:** يتم اضافة البيانات "المدخالت" لنافذة النموذج، واضافة األدوات التى يطلق عليها العمليات التحليلية، ويتم تحديد االدوات حسب الهدف من النموذج ومتطلبات االدوات، ويراعى التالي: * اختصار عدد االدوات التحليلية وبساطتها حتى يكون النموذج سهل التطبيق والتحكم فى ادارته. * اختصار عدد االدوات التحليلية، حيث كلما كانت االدوات التحليلية مختصرة كلما كان الوقت المستقطع لتشغيل النموذج قصير، وبالتالى يصبح النموذج أكثر استخداما. * تعد هذه المرحلة العقل المفكر للنموذج ففيها يتم تنفيذ األفكار التى تتبلور الى ارض الواقع. * ضرورة ترتيب األدوات التحليلية بشكل تركيبى يأخذ اتجاهه الى األمام. ويتم تحديد االدوات من خالل برنامج Box Arctool الذى يحتوى على المئات من االدوات التحليلية، ويتم تحديدها وسحبها الى نافذة النموذج. **c. ربط وتخصيص النموذج:** فى هذه المرحلة يتم اجراء الترابط بين مكونات النموذج، سواء على مستوى المدخالت "المتغيرات" أو على مستوى االدوات التحليلية أو على مستوى االثنين معا. فأى متغير غير مترابط مع المتغيرات األخرى، فإن البرنامج يهمله فى عملية التحليل، ويعتبره غير موجدود بالفعل، كانه لم تتم اضافنه. ويتم انشاء ترابط النموذج عن طريق أداة Connect التى تتواجد بنافذة النموذج، وتعتبر هذه االداه التى تحدد مسار النموذج، فهى االداة التى تعبر قديما Flow Chart التى تحدد مسار العمليات التى كان يرمز لها باألسهم. **d. حفظ النموذج:** فى هذه المرحلة يتم حفظ ما تم ادخاله وتعديله بالنموذج من خالل أداة الحفظ، حتى يمكن المصمم استراجعة مرة اخرى أو غمكانية تعديله او تطويره. **e. تشغيل النموذج:** وفيها يتم إعطاء اشارة البدء لتشغيل النموذج من خالل اداة Run بنافذة النموذج، وتعتبر خير اختبار لبناء النموذج، فاذا كان البناء صحيحا فانه تستكمل عملية التشغيل بنجاح ويعطى البرنامج رسالة مضمونها انه تم التشغيل واكتمال النموذج بشكل سليم، لكن فى حالة حدوث اية اخطاء متعمدة او غير متعمدة فان البنامج يعطى رسالة نصية مضمونها انه ثمت مشكلة معينة. **f. تعديل النموذج:** فى الخطوة السابقة من اعداد النموذج اذا ظهرت رسالة نصية مضمونها انه يتواجد مشكلة معينه، فانه يلزم على المصمم الرجوع للنموذج واستكشاف موضع الخطأ وتعديله ليمكن تنفيذ النموذج. **.3 خطوات تطبيق النماذج العامة باستخدام Builder Model** **A. تعيين مكونات النموذج:** فى هذه المرحلة يتم تحويل مكونات واالدوات التحليلية للنموذج فى شكل ديناميكى متغير أى يكون له امكانية ادخال بيانات لمناطق لها نفس طبيعة المنطقة التى صمم عليها النموذج، ولتنفيذ ذلك يتم فتح النموذج من خالل أداة Edit، ثم يتم تتبع أوامر النموذج من العمليات األولية مرورا بالعمليات المتوسطةحتى نصل إلى العمليات المتقدمة. **B. Set model parameter order:المكونات خصائص تحديد.** وفيها يتم تحديد مدخالت ومخرجات النموذج للمستخدم وجعلها عناصر مرئية، حتى يتم التعامل معها بسهولة، من خالل نافذه تشمل متطلبات النموذج ومخرجاته، ويتم تنفيذ هذه المرحلةمن خالل الضغط.R Clickعلى المتغير ونختار parameters حتى يتم كتابة حرف P على المتغير بنافذة النموذج ثم نقوم بحفظ النموذج. وتبعا لطبيعة هذا النموذج، فانه يتم جعل المكونات والعمليات بالنافذة التالية محددة للمستخدم: نقوم بترتيب واجهة النافذة، حيث يتم غلقها ونفتح برنامج Catalog Arc، ونضغط click.R على النموذج ونختار Edit، فتظهر نافذة Model لضبط ترتيب مدخالت النموذج، ونختار من قائمة Model أداة Properties Model وهى تتكون من عدة تبويبات، فى هذه الحالة نختار تبويب Parameters، حيث نختار الطبقة ثم بواسطة األسهم المتواجدة فى يمين النافذة و يتم الترتيب وفقاً للهدف، ثم نقوم بالحفظ ونغلق نافذة Model و نفتح النموذج مرة أخرى. وفى هذه المرحلة يتم تحديد النوع الجيومترى للمدخالتparameters model on filters Set، أي التحكم فى ادخال المتغيرات بحيث اذا كان المطلوب متغير معين ويكون نوعه خطى، فانه يتم غلق الظاهرات المساحية والنقطية ويتاح للمستخدم الظاهرات ذات النوع الخطى فقط، وهكذا حتى يكون األمر أكثر وضوحا للمستخدم، ويتم ذلك من خالل عامود filter ونحدد class Featureلكل متغير فى نافذة خصائص النموذج. **.C. Manage intermediate dataالبينية البيانات معالجة.** ويقصد بها البيانات المتوسطة التى تسبق النتائج النهائية وال تنال اهتمام المستخدم للنموذج، إذا لم يتم حذف هذه البيانات فانها تأخذ مساحة كبيرة من ذاكرة الحاسب االلى على حسب حجم هذه البيانات، لذا فى هذه المرحلة يتم تحديدها ثم إعطاء أمر للبرنامج بحذفها بعد اتمام النموذج والحصول على البيانات. ويتم تحديد هذه البيانات من خالل الضغط Click.R على المتغير الذى ال نريد حفظه على الهارد ديسك، ونختار Intermediate، ثم من نافذة Model نختار . IntermediateDelete **D.تعميم النموذج:** وفيها يتم حذف البيانات السابقة التى تم بناء النموذج اعتمادا عليها ) المدخالت ( أي حذف األسماء الموجودة، يتم ذلك عن طريق الضغط Click.R على المتغيرات فى نافذة Model، وتظهر نافذة محدد بها إسم المتغير نقوم بحذف االسم المكتوب، ثم نضغط ok، بالتالى تصبح نافذة Model مفرغة اللون، وبالتالى يستطيع المستخدم ادخال بيانات أخرى لكن لها نفس الخصائص. **E. اظهار النتائج:** فى هذه المرحلة يتم اظهار مخرجات ونتائج النموذج الذى يقصدها المستخدم بنافذة View Data فى برنامج Map Arc، وبذلك نفتح النموذج من خالل برنامج Arc Catalog ويظهر النموذج فى builder Model، نقوم بالضغط Click.R على النتيجة النهائية للنموذج ونختار Display to Add، أي يتم إعطاء أمر داخل النموذج باظهار النتائج بشكل مباشر بعد انتهاء التشغيل بنافذة برنامج Map Arc، ويمكن للمصمم التحكم فى عدد النتائج التى يريد اظهارها مباشرة. **F. ضبط خصائص النموذج:** يتم اعطاء اسم جديد للنموذج elements model Renameمن خالل قائمة Model ومنها Properties Model، ويجب أن يتميز االسم الجديد بوضوحه للمستخدم، كما يتم ضبط بعض الخصائص االخرى، مثل أقصى امتداد للبيانات و طبقات القص و مسار الحفظ، ويتم ذلك من خالل تبويب Environments وتنسدل أدوات نختار .Work Space و ، Raster Analysis و ، Processing Extent :منها **G. تصدير النموذج:** يقصد بذلك حفظ وتشغيل النموذج داخل برنامج box Tool Arc وجعله متاح للمستخدم كأنه شريط أدوات، والجراء ذلك فانه يتم فتح برنامج Catalog Arc، ثم نضغط Click.R على Toolbox الذى تم تصميمه ونضغط ونختار Copy، ثم ننشىء Folder فى أى مكان على القرص الصلب للحاسب االلى وننسخ فيه النموذج، يلى ذلك تثبيت النموذج داخل برنامج box tool Arc، حيث نأخذ Toolbox الذى يحتوى على النموذج Copy ونضعه Paste فى المسار التالى: This PCLocal Disk(c)program fileArc GIS DesktopArc tool boxtoolboxesArc toolbox. ثم نقوم بفتح النموذج فتظهر نافذة يتم من خاللها إدخال المدخالت وتحديد إسم المخرج النهائى ومكان حفظه ثم نضغط model Run لتشغيل النموذج. ولمعرفة خصائص النموذج الذى تم تصميمه نضغط Click.R على Model فى برنامج box tool Arc فتنسدل قائمة، نختار Help تظهر نافذة لكل التفاصيل التى تتعلق بالنموذج كما يمكن رفع النموذج على شبكة الويب.