أكثر

مصفوفة مسافة QGIS: مسافة مترية خاطئة


لقد استخدمت أداة مصفوفة المسافة الخطية في QGIS 2.6 نظام التنسيق الخاص بي متري (جديد هولندي RD) النتائج بها أرقام عشرية خاطئة ، كما هو موضح أدناه. كيف يمكنني اصلاح هذا؟ (تظهر مسافات فريدة فقط)

InputID TargetID المسافة حسب المصفوفة المسافة الحقيقية 3 2914.753.872.032914 متر 3 1119.476.303.875 1،19 كم 41156.770.528.678 1،56 كم 4 3 162.709.997.483 1،62 كم 4 2226.796.645.372 2،26 كم 6 5241.698.218.226 2،41 كلم 6 3614.677.367.185 6،14 كلم 6631.106.480.203 6،31 كلم 6 2693.828.353.563 6،93 كلم 6 1723.724.716.201 7،23 كلم 2 1105.868.974.731 1،05 كلم 5 3 38.004.119.442 3،8 km 5 4390.398.472.686 3،9 km 5 2 46.440.219.167 4،64 km 5 1484.470.336.769484 متر

لم أكن أعرف أن هولندا هي إحدى الدول التي تستخدم أيضًا الأرقام العربية بفاصلة عشرية (http://en.wikipedia.org/wiki/Decimal_mark). لهذا السبب ، يبدو أنها مشكلة محلية. في إسبانيا (التي تستخدم أيضًا الفاصلة العشرية) ، لتجنب مشاكل اللغة ، أستخدم QGIS الخاص بي مع لغة USEnglish و "تجاوز لغة النظام" (إعدادات-> خيارات-> الإعدادات المحلية).

لاختبار التشغيل الصحيح لـ "أداة مصفوفة المسافة" في نظامي ، قمت بتحميل طبقة متجه نقطي في QGIS وقمت بتشغيل الأداة.

لقد قمت بطباعة مصفوفة المسافة الخاصة بي كملف csv حيث حددت السجل الأول لغرض التحقق (باللون الأحمر):

في الصورة التالية ، قمت بتحديد النقاط ذات المعرف 0-4 وقمت بقياس المسافة باستخدام "أداة قياس الخط". كانت النتيجة مماثلة لتلك الموجودة في ملف csv.


هل فتحت ملف csv باستخدام محرر نصوص أو باستخدام Excel؟ يتم الخلط بين Excel وفواصل التحديد وآلاف النقاط والفاصلات العشرية ؛ اعتمادًا على لغة أجهزة الكمبيوتر الخاصة بك.

إذا استبدلت فاصلة المحدد بفواصل منقوطة ، فيجب أن تعمل. يمكن لمحرر نصوص جيد مثل notepad ++ لنظام التشغيل Windows القيام بذلك بسهولة.


QGIS للتعلم عن بعد وتدريس نظم المعلومات الجغرافية بالجامعات¶

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

يواجه توفير التعليم في كل من الوضع داخل الحرم الجامعي وخارجه العديد من التحديات التكنولوجية. يتطلب تدريس دورة نظم المعلومات الجغرافية التغلب على هذه التحديات. في المتوسط ​​، يسجل 300-350 طالبًا في دورة نظم المعلومات الجغرافية الأساسية كل عام. حوالي 80٪ منهم يدرسون خارج الحرم الجامعي.

USQ خريطة الحرم الجامعي الرئيسية التي تم إنشاؤها باستخدام QGIS ¶


خوارزمية محسّنة لحساب مصفوفة المسافة للمجموعات متعددة النواة

مصفوفة المسافات لها استخدامات متنوعة في مجالات بحث مختلفة. يعد حسابها عادةً مهمة أساسية في معظم تطبيقات المعلوماتية الحيوية ، خاصةً في محاذاة التسلسل المتعدد. أدى الانفجار الهائل لقواعد بيانات التسلسل البيولوجي إلى الحاجة الملحة لتسريع هذه الحسابات. DistVect تم إدخال الخوارزمية في ورقة النعمة وآخرون. (تحت الطبع) لتقديم نهج حديث لتوجيه حساب مصفوفة المسافة. أظهر أداءً فعالاً في كل من الحوسبة التسلسلية والمتوازية. ومع ذلك ، فإن أنظمة المجموعات متعددة النواة ، المتوفرة الآن ، مع قابليتها للتوسع ونسبة الأداء / التكلفة ، تلبي الحاجة إلى أداء أكثر قوة وكفاءة. تقترح هذه الورقة DistVect1 كخوارزمية متجهية متوازية عالية الكفاءة ذات أداء عالٍ لحساب مصفوفة المسافة ، موجهة إلى مجموعات متعددة النواة. يعاد صياغته DistVect1 خوارزمية متجهة من حيث العناصر الأولية للعناقيد. يستنتج منهجًا فعالًا لتقسيم وجدولة الحسابات ، ملائم لهذا النوع من الهندسة المعمارية. تستخدم التطبيقات إمكانات مكتبات MPI و OpenMP. تظهر النتائج التجريبية أن الطريقة المقترحة تؤدي إلى تحسين تسريع حوالي 3 أضعاف على SSE2. علاوة على ذلك ، فإنه يحقق أيضًا تسريعًا يزيد عن 9 أوامر من حيث الحجم مقارنة بالتطبيق الموازي المتاح للجمهور والمستخدم في ClustalW-MPI.

1 المقدمة

تشير مصفوفة المسافة (DM) إلى مصفوفة ثنائية الأبعاد تحتوي على مسافات زوجية لمجموعة من العناصر. تتمتع بلدية دبي بمجموعة واسعة من الاستخدامات في مختلف مجالات البحث العلمي. يتم استخدامه بشكل مكثف في تجميع البيانات [1] ، والتعرف على الأنماط [2] ، وتحليل الصور [3] ، واسترجاع المعلومات [4] ، والمعلوماتية الحيوية. في المعلوماتية الحيوية ، يتم استخدامه بشكل أساسي في بناء ما يسمى شجرة النشوء والتطور ، وهو رسم تخطيطي يصور خطوط النسب التطوري لمختلف الأنواع أو الكائنات الحية أو الجينات من سلف مشترك [5].

يجعل النمو الهائل للجينومات القدرة على محاذاة عدد ضخم من التسلسلات الطويلة أكثر أهمية. على سبيل المثال ، يتكون الإصدار 10 من مشروع قاعدة بيانات الريبوسوم [6] من أكثر من مليون تسلسل. هذا يؤدي إلى العدد الهائل من حسابات المسافة. بالنسبة لمحاذاة 100000 تسلسل فقط ، يلزم حساب ما يقرب من 5 مليارات مسافة لإنشاء DM كامل. حتى لو كانت التسلسلات قصيرة ويمكن إجراء حسابات المسافة الزوجية بسرعة نسبيًا ، على سبيل المثال بمعدل

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

من ناحية أخرى ، يوفر التطور السريع لأجهزة الحوسبة عالية الأداء (HPC) قدرة حسابية عالية الأداء بنسبة التكلفة. أصبحت الدقة العالية لأجهزة الكمبيوتر متعددة النواة والعناقيد والشبكات متوفرة بشكل متزايد وأكثر قوة في الوقت الحاضر [7]. لذلك ، من المهم استخدام تقنيات عالية الأداء لإطلاق إمكانات هذه الأنظمة. وفي الوقت نفسه ، أتاحت مكتبات البرمجة المتوازية مثل OpenMP و MPI للمبرمجين الاستفادة من القدرة الحسابية العظيمة لتعدد النواة والمجموعات للاستخدام للأغراض العامة.

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

هذه الورقة هي امتداد لعملنا في [8]. نسخة محسنة من DistVect الخوارزمية المقترحة. يتم إعادة توزيع الحسابات بكفاءة لإدارة اختلال التوازن بهدف تحسين الأداء العام. تمت ترقية الخوارزمية إلى النموذج الهجين لجني أقصى فوائد للنماذج الدقيقة والخشنة. الطريقة المقترحة مخصصة للمجموعات متعددة النواة نظرًا لشعبيتها في الوقت الحاضر وهي لتحقيق سرعة معالجة أعلى.

المساهمات الرئيسية لهذه الورقة هي: (1) تصميم موسعة متوازية للغاية DistVect تسمى خوارزمية لحساب مصفوفة المسافة على مجموعات متعددة النواة DistVect1، لمحاذاة التسلسلات الضخمة بسرعة ، (2) تنفيذ المقترح DistVect1 خوارزمية باستخدام C ++ مع MPI و OpenMP على منصة مكتبة الإسكندرية ، (3) إجراء تجارب شاملة باستخدام مجموعة متنوعة من أحجام مجموعات البيانات الحقيقية وإظهار أن برنامجنا المطور يتفوق على كل من ClustalW-MPI و SSE2 من حيث وقت التنفيذ ، (4) التحقيق تأثير زيادة كل من عدد المتواليات وطولها على التسريع وإثبات ذلك DistVect1 ينتج عنه تسريع كبير عندما يزداد طول الجينوم.

يتم تنظيم باقي هذه الورقة على النحو التالي. يلخص القسم 2 بإيجاز الطرق الأساسية والخوارزميات المتعلقة بمصفوفة المسافة. القسم 3 يشرح DistVect الخوارزمية. القسم 4 يناقش المحسن DistVect1. يصف القسم 5 إجراءات التنفيذ بإيجاز ويقدم النتائج مع تحليل مفصل. أخيرًا ، يختتم القسم 6 الورقة ويقترح العمل المستقبلي.

2. العمل ذات الصلة

يعتبر حساب مصفوفة المسافة بمثابة المرحلة الأساسية لمعظم أدوات محاذاة التسلسل المتعدد. لمحاذاة مجموعة بيانات بالحجم

، أين هو عدد التسلسلات ومتوسط ​​طولها ، يتطلب حساب عناصر DM

مقارنات زوجية. تستخدم كل مقارنة مصفوفة الحجم

للحصول على المسافة. يمكن أن تصبح هذه الحسابات باهظة عندما تكون كبيرة جدًا (أي في عشرات الآلاف). هناك عدد قليل من برامج المحاذاة المتعددة التي تتعامل مع مجموعات البيانات بهذا الحجم ، بدقة مقبولة ، مثل MAFFT [9] و DIALIGN [10] و Clustal [11]. يمكن أن تتعامل أكثر الطرق دقة بشكل روتيني مع مئات أو بضعة آلاف من المتواليات ، مثل MUSCLE [12] و Probcoms [13] و T-Coffee [14].

تم العثور على حلول واعدة لموازنة حسابات DM. تم تقديم خوارزميات متوازية مختلفة للتغلب على عقبات السرعة / الفضاء لأنظمة HPC المختلفة مثل الآلات متعددة المعالجات ومجموعات محطات العمل. تركز إحدى الفئات على موازاة العمليات على مكونات البيانات الأصغر. التطبيقات النموذجية لهذا النهج باستخدام multithreading موجودة في [15 ، 16]. يركز الآخرون على توزيع كل زوج مستقل من التسلسلات على معالجات مختلفة. الطريقة الموازية الأكثر شيوعًا التي تستخدم هذا الأسلوب هي ClustalW-MPI [17]. إنه مستهدف لمجموعات محطات العمل ذات بنية الذاكرة الموزعة. كانت مساهمتها الرئيسية هي توفير تنفيذ فعال للذاكرة الموزعة لـ ClustalW والتي يمكن تشغيلها على مجموعة واسعة من مجموعات أجهزة الكمبيوتر ذات الذاكرة الموزعة وأجهزة الكمبيوتر المتعددة المتوازية.

ويراوان وآخرون استغلال [18] أسلوب تداخل المهام مع نموذج SIMD. يستفيدون من حقيقة أن جميع العناصر الموجودة في نفس القطر الصغير يمكن حسابها بشكل مستقل بالتوازي. استخدموا معالجات إنتل شائعة مع مجموعة تعليمات SSE2 ، ودعم عناصر 16 بت ، وأنتجوا أداة برمجية تسمى SSE2 ، والتي تمت كتابتها بشكل أساسي بلغة C مع واجهة برمجة تطبيقات p-thread. تم استغلال هذا النهج في بعض الأساليب الحديثة [15 ، 19–21] حيث يحدث التوازي ضمن زوج واحد من المتواليات ، لتجنب تبعيات البيانات داخل مصفوفة المحاذاة.

تم استخدام GPU في [22] لتسريع محاذاة التسلسل. لقد أعادت صياغة خوارزميات المحاذاة القائمة على البرمجة الديناميكية كخوارزميات دفق من حيث أساسيات رسومات الكمبيوتر. تظهر النتائج التجريبية أن النهج القائم على GPU يسمح بزيادة السرعة بأكثر من ترتيب واحد من حيث الحجم فيما يتعلق بالتطبيقات المحسّنة لوحدة المعالجة المركزية. ومع ذلك ، هذا ليس خطيرًا لأن 99.8 في المائة من التسلسلات في قاعدة البيانات بطول & lt4،096. علاوة على ذلك ، من المعقول توقع زيادة أحجام المخزن المؤقت للنسيج المسموح به في أجهزة الرسومات من الجيل التالي.

كما أن CUDASW ++ [20] يوازي خوارزمية Smith-Waterman لوحدة معالجة الرسومات CUDA التي تحسب درجات التشابه لتسلسل استعلام مقترن بكل تسلسل في قاعدة بيانات. يُظهر تحليل الأداء تحسنًا كبيرًا في الأداء العام بترتيب من ثلاثة إلى أربعة تحديثات لخلايا جيجا في الثانية. يحقق إصدار وحدة معالجة الرسومات الواحدة متوسط ​​أداء يبلغ 9.509 GCUPS مع أدنى أداء يبلغ 9.039 GCUPS وأعلى أداء يبلغ 9.660 GCUPS ، ويحقق إصدار GPU المزدوج متوسط ​​أداء يبلغ 14.484 GCUPS مع أدنى أداء يبلغ 10.660 GCUPS وأعلى أداء 16.087 GCUPS. ولكنه يدعم تسلسلات الاستعلام التي يصل طولها إلى 59 كلفن وتسلسلات الاستعلام التي تتراوح في الطول من 144 إلى 5478.

تم استكشاف هذا النهج بشكل أكبر من قبل مؤلفيه مما أدى إلى تحسين SIMT وخوارزمية متجهية مقسمة CUDASW ++ 2.0 [19] مع أداء مذهل يصل إلى 17 GCUPS على GeForce GTX 280 و 30 GCUPS على وحدة معالجة الرسومات المزدوجة GeForce GTX 295.

وبالمثل ، فإن CUDASW ++ 3.0 [21] يقرن تعليمات CPU و GPU SIMD وينفذ عمليات حسابية لوحدة المعالجة المركزية ووحدة معالجة الرسومات المتزامنة. يستخدم وحدات تنفيذ المتجهات المستندة إلى SSE كمسرعات ويستخدم تعليمات فيديو CUDA PTX SIMD لاكتساب المزيد من توازي البيانات بما يتجاوز نموذج تنفيذ SIMT. يُظهر التقييم أن CUDASW ++ 3.0 يكتسب تحسينًا في الأداء مقارنة بـ CUDASW ++ 2.0 حتى 2.9 و 3.2 ، مع أقصى أداء يبلغ 119.0 و 185.6 GCUPS ، على وحدة معالجة رسومات واحدة GeForce GTX 680 وبطاقة رسومات ثنائية GPU GeForce GTX 690 ، على التوالي. كما أظهرت أيضًا تسريعًا كبيرًا عبر SWIPE و BLAST +. ومع ذلك ، فإن أطول تسلسل استعلام كان بطول 5478 للبحث في قواعد بيانات بروتين Swiss-Prot التي لها أكبر طول تسلسل 35213.

ومع ذلك ، لا يمكن لمعظم تطبيقات GPU محاذاة التسلسلات الأطول من 59000 وحدة بنائية. ويرجع ذلك إلى خصائص SIMD الجوهرية لـ GPG ، حيث تسمح خطوط الأنابيب بعامل تسريع كبير ، ومع ذلك فإن الاستخدام المكثف للذاكرة قد يؤدي إلى اختناقات. هذا يؤدي إلى نشر معماريات أخرى مثل العديد من النوى [23]. تم تطوير MC64-ClustalWP2 مؤخرًا كتطبيق جديد لخوارزمية ClustalW ، لمحاذاة التسلسلات الطويلة في البنى مع العديد من النوى. يتم تشغيل محاذاة متعددة أسرع 18 مرة من خوارزمية ClustalW الأصلية ويمكنه محاذاة التسلسلات الطويلة نسبيًا (أكثر من 10 كيلو بايت).

اقترح المؤلفون خوارزمية حساب مصفوفة مسافة متجهة تسمى DistVect [8]. تعالج الخوارزمية مشكلة بناء أداة متوازية للمراكز المتعددة تنتج محاذاة تسلسلات متعددة في وقت قصير دون استخدام مساحة تخزين كبيرة. كانت المساهمة الرئيسية هي توجيه جميع المصفوفات المستخدمة في الحساب. من الناحية التجريبية ، حققت الطريقة المقترحة قدرة جيدة على محاذاة عدد كبير من التسلسلات من خلال إمكانات معالجة التخزين المحسنة القوية مع التحسين الفعال لوقت المعالجة الكلي.

3. DistVect الخوارزمية

DistVect [8] هي خوارزمية متسارعة تحسب مصفوفة المسافة لمحاذاة مجموعات البيانات الضخمة. لديها ميزة استنفاد مساحة أقل. يأخذ ، كمدخلات , التسلسلات

من متوسط ​​الطول ، مع مصفوفة الاستبدال sbt وتكلفة الثرثرة

. ينتج متجه مسافة ،

، التي تحتوي على درجة التشابه (المسافة) لكل من التسلسلين. إنه يعمل على المصفوفات الموجهة التي قدمها Liu et al. في [22] ويستخدمه ويراوان وآخرون. في [18]. إنه يوازي حسابات حل المتجهات ، مع مراعاة ميزة استقلالية عناصر الأقطار الصغيرة للمصفوفات.

لحساب عدد المطابقات الدقيقة وجعلها مناسبة لتنفيذ متوازي دقيق الحبيبات ، Liu et al. [22] صاغ علاقة تكرار لعدد حسابات المطابقة الدقيقة الأكثر ملاءمة للتنفيذ باستخدام عقوبة الفجوة الخطية. تسهل هذه الصيغة العمليات الحسابية بدون حساب المحاذاة الفعلية. نظرا لتسلسلين


شاهد الفيديو: قياس المسافة الافقية في المساحة الهندسية (شهر اكتوبر 2021).