الحركة العكسية

الحركة الأمامية مقابل الحركة العكسية

في الرسوم المتحركة بالكمبيوتر والروبوتات ، تُعَد الحركة العكسية العملية الرياضية لحساب معلمات المفصل المتغيرة اللازمة لوضع نهاية سلسلة حركية ، مثل روبوت معالج أو هيكل عظمي لشخصية رسوم متحركة ، في موضع واتجاه معينين بالنسبة لبداية السلسلة. بناءً على معلمات المفصل، يمكن عادةً حساب موضع واتجاه نهاية السلسلة، مثل يد الشخصية أو الروبوت، مباشرةً باستخدام تطبيقات متعددة للصيغ المثلثية، وهي العملية المعروفة باسم الحركة الأمامية . ومع ذلك، فإن العملية العكسية، بشكل عام، أكثر تحديًا. [1] [2] [3]

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

الروبوتات

في علم الروبوتات، تستخدم الحركية العكسية معادلات الحركية لتحديد معلمات المفصل التي توفر تكوينًا مرغوبًا (الموضع والدوران) لكل من المحركات النهائية للروبوت . [4] وهذا مهم لأن مهام الروبوت يتم إجراؤها باستخدام المحركات النهائية، بينما يتم تطبيق جهد التحكم على المفاصل. يُعرف تحديد حركة الروبوت بحيث تتحرك محركاته النهائية من تكوين أولي إلى تكوين مرغوب باسم تخطيط الحركة . تحول الحركية العكسية خطة الحركة إلى مسارات محرك مفصل للروبوت. [2] تحدد الصيغ المماثلة مواضع هيكل عظمي لشخصية متحركة تتحرك بطريقة معينة في فيلم، أو مركبة مثل سيارة أو قارب يحتوي على كاميرا تصور مشهدًا من فيلم. بمجرد معرفة حركات المركبة، يمكن استخدامها لتحديد وجهة النظر المتغيرة باستمرار للصور المولدة بواسطة الكمبيوتر للأشياء في المناظر الطبيعية مثل المباني، بحيث تتغير هذه الأشياء في المنظور بينما لا يبدو أنها تتحرك عندما تمر الكاميرا المحمولة على المركبة بجانبها.

يتم نمذجة حركة السلسلة الحركية ، سواء كانت روبوتًا أو شخصية متحركة، من خلال معادلات الحركة الخاصة بالسلسلة. تحدد هذه المعادلات تكوين السلسلة من حيث معلمات مفصلها. تستخدم الحركية الأمامية معلمات المفصل لحساب تكوين السلسلة، وتعكس الحركية العكسية هذا الحساب لتحديد معلمات المفصل التي تحقق التكوين المطلوب. [5] [6] [7]

التحليل الحركي

نموذج للهيكل العظمي البشري على شكل سلسلة حركية يسمح بتحديد المواقع باستخدام الحركية العكسية.

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

الحركة العكسية هي مثال على التحليل الحركي لنظام مقيد من الأجسام الصلبة، أو سلسلة الحركة . يمكن استخدام المعادلات الحركية للروبوت لتحديد معادلات الحلقة لنظام مفصلي معقد. هذه المعادلات الحلقية هي قيود غير خطية على معلمات تكوين النظام. تُعرف المعلمات المستقلة في هذه المعادلات بدرجات حرية النظام.

في حين توجد حلول تحليلية لمشكلة الحركية العكسية لمجموعة واسعة من السلاسل الحركية، فإن أدوات النمذجة والرسوم المتحركة الحاسوبية تستخدم غالبًا طريقة نيوتن لحل معادلات الحركية غير الخطية. [2] عند محاولة إيجاد حل تحليلي، غالبًا ما يكون من المناسب استغلال هندسة النظام وتحليله باستخدام مشاكل فرعية ذات حلول معروفة . [8] [9]

تشمل التطبيقات الأخرى لخوارزميات الحركة العكسية التلاعب التفاعلي والتحكم في الرسوم المتحركة وتجنب الاصطدام .

الحركة العكسية والرسوم المتحركة ثلاثية الأبعاد

تعتبر الحركة العكسية مهمة لبرمجة الألعاب والرسوم المتحركة ثلاثية الأبعاد ، حيث يتم استخدامها لربط شخصيات اللعبة جسديًا بالعالم، مثل هبوط الأقدام بقوة على سطح التضاريس (انظر [10] للحصول على دراسة شاملة حول تقنيات الحركة العكسية في الرسومات الحاسوبية).

يتم تصميم الشكل المتحرك باستخدام هيكل من أجزاء صلبة متصلة بمفاصل تسمى السلسلة الحركية . تحدد معادلات الحركية للشكل العلاقة بين زوايا المفاصل في الشكل ووضعه أو تكوينه. تستخدم مشكلة الرسوم المتحركة الحركية الأمامية معادلات الحركية لتحديد الوضع بالنظر إلى زوايا المفاصل. تحسب مشكلة الحركية العكسية زوايا المفاصل لوضع مرغوب فيه للشكل.

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

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

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

الحلول التحليلية للحركية العكسية

في بعض الحالات، ولكن ليس كلها، توجد حلول تحليلية لمشاكل الحركة العكسية. ومن الأمثلة على ذلك روبوت ذو 6 درجات حرية (على سبيل المثال، 6 مفاصل دوارة) يتحرك في فضاء ثلاثي الأبعاد (مع 3 درجات حرية موضعية، و3 درجات حرية دورانية). إذا تجاوزت درجات حرية الروبوت درجات حرية المحرك النهائي، على سبيل المثال مع روبوت ذو 7 درجات حرية مع 7 مفاصل دوارة، فهناك عدد لا نهائي من الحلول لمشكلة IK، ولا يوجد حل تحليلي. وبتوسيع هذا المثال بشكل أكبر، من الممكن إصلاح مفصل واحد وحل المفاصل الأخرى تحليليًا، ولكن ربما يتم تقديم حل أفضل من خلال الأساليب العددية (القسم التالي)، والتي يمكنها بدلاً من ذلك تحسين الحل مع الأخذ في الاعتبار التفضيلات الإضافية (التكاليف في مشكلة التحسين).

الحل التحليلي لمشكلة الحركية العكسية هو عبارة مغلقة الشكل تأخذ وضعية المؤثر النهائي كمدخل وتعطي مواضع المفصل كمخرج، . يمكن أن تكون حلول الحركية العكسية التحليلية أسرع بشكل ملحوظ من الحلول الرقمية وتوفر أكثر من حل، ولكن فقط عددًا محدودًا من الحلول، لوضعية المؤثر النهائي المحددة.

تتمكن العديد من البرامج المختلفة (مثل برامج FOSS IKFast ومكتبة Inverse Kinematics Library) من حل هذه المشكلات بسرعة وكفاءة باستخدام خوارزميات مختلفة مثل أداة FABRIK. إحدى المشكلات المتعلقة بهذه الأدوات هي أنها معروفة بأنها لا تقدم بالضرورة حلولاً سلسة محليًا بين تكوينين متجاورين، مما قد يتسبب في عدم الاستقرار إذا كانت هناك حاجة إلى حلول تكرارية للحركية العكسية، مثل إذا تم حل IK داخل حلقة تحكم عالية المعدل.

الحلول العددية لمشاكل IK

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

تقنية جاكوبيان العكسية

إن تقنية العكس اليعقوبي هي طريقة بسيطة ولكنها فعالة لتطبيق الحركية العكسية. دع المتغيرات تحكم معادلة الحركية الأمامية، أي دالة الموضع. قد تكون هذه المتغيرات زوايا مفصلية أو أطوال أو قيم حقيقية تعسفية أخرى. على سبيل المثال، إذا كان نظام IK يعيش في فضاء ثلاثي الأبعاد، فيمكن اعتبار دالة الموضع بمثابة تعيين . دع الموضع الأولي للنظام، و

يكون موضع الهدف للنظام. تحسب تقنية العكس الجاكوبي بشكل متكرر تقديرًا يقلل من الخطأ المعطى بواسطة .

بالنسبة للمتجهات الصغيرة، فإن التوسع المتسلسل لدالة الموضع يعطي

,

أين هي مصفوفة جاكوبي (3 × م) لدالة الموضع عند .

يمكن تقريب المدخل (i, k) من مصفوفة Jacobian عدديًا

,

حيث يعطي المكون i لدالة الموضع، وهو ببساطة مع إضافة دلتا صغيرة إلى مكونه k، وهو قيمة موجبة صغيرة إلى حد معقول.

يؤدي أخذ شبه معكوس مور-بينروز لجاكوبيان (يمكن حسابه باستخدام تحلل القيمة المفردة ) وإعادة ترتيب المصطلحات إلى

,

أين .

سيؤدي تطبيق طريقة Jacobian العكسية مرة واحدة إلى الحصول على تقدير تقريبي للغاية للمتجه المطلوب . يجب استخدام بحث خطي لتوسيع هذا إلى قيمة مقبولة. يمكن تحسين التقدير لـ من خلال الخوارزمية التالية (المعروفة باسم طريقة نيوتن-رافسون ):

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

الأساليب الاستدلالية

يمكن أيضًا تقريب مشكلة الحركية العكسية باستخدام الطرق الاستدلالية. تقوم هذه الطرق بإجراء عمليات تكرارية بسيطة تؤدي تدريجيًا إلى تقريب الحل. تتمتع الخوارزميات الاستدلالية بتكلفة حسابية منخفضة (تعيد الوضع النهائي بسرعة كبيرة)، وعادةً ما تدعم القيود المشتركة. أكثر الخوارزميات الاستدلالية شيوعًا هي انحدار الإحداثيات الدورية (CCD) [11] والحركية العكسية ذات الوصول الأمامي والخلفي (FABRIK). [12]

انظر أيضا

مراجع

  1. ^ دونالد إل. بيبر، حركية المتلاعبين تحت سيطرة الكمبيوتر. أطروحة دكتوراه، جامعة ستانفورد، قسم الهندسة الميكانيكية، 24 أكتوبر 1968.
  2. ^ abc Lynch, Kevin M.; Park, Frank C. (2017-05-25). Modern Robotics. Cambridge University Press. ISBN 978-1-107-15630-2.
  3. ^ سيسيليانو، برونو؛ الخطيب، أسامة (2016-06-27). دليل سبرينغر للروبوتات. دار سبرينغر للنشر الدولية. رقم ISBN 978-3-319-32550-7.
  4. ^ بول، ريتشارد (1981). روبوتات التلاعب: الرياضيات والبرمجة والتحكم: التحكم الحاسوبي في روبوتات التلاعب. مطبعة معهد ماساتشوستس للتكنولوجيا، كامبريدج، ماساتشوستس. رقم ISBN 978-0-262-16082-7.
  5. ^ JM McCarthy، 1990، مقدمة في علم الحركة النظرية، مطبعة معهد ماساتشوستس للتكنولوجيا، كامبريدج، ماساتشوستس.
  6. ^ جيه جيه أويكر، جي آر بينوك، وجي إي شيجلي، 2003، نظرية الآلات والآليات، مطبعة جامعة أكسفورد، نيويورك.
  7. ^ JM McCarthy و GS Soh، 2010، التصميم الهندسي للارتباطات، سبرينغر، نيويورك.
  8. ^ بادن، برادلي إيفان (1985-01-01). الحركة والتحكم في أجهزة التحكم الروبوتية (أطروحة). رمز Bibcode :1985PhDT........94P.
  9. ^ موراي، ريتشارد م.؛ لي، زيكسيانج؛ ساستري، س. شانكار؛ ساستري، س. شانكارا (1994-03-22). مقدمة رياضية للتلاعب الآلي. دار نشر سي آر سي. رقم ISBN 978-0-8493-7981-9.
  10. ^ أ. أريستدو، ج. لاسينبي، ي. كريسانثو، أ. شامير. تقنيات الحركة العكسية في الرسومات الحاسوبية: دراسة استقصائية. منتدى الرسومات الحاسوبية، 37(6): 35-58، 2018.
  11. ^ DG Luenberger. 1989. البرمجة الخطية وغير الخطية. أديسون ويسلي.
  12. ^ أ. أريستدو، وج. لاسينبي. 2011. فابريك: حل سريع وتكراري لمشكلة الحركية العكسية. الرسم البياني. النماذج 73، 5، 243-260.
  • الحركة العكسية للوصول للأمام والخلف (FABRIK)
  • الروبوتات والرسوم المتحركة ثلاثية الأبعاد في FreeBasic (بالإسبانية)
  • حل الحركية العكسية التحليلية - بناءً على وصف الحركية الروبوتية OpenRAVE، يتم إنشاء ملف C++ يحل تحليليًا IK بالكامل.
  • خوارزميات الحركة العكسية
  • الحل العكسي للروبوت لهندسة الروبوت الشائعة
  • مقالة من HowStuffWorks.com بعنوان كيف تتحرك الشخصيات في ألعاب الفيديو بسلاسة؟ مع شرح للحركة العكسية
  • رسوم متحركة ثلاثية الأبعاد لحساب الحركة العكسية الهندسية لروبوت صناعي
  • نظرية الحركة ثلاثية الأبعاد
  • حركية البروتين العكسية
  • مثال بسيط على الحركة العكسية باستخدام الكود المصدري باستخدام Jacobian
  • وصف تفصيلي لحلول Jacobian وCCD للحركية العكسية
  • أوتوديسك هيومان آي كيه
  • تصور ثلاثي الأبعاد لحل تحليلي لروبوت صناعي
تم الاسترجاع من "https://en.wikipedia.org/w/index.php?title=الحركة_العكسية&oldid=1245856487"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate