وحدة 10 / 11

الهندسة الكيميائية مع بايثون: تحليل البيانات وأتمتة النمذجة

المكاسب:

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

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

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

بايثون مع الذكاء الاصطناعي في الهندسة الكيميائية: خطوة بخطوة

1. حدد الوظيفة بوضوح. ما هو الإدخال (CSV، المصفوفة، المعادلة)، ماذا يجب أن يكون الإخراج، في أي وحدات؟ المطالبة الغامضة تعني رمزًا سيئًا.

2. اطلب مسودة الكود. يُنتج الذكاء الاصطناعي رسمًا تخطيطيًا باستخدام المكتبات المناسبة (pandas للبيانات، وnumpy للمعالجة العددية، وmatplotlib للرسوم البيانية، وscipy للتحسين/الحل).

3. فهم المكتبة والافتراضات. اطلب من الذكاء الاصطناعي أن يشرح كل سطر وافتراض (الوحدة، تنسيق البيانات، القبول). لا تقم بتشغيل التعليمات البرمجية التي لا تفهمها.

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

5. التحكم في حالة الوحدة والحافة. ماذا يفعل الكود في حالات الحافة مثل القيم الصفرية والسالبة والكبيرة جدًا والبيانات المفقودة؟ في الهندسة الكيميائية، يعد فشل الوحدة كارثة كلاسيكية.

6. اختبر النتيجة بالفيزياء. أنتج الكود رقمًا - هل الكتلة محفوظة، هل القيمة واقعية؟ فقط لأن الكود يعمل لا يثبت أن النتيجة صحيحة.

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

الكود غير المختبر هو فرضية

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

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

ثلاث حالات صغيرة

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

الحالة 2 - خطأ في مستوى الصوت الصامت. كتب YZ رمزًا لحساب انخفاض الضغط ولكنه أربك المدخلات من خلال افتراض الشريط والصيغة Pa. وعمل الرمز بدون أخطاء، ولكن النتيجة كانت خاطئة بعامل 100000. اكتشف المهندس فرق الطلب من خلال حساب التحكم اليدوي. بعد إضافة تعليقات الوحدة تم توضيح الخطأ وإصلاحه.

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

أربعة قوالب قابلة للنسخ

1) مسودة كود تحليل البيانات:

دورك: مساعد بايثون للهندسة الكيميائية. المهمة: [الوصف].الإدخال: [CSV/مصفوفة، أعمدة، وحدات]. الإخراج: [ماذا، في أي وحدة].استخدم الباندا/نومبي. في الكود: (1) تفسير وحدة كل متغير، (2) ذكر افتراضات الإدخال في البداية، (3) التعامل مع حالات الحافة (البيانات المفقودة، صفر). سأختبر الكود بمثال معروف؛ لا تستخدم الأرقام السحرية، قم بتعريف الثوابت بشكل صريح.

2) شرح الكود والتحقق منه:

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

3) إعداد اختبار ذو نتيجة معروفة:

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

4) التصحيح:

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

موجه ضعيف / موجه قوي

حث ضعيف:

اكتب لي كود حساب هبوط الضغط.

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

مطالبة قوية:

دورك: مساعد بايثون في الهندسة الكيميائية. المهمة: انخفاض الضغط الناتج عن الاحتكاك في أنبوب دائري. الإدخال: معدل التدفق [m3/s]، القطر [m]، الطول [m]، الكثافة [kg/m3]، اللزوجة [Pa·s]. الإخراج: انخفاض الضغط [Pa].استخدم Darcy-Weisbach؛ التحقق من نظام التدفق (إعادة) لعامل الاحتكاك. قم بالتعليق على كل وحدة، وافتراضات الحالة (الحمل الكامل، التدفق المستقر). سأختبر الكود مقابل الحساب اليدوي في مثال طبقي.

الفرق واضح: وحدات الإدخال والطريقة ووحدة الإخراج وهدف الاختبار تجعل الكود موثوقًا به.

توزيع الأدوار في استخدام بايثون

عمل

دور الذكاء الاصطناعي

قرار الرجل

رمز الكتابة

قم بإنشاء مسودة

الوصف الوظيفي، الوحدات

اختيار المكتبة

اقتراح

تأكيد المطابقة

الوصف

سطرًا تلو الآخر

قبول مع الفهم

اختبار

توصية مجموعة الاختبار

التحقق من الصحة مع نتيجة معروفة

تصحيح

فرضية، اتجاه

تأكيد السبب الجذري

الاستنتاج

توليد الأرقام

اختبار مع الفيزياء

الأخطاء الشائعة

  • استخدام الكود دون اختباره. رمز العمل ليس رمزًا صحيحًا؛ ولا يمكن الوثوق به إلا إذا تم اختباره بنتيجة معروفة.
  • ترك الوحدات غير محددة. يعد الخلط بين الوحدات هو الخطأ الأكثر شيوعًا وخطورة في الهندسة الكيميائية.
  • تعمل دون فهم. لا تثق في النتائج دون فهم الكود الذي يكتبه الذكاء الاصطناعي سطرًا تلو الآخر.
  • تجاوز حالات الحافة. يمكن أن تؤدي البيانات المفقودة السلبية الصفرية إلى قيادة الكود بصمت إلى نتيجة خاطئة.
  • بناء حساب الأمان على الكود فقط. تتطلب رموز الأمان الحرجة إجراء اختبار + تحقق رسمي مستقل.

في ملخص

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

مهمة التطبيق

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

قائمة مرجعية

  • [ ] لقد ذكرت بوضوح وحدات الإدخال/الإخراج والطريقة.
  • [ ] لقد فهمت الكود سطرًا تلو الآخر ورأيت افتراضاته.
  • [ ] لقد اختبرت الكود على مثال معروف/يمكن فك شفرته يدويًا.
  • [ ] لقد اختبرت حالات الحافة (صفر، سلبية، بيانات مفقودة).
  • [ ] لقد تحققت من النتيجة باستخدام الفيزياء (حفظ الكتلة، النظام)؛ كما تم تأكيد حساب الأمان من قبل المسؤول.