Vienetas 3 / 11

Greitas dizaino tyrimas naudojant aerodinamiką, CFD ir surogatinius modelius

Pelnas:

  • Gebėti paaiškinti, kaip dirbtinis intelektas naudojamas sąrankoje, rezultatų interpretacijoje ir pakaitinio modelio generavime skaičiavimo skysčio dinamikos (CFD) procese.
  • Galimybė greitai nuskaityti didelę dizaino erdvę ir reitinguoti kandidatų geometrijas naudojant mašininio mokymosi pakaitinius modelius
  • Galimybė patvirtinti dirbtinio intelekto varomus aerodinamines išvestis pagal konvergencijos, tinklo nepriklausomumo ir fizinio patikimumo kriterijus

Kaip sparnas sukuria pakėlimą, kaip fiuzeliažas skaido orą, kaip valdymo paviršius nukreipia srautą; Aerodinamika yra mokslas apie šias nematomas jėgas. Inžinierius išmoksta šias jėgas dviem būdais: eksperimentuodamas vėjo tunelyje arba naudodamas kompiuterinę skaičiavimo skysčių dinamiką (CFD; Computational Fluid Dynamics – metodas, leidžiantis srauto lygtis skaitmeniniame skaičiavimo tinkle). CFD yra galingas, bet brangus: sudėtingas vykdymas gali užtrukti valandas, net dienas, o tai duoda vieną dizaino tašką. Inžinierius, norintis išbandyti šimtus dizainų, čia susiduria su kliūtimi.

Dirbtinis intelektas (AI) atveria šią kliūtį dviejose vietose. Pirma, pačiame CFD procese: sąrankos valdymas, rezultatų interpretavimas ir ataskaitų teikimas. Antra, labiau transformuojantys, yra pakaitiniai modeliai (mašininio mokymosi modelis, kuris išmoksta brangaus modeliavimo įvesties ir išvesties santykį ir pateikia apytikslę prognozę sekundėmis). Pakaitinio modelio dėka didelė dizaino erdvė nuskaitoma per kelias sekundes, o ne valandas, atrenkami keli perspektyvūs kandidatai ir tik jie dideliu tikslumu apskaičiuojami visu CFD. Šiame skyriuje taikome nekintamą taisyklę, kai į šią darbo eigą įterpiame dirbtinį intelektą: supaprastinti rezultatai nepriimami neparodžius konvergencijos ir tinklo nepriklausomumo ir nepraėjus fizinio patikimumo filtro.

Sąvokos: Konvergencija: Sprendimas, nusėdantis prie pastovios vertės iteracijų eigoje; Jei jis netinka, rezultatas yra nepatikimas. Tinklo nepriklausomumas: sugriežtinus sąskaitų tinklą rezultatas iš esmės nepasikeičia. CL/CD: kėlimo koeficientas / pasipriešinimo koeficientas; pagrindinis aerodinaminio efektyvumo matas. Surogatinis modelis: greitas apytikslis imitacijos imitavimas.

AI vieta CFD darbo eigoje

CFD paleidimas susideda iš maždaug penkių žingsnių: geometrijos paruošimo, tinklelio generavimo, sprendiklio sąrankos, paleidimo ir tolesnio apdorojimo. Dirbtinis intelektas kiekviename žingsnyje padeda skirtingai, tačiau jis neturi galutinio žodžio dėl nė vieno iš jų.

Kuriant tinklelį, AI gali apytiksliai apskaičiuoti pradinį langelio aukštį, palyginti su y+ taikiniu, kad būtų pasiekta ribinio sluoksnio skiriamoji geba. Turbulencijos modelio pasirinkimui (pvz., k-omega SST) sprendiklio sąrankoje jis gali pasiūlyti parinktis, tinkamas srauto režimui, pateikdamas pagrindimą. Atliekant apdorojimą, galima parašyti Python scenarijų, kad iš tūkstančių rezultatų failo eilučių būtų išskirti kėlimo, tempimo ir momento koeficientai ir būtų sukurtas atakos kampo brėžinys. Tačiau ar y+ vertė tikrai atitinka tikslą, ar turbulencijos modelis atitinka šį srautą ir ar rezultatas susilieja, ar ne, patikrina inžinieriaus akis.

Dažniausiai naudojama vieta yra rezultato komentaras. Kai klausiate AI „kodėl ta CL-alfa kreivė lūžta 14 laipsnių kampu“, jis primena apie strigimo galimybę (srautas atsiskiria nuo sparno, kai atakos kampas didėja, o pakilimas mažėja) ir pateikia srauto atskyrimo indikatorius, kuriuos turėtumėte patikrinti. Tai hipotezių generatorius; Patvirtinimas vėl yra duomenyse.

Atsargiai: AI gali sklandžiai interpretuoti CFD rezultatą, tačiau jei pats rezultatas neteisingas, interpretacija taip pat bus klaidinga. Sakinys „Ši tempimo vertė yra pagrįsta“ nieko nereiškia, jei sprendimas nesutampa. Pirmiausia patikrinkite numerio galiojimą, tada komentarą.

Surogatiniai modeliai: dizaino erdvės nuskaitymas per kelias sekundes

Pakaitinio modelio sukūrimo logika yra paprasta. Pirma, kruopščiai atrinktas pavyzdys (pvz., 40–80 projektavimo taškų; eksperimentinį projektą platina DoE) apskaičiuojamas naudojant visą CFD. Tada su šiomis įvesties-išvesties poromis apmokomas mašininio mokymosi modelis (Gauso proceso regresija/krigingas, radialinė bazinė funkcija arba neuroninis tinklas). Dabar modelis numato CL/CD naujai geometrijai per kelias sekundes. Tūkstančiai kandidatų yra tikrinami naudojant šį nebrangų modelį, o 3–5 geriausiai atrodantys kandidatai yra perskaičiuojami ir patikrinami naudojant pilną CFD.

Kritinis taškas čia yra pasikliautinasis intervalas. Tokie modeliai kaip Kriging pateikia ne tik prognozes, bet ir tai, kiek jie yra įsitikinę ta prognoze (neapibrėžtumas). Neapibrėžtumas auga toli nuo treniruočių taškų; Ten, užuot aklai pasitikėjus modeliu, pridedamas naujas CFD taškas. Ši kilpa „pridėti naują pavyzdį, kai neapibrėžtumas yra didelis“ yra žinomas kaip aktyvus mokymasis ir efektyviai nuskaito didelę erdvę su nedideliu brangių paleidimų skaičiumi.

Metodas

Vieno projektavimo taško kaina

tikslumu

kada

Visas CFD (RANS)

laikrodžiai

aukštas

Galutinis patikrinimas, mažas kandidatų skaičius

Surogatinis modelis (krigingas)

sekundžių

Vidutinio aukšto lygio (švietimo srityje)

Didelės erdvės skenavimas, optimizavimas

Skydelio/mažo užsakymo metodas

sekundės-minutė

žemas-vidutinis

Pašalinimas per anksti, grubi idėja

vėjo tunelis

dienos-savaitės

aukščiausias (tikras)

Kritinis patikrinimas, sertifikavimas

Patarimas: Niekada nenaudokite pakaitinio modelio už diapazono, kurį apima mokymo duomenys (ekstrapoliacija). Jei modelis buvo apmokytas 5–15 laipsnių atakos kampu, jo duodama vertė esant 25 laipsniams yra ne spėjimas, o prasimanymas. Prašymas dirbtinio intelekto „parašyti mokymo diapazoną ir atmesti užklausas už ribų“ kuriant modelį uždaro šią spąstą.

Silpnas raginimas / Stiprus raginimas

Silpnas raginimas:

Ar šis aerodinaminis profilis geras? Interpretuokite mano CFD rezultatą: CD=0,009.

Galingas raginimas:

Pareigos: esate aerodinaminės analizės konsultantas; taikote saugai svarbią patikrą.Kontekstas: 2D aerodinaminio profilio RANS CFD analizė (reikšmės yra reprezentatyvios): Re=1,5e6, Mach=0,2, atakos kampas 4°, turbulencijos modelis k-omega SST.Rezultatas: CL=0,62, CD=0,0091. Tinklas: 180 000 langelių, y+ ~1.Užduotis:1) Išvardykite patikrinimo veiksmus, kuriuos turiu patikrinti prieš manydamas, kad rezultatas yra tinkamas (konvergencija, tinklo nepriklausomumas, y+).2) Apskaičiuokite CL/CD santykį ir palyginkite su tipišku šios profilio klasės diapazonu.3) Parodykite galimus klaidų šaltinius, jei reikšmė atrodo įtartinai.Apribojimas: Rašymo vienetas; Pažymėkite, kur nesate tikri; Nedarykite galutinio „gero/blogo“ sprendimo, pateikite patikrinimo planą.

Kopijuojami raginimo šablonai

1 šablonas – CFD sąrankos motyvai:

Pateikite CFD nustatymo rekomendaciją tokioms srauto sąlygoms (reprezentacinės reikšmės): Re=[...], Mach=[...], geometrija=[...]. Pasiūlykite man šias priežastis: tinkamos turbulencijos modelio parinktys, ribinio sluoksnio tikslas y+ ir pradinio langelio aukščio skaičiavimas, ribinės sąlygos. Prie kiekvieno pasirinkimo pridėkite pastabą „kodėl“ ir „tuo atveju tai būtų neteisinga“. Parašykite skaičių vienetą.

2 šablonas – eksperimentų planas (DoE) ir pakaitinio modelio planas:

Turiu [N] dizaino kintamųjų: [sąrašas su diapazonais]. Norėdami išmokyti pakaitinį modelį: (a) kiek imties taškų ir kokį atrankos metodą (pvz., lotynišką hiperkubą) rekomenduojate; b) kokio tipo pakaitinis modelis yra tinkamas ir kodėl; c) kaip patvirtinti modelį (kryžminis patvirtinimas, padalintas bandymų rinkinys). Kokią taisyklę turėčiau taikyti, kad išvengtumėte ekstrapoliacijos rizikos?

3 šablonas – scenarijus, skirtas išgauti koeficientus iš CFD rezultatų failo:

Iš CFD jėgos ataskaitos CSV (stulpeliai: iteracija, Fx, Fy, Fz) Su Python: (a) apskaičiuokite konverguotą CL ir CD, apskaičiuodami paskutinių 500 iteracijų vidurkį; b) parašykite paskutinių 500 iteracijų standartinį nuokrypį ir palyginkite jį su slenksčiu, kad patikrintumėte konvergenciją; c) Nubrėžkite CL-alfa atakos nuskaitymo kampą. Nustatykite atskaitos sritį ir dinaminį slėgį kaip parametrus; Paaiškinkite paskyrą komentarų eilutėmis.

4 šablonas – pakaitinio modelio numatymo patikimumo užklausa:

Mano parengtas krigingo tarpinio serverio modelis davė CL=0,71, neapibrėžtis(std) 0,02 tokiai prognozei; užklausos taškas yra [viduje / išorėje] treniruočių diapazone.(a) Ar tokio neapibrėžtumo lygio pakanka sprendimui priimti, kaip nuspręsti? (b) Jei neapibrėžtumas didelis, kokiu momentu turėčiau pridėti naują CFD egzempliorių (aktyviojo mokymosi logika)? (c) Kada turėčiau patvirtinti šią prognozę su visu CFD?

Mini dėklai

1 atvejis – užfiksuotas nesuderintas rezultatas. Studentas gauna rezultatą CD=0,0065 už aerodinaminį paviršių ir džiaugiasi; Tipiškas profilio klasės kompaktinis diskas yra 0,008-0,012 diapazone, rezultatas atrodo per geras. Taikant AI siūlomą konvergencijos patikrą matyti, kad jėgos koeficientas vis dar svyruoja (standartinis nuokrypis 8% vidurkio) paskutinėse iteracijose. Kai sprendimas konverguojamas su daugiau iteracijų, jis nusistovi ties CD = 0,0094. Pamoka: „per geras“ rezultatas dažnai yra nesuderinamas rezultatas.

2 atvejis – surogatinis modelis pagreitėja 200 kartų. Komanda atlieka 60 pilnų CFD važiavimų (kiekvienas ~ 2 valandas) sparnui su 6 geometriniais parametrais ir apmoko krigingo surogatinį modelį. Tada jis nuskaito 5000 kandidatų konfigūracijų naudodamas tarpinio serverio modelį per 40 sekundžių, patvirtindamas 4 geriausius kandidatus su visu CFD. Iš viso 64 CFD paleidimai, apytikslis įvertinimas prilygsta 5000 paleidimų. Trukmė sumažėja nuo savaičių iki dviejų dienų. Pamoka: paleiskite brangų modeliavimą tik patvirtinimo taškuose, o ne kiekviename taške.

3 atvejis. Ekstrapoliacijos gaudyklė. Inžinierius užduoda pakėlimo klausimą 18 laipsnių kampu surogatiniam modeliui, treniruotam 3–12 laipsnių atakos kampu; Modelis suteikia sklandžiai didėjančią vertę, pvz., CL=1,6. Realiai sparnas praranda sukibimą maždaug 15 laipsnių kampu, o pakėlimas sumažėja, tačiau surogatinis modelis jį ištiesia tiesiai, nes „nemato“ šios fizikos. Inžinierius atmeta rezultatą atlikdamas fizinio patikimumo patikrinimą (tikėdamasis sukibimo praradimą) ir tai sričiai paleidžia visą CFD. Pamoka: surogatinis modelis nežino fizikos už savo mokymo diapazono ribų.

Dažnos klaidos

  • Netikrina konvergencijos. Nekonverguoto sprendinio koeficientai yra beprasmiai; Grafiko grožis nėra konvergencijos garantija.
  • Apeinant tinklo nepriklausomybę. Jei rezultatas priklauso nuo tinklo, su skirtingais tinklais išeina skirtingi atsakymai; Neįmanoma žinoti, kuris iš jų yra teisingas.
  • Ekstrapoliacija surogatiniame modelyje. Numatymas už mokymo diapazono ribų suteikia matematinį išplėtimą, o ne fizinę tiesą.
  • Nepaisydamas neapibrėžtumo. Jei Krigingo prognozės patikimumo informacija nenaudojama, regionas, kuriame modelis yra labiausiai pasitikintis, ir regionas, kuriame jis mažiausiai pasitiki, traktuojami vienodai.
  • Turbulencijos modelio pasirinkimas savavališkai. Dėl netinkamo turbulencijos modelio net konverguotas ir nuo tinklo nepriklausomas sprendimas tampa fiziškai neteisingas.

Apibendrinant

CFD yra galingas, bet brangus įrankis; Dirbtinis intelektas jį pagreitina iš dviejų vietų: procesų valdymo (diegimas, komentaras, scenarijus) ir didelės dizaino erdvės nuskaitymas per kelias sekundes naudojant pakaitinius modelius. Pakaitinis modelis apmokomas su nedideliu skaičiumi pilnų CFD paleidimų, naudojamas su pasikliautinuoju intervalu, o geriausi kandidatai būtinai patvirtinami visu CFD. Jokie supaprastinti rezultatai nepriimami nepatikrinus konvergencijos, tinklo nepriklausomumo ir fizinio patikimumo. AI pateikia hipotezę ir greitį; Galutinis fizikos arbitras yra duomenys.

Taikymo užduotis

Apibrėžkite CFD vykdymo scenarijų aerodinaminiam paviršiui arba paprastai geometrijai (reprezentatyvūs, o ne tikrieji projekto duomenys). Naudodamiesi dirbtiniu intelektu, (a) išvardykite patvirtinimo veiksmus prieš įvertindami, ar rezultatas yra tinkamas, (b) išspausdinkite Python scenarijų, kuris ištraukia koeficientus iš rezultato failo ir patikrinkite jo logiką eilutę po eilutės, (c) paruoškite pakaitinio modelio kūrimo planą (kiek pavyzdžių, kokį metodą, kaip patvirtinti). Palyginkite rezultatą su tipiniu diapazonu ir įvertinkite jo patikimumą.

kontrolinis sąrašas

  • [ ] Atlikau kiekvieno CFD rezultato konvergencijos patikrą.
  • [ ] Aš suabejojau, ar buvo įrodyta tinklo nepriklausomybė.
  • [ ] Palyginau tokius koeficientus kaip CL/CD su tipiniu klasės diapazonu.
  • [ ] Surogatinį modelį naudojau tik mokymo diapazone.
  • [ ] Priimdamas sprendimą atsižvelgiau į pakaitinio modelio prognozių neapibrėžtumą.
  • [ ] Aš patikrinau geriausius kandidatus naudodamas visą CFD.