Vahid 2 / 11

Python ilə hesablama və ədədi üsullar

Qazanclar:

  • Süni intellektin fiziki hesablamanı NumPy/SciPy koduna çevirməsi və kodun özünü idarə etməsi ilə şifahi təxminlərə deyil, deterministik nəticəyə etibar etmək bacarığı
  • Rəqəm kodunun etibarlılığını cavabı məlum olan sadə bir vəziyyətlə sınaqdan keçirmək və yaxınlaşmasını yoxlamaq bacarığı.
  • Dəyişən vahidləri kodda əks etdirməklə nəticənin vahidini və səviyyəsini fiziki olaraq təmin etmək bacarığı

Fizikada bir çox məsələləri əl ilə həll etmək mümkün deyil: inteqralın analitik həlli yoxdur, tənliklər sisteminin kökünü qapalı formada tapmaq mümkün deyil və ya hesablama minlərlə dəfə təkrarlanmalıdır. Burada ədədi üsullar işə düşür: dəqiq düstur əvəzinə kompüter təxmini, lakin idarə olunan dəqiqliklə addım-addım hesablayır. Bu bölmədə siz süni intellektin (AI) hesablama fizikası hesablamaları üçün kod partnyoru kimi necə istifadə ediləcəyini, onun yaratdığı kodun necə yoxlanılacağını və hansı tələlərə düşməməyiniz lazım olduğunu öyrənəcəksiniz. Fizikin buradakı standart alətləri Python dili və NumPy (ədədi massivlər və sürətli riyaziyyat üçün kitabxana), həmçinin SciPy (elmi hesablamalar üçün kitabxana; inteqrasiya, radikal tapıntı, optimallaşdırma daxildir) olacaq.

Niyə AI + Python, niyə əl ilə olmasın?

Rəqəmsal hesablamaları əl ilə yerinə yetirmək həm yavaş, həm də səhvlərə meyllidir. Süni intellekt bir neçə saniyə ərzində fiziki konstruksiyanızı işləyən Python koduna çevirə bilər. Ancaq burada qızıl qayda belədir: AI kodu yazır, siz kodu işlədirsiniz və nəticəni fizika ilə yoxlayırsınız. AI-nin "bu kod bunu verir" deməsi bir proqnozdur; Əslində kodu işlətmək və çıxışı görmək müəyyən bir faktdır. LLM ağlına yazdığı kodun çıxışını "hesablaya" və səhv rəqəm deyə bilər; halbuki eyni kod işlədildikdə düzgün nəticə verir. Beləliklə, AI-nin şifahi olaraq verdiyi rəqəmsal nəticəyə heç vaxt etibar edin - kodu işə salın.

Əsas hesablama tapşırıqları və AI-nin rolu

Quest

Metod/alət

fiziki yoxlama

müəyyən inteqral

scipy.integrate.quad

Limit halları, ölçülü analiz

tənliyin kökü

scipy.optimize.brentq

Kökü yerinə qoyun və sıfır olub olmadığını yoxlayın.

Xətti tənliklər sistemi

numpy.linalg.həll etmək

Çözümün sistemə qaytarılması

Törəmə (rəqəm)

Mərkəzi fərq və ya numpy.gradient

Analitik törəmə ilə müqayisə

Kütləvi vektorun hesablanması

NumPy massivləri

Vahid və dərəcəyə nəzarət

AI bu vasitələrdən hansının uyğun olduğunu təklif etməkdə və sintaksisi (kod yazma qaydaları) düzgün əldə etməkdə çox yaxşıdır. Ancaq hansı metodun fiziki məna kəsb etdiyinə və nəticənin düzgünlüyünə siz qərar verirsiniz.

Addım-addım: yoxlanıla bilən ədədi hesablama

1. Problemi və vahidləri aydınlaşdırın. Məsələn: "0-dan sonsuza qədər e^(−x²) inteqralını hesablayın; nəticə √π/2 ≈ 0,8862 olmalıdır." Gözlənilən nəticənin yenidən yazılması (əgər varsa) yoxlamanı asanlaşdırır.

2. Kod üçün AI-dən soruşun, ancaq çıxışı həyata keçirirsiniz. Kod blokunu kopyalayın və onu öz mühitinizdə işə salın (Jupyter, Colab, yerli Python).

3. Məlum vəziyyətlə sınaqdan keçirin. Cavabını artıq bildiyiniz sadə bir vəziyyətlə kodu sınayın. Məsələn, ∫₀¹ x dx = 0.5 kimi əl ilə bildiyiniz nümunə ilə inteqral kodu sınayın. Əgər kod bunu düzgün verirsə, güvəniniz artır.

4. Konvergensiyanı yoxlayın. Rəqəmsal üsullarda addımların sayını artırdığınız zaman nəticə sabit dəyərə yaxınlaşmalıdır. Əgər yaxınlaşmırsa, üsul uyğun deyil.

5. Vahid və dərəcəni yoxlayın. Həmişə rəqəmsal nəticəni fiziki vahid və sıra ilə təmin edin.

İpucu: Süni intellektdən kod tələb edərkən, “həmçinin nəticəni məlum analitik dəyərlə müqayisə edən test xəttini daxil edin” deyin. Beləliklə, kod həm hesablama aparır, həm də məlum vəziyyətdə özünü yoxlayır. Bu, səhvləri dərhal görünən edir.

üç mini qutu

1-ci hal — Yanlış şifahi nəticə. Bir tələbə süni inteqral kod yazdırdı və AI "bu kod təxminən 1.77 verir" dedi. Tələbə kodu işlətdi: faktiki çıxış 0,886 idi. AI kodun çıxışını proqnozlaşdırmaqda səhv etdi; Kod düzgün idi. Dərs: koda etibar edin, şifahi təxminlərə etibar etməyin.

2-ci hal – Rəqəmsal qeyri-sabitlik. Tədqiqatçı süni intellektin yazdığı kök tapmaq kodu ilə tənliyin kökünü axtardı. Kod bir kök qaytardı, lakin tədqiqatçı kökü yenidən tənliyə qoyanda nəticə sıfır deyil, çox böyük bir rəqəm oldu. Problem onda idi ki, başlanğıc diapazonunda kök yoxdur; AI müvafiq diapazonu qəbul etdi. Tədqiqatçı fiziki məlumatlarla intervalı düzəltdi və düzgün kök tapdı.

Case 3 - Təsdiq əldə edildi. Mühəndis yük altında şüanın əyilməsini ədədi olaraq hesablayan bir kod istədi. Kod işlədi, lakin nəticə metrlərlə əyilmə göstərdi - polad şüa üçün mümkün deyil. Mühəndis bölmələri araşdırdı: AI 10⁹ əmsalını itirərək GPa əvəzinə Pa elastik moduluna sahib olduğunu iddia etdi. Vahidin düzəldilməsi ilə nəticə millimetrə qədər azaldı və ağlabatan oldu.

Dörd kopyalana bilən şablon

1) Doğrulama xətti ilə rəqəmsal hesablama:

Aşağıdakı fiziki hesablamanı yerinə yetirən Python (NumPy/SciPy) kodunu yazın: [problem]. Bütün dəyişənləri SI vahidlərində elan edin və vahidi şərh xətti ilə göstərin. Nəticəni məlum analitik/sadə dəyərlə müqayisə edən kodun sonuna yoxlama xətti əlavə edin (təsdiq və ya çap edin). Mən kodu işlədəcəm; siz çıxışı təxmin etmirsiniz, sadəcə kodu və gözlənilən rütbəni yazın.

2) Metod seçimi ilə bağlı məsləhətləşmə:

Mən aşağıdakı məsələni ədədi olaraq həll etmək istəyirəm: [problem].Hansı SciPy/NumPy funksiyası uyğundur və NİYƏ? 2 alternativ üsul təklif edin, dəqiqlik və sabitlik baxımından hər birinin müsbət/eksik tərəflərini yazın. Hansı fiziki vəziyyətdə hansına üstünlük veriləcəyini bildirin.

3) Konvergensiya yoxlanışı:

Aşağıdakı ədədi hesablamanın addımlarının sayını artırmaqla nəticənin necə birləşdiyini göstərən Python kodunu yazın (məsələn, N=10, 100, 1000). Nəticələri cədvəldə çap edin. Konvergensiya yoxdursa, bunun fiziki/rəqəm səbəbini bir cümlə ilə izah edin. Kod: [burada]

4) Vahid nəzarəti:

Aşağıdakı kodda hər bir dəyişənin SI vahidini şərh edin və yekun nəticənin vahidinin gözlənilən vahidə (məsələn, metr, joule) uyğun olub olmadığını yoxlayın. Əgər uyğunsuzluq varsa, onun hansı sətirdə olduğunu göstərin. Kod: [burada]

Zəif məlumat / Güclü göstəriş

Zəif: "Bu inteqralın nəticəsini deyin: ∫₀^∞ x²·e^(−x) dx"
Nəticə: Süni intellekt öz başına bir rəqəm tökür (bəlkə doğru, bəlkə də səhv); icra edilə bilən heç nə yoxdur, yoxlanıla bilən heç nə yoxdur.
Güclü: "Scipy.integrate.quad ilə ∫₀^∞ x²·e^(−x) dx inteqralını hesablayan Python kodunu yazın. Nəticəni bu inteqralın analitik dəyəri ilə müqayisə edən təsdiq xətti əlavə edin, 2! = 2. Kodu işlədəcəm."
Nəticə: İcra edilə bilən kod, daxili yoxlama (analitik dəyərlə müqayisə) və etibarlı nəticə.

Ümumi səhvlər

  • AI-nin şifahi rəqəmsal nəticəsinə güvənərək. LLM başdakı kodun çıxışını səhv proqnozlaşdıra bilər. Həmişə kodu işlədin.
  • Məlum vəziyyətlə sınaqdan keçirilmir. Cavabını bildiyiniz sadə bir nümunə ilə test etməyən kodda gizli xətalar ola bilər.
  • Konvergensiya yoxlanılmır. Tək addım sayına sadiq qalmaq nəticənin ədədi cəhətdən etibarlı olub-olmadığını gizlədir.
  • Koddakı vahidləri əks etdirmir. Dəyişənlərin vahidini şərh etməmək səssiz 10ⁿ səhvlərə dəvət edir.
  • Kitabxana versiyasına/fərziyyələrinə məhəl qoymamaq. Bəzən AI mövcud olmayan funksiya adı və ya köhnəlmiş sintaksis yarada bilər; Onu işlədəndə nəzərə çarpır.
Diqqət: Rəqəmsal nəticəni nəşrə, tapşırığa və ya dizayna daxil etməzdən əvvəl kodu müstəqil məlum vəziyyətlə sınaqdan keçirin və nəticəni vahidlər/sifarişlərlə təqdim edin. Hətta iş kodu səhv fizikanı hesablaya bilər; Sadəcə kodun işləməsi fizikanın düzgün olması demək deyil.

Xülasə

AI fiziki hesablamaları Python koduna çevirməkdə güclü tərəfdaşdır; Amma onun şifahi verdiyi rəqəmlər fakt deyil, təxmindir. Təhlükəsiz iş axını aydındır: problemi bölmələri ilə müəyyənləşdirin, AI kodu yazsın, lakin siz çıxışı işə salın, kodu məlum vəziyyətlə sınayın, konvergensiyanı və vahidi yoxlayın. Deterministik olan icra olunan koddur; Bu LLM deyil. Növbəti bölmədə biz bu ədədi əsası zamanla dəyişən fiziki sistemlərin simulyasiyasına keçirəcəyik.

Tətbiq tapşırığı

Analitik həllini bildiyiniz fizika hesabını seçin (məsələn, müəyyən bir müddət ərzində sərbəst düşən obyektin sürəti və ya sadə müəyyən inteqral). AI şablon 1 ilə Python kodu yazsın; kodu özünüz işlədin. Nəticəni bildiyiniz analitik dəyərlə müqayisə edin. Sonra addımların sayını və ya parametri dəyişdirərək nəticənin necə davrandığını müşahidə edin. 5-6 cümlədə qeyd edin: kodun çıxışı şifahi proqnoza uyğun gəlirdi, vahid/sifariş məsələsi var idi?

yoxlama siyahısı

  • [ ] Problemi və bütün dəyişənlərin vahidini aydınlaşdırdım.
  • [ ] AI tərəfindən yazılmış kodu özüm işlətdim, şifahi nəticəyə inanmadım.
  • [ ] Mən kodu cavabını bildiyim sadə bir vəziyyətlə sınaqdan keçirdim.
  • [ ] Konvergensiyanı və ya parametr həssaslığını yoxladım.
  • [ ] Mən fiziki olaraq nəticənin vahidini və sırasını təmin etdim.
  • [ ] İstifadə etdiyim kitabxana funksiyalarının real və aktual olduğunu təsdiqlədim.