Yksikkö 10 / 11

Kemiantekniikka Pythonilla: Tietojen analysointi ja mallinnusautomaatio

Voitot:

  • Kyky tulostaa Python-koodia ja ymmärtää ja hyväksyä koodi rivi riviltä tietojen puhdistamiseen, tilin automatisointiin ja mallintamiseen tekoälyllä
  • Kyky ymmärtää, että testaamaton koodi on hypoteesi, varmistaa jokainen koodi tunnetulla tuloksella ja testata yksikkö- ja reunatapauksia
  • Kyky ymmärtää, että turvallisuuden kannalta kriittiset tilikoodit vaativat sekä testauksen että valtuutetun insinöörin vahvistuksen.

Nykyaikaisen kemiantekniikan hiljainen moottori on nyt Python (laajasti käytetty, helposti opittava ohjelmointikieli). Anturidatan puhdistaminen, massatasapainon automatisointi, kineettisen mallin sovittaminen tietoihin, satojen simulaatiotulosten vertailu, kaavion tuottaminen – kaikki tämä vie tunteja käsin, mutta sekunteja muutamalla Python-rivillä. Tässä osiossa opit käyttämään tekoälyä Python-koodin kirjoittamisen, selittämisen ja virheenkorjauksen apuna; Mutta opimme, miksi jokaista tuotettua koodia ei pitäisi käyttää ilman testausta ja todentamista.

Kemianinsinööri ei yleensä ole ammattimainen ohjelmistokehittäjä; Tässä AI lisää suurta tehoa. Insinööri sanoo "Haluan käsikirjoituksen, joka tekee tämän" ja kirjoittaa tekoälyluonnoksen. Mutta tämä periaate pysyy vakiona: tekoälyn kirjoittama koodi ei ole oikea, koska se näyttää oikealta; Se on hypoteesi, kunnes testataan tunnetulla tuloksella. Hiljainen virhe – väärä yksikkö, väärä indeksi, siirtynyt kaava – voi tuottaa vaarallisia tuloksia teknisessä laskelmassa.

Python ja tekoäly kemiantekniikassa: askel askeleelta

1. Määrittele työ selkeästi. Mikä on syöte (CSV, taulukko, yhtälö), mikä tulosteen tulee olla, missä yksiköissä? Epäselvä kehote tarkoittaa huonoa koodia.

2. Pyydä koodiluonnos. Tekoäly tuottaa luonnoksen sopivilla kirjastoilla (pandat datalle, numpy numeerista käsittelyä varten, matplotlib kaavioille, scipy optimointia/ratkaisua varten).

3. Ymmärrä kirjasto ja oletukset. Pyydä tekoälyä selittämään jokainen rivi ja oletus (yksikkö, tietomuoto, hyväksyntä). Älä suorita koodia, jota et ymmärrä.

4. Testaa tunnetulla tuloksella. Suorita koodi yksinkertaisella esimerkillä, johon tiedät jo vastauksen. Saldokoodin tulee antaa oikea tulos esimerkissä, joka voidaan tulkita käsin.

5. Yksikön ja reunan tilan hallinta. Mitä koodi tekee reunatapauksissa, kuten nolla, negatiivinen, erittäin suuret arvot, puuttuvat tiedot? Kemiantekniikassa yksikön vikaantuminen on klassinen katastrofi.

6. Testaa tulos fysiikan avulla. Koodi tuotti luvun – säilyykö massa, onko arvo realistinen? Se, että koodi toimii, ei osoita, että tulos on oikea.

Vinkki: Kun pyydät koodia tekoälyltä, sano "kirjoita kunkin muuttujan yksikkö kommenttiriville ja määritä syöttöyksiköt tarkasti". Merkittävä osa kemiantekniikan virheistä johtuu yksiköiden sekaannuksesta (bar/Pa, kg/g, °C/K); Jos koodiin upotetaan yksiköitä, nämä virheet näkyvät.

Testaamaton koodi on hypoteesi

AI tuottaa sujuvaa, toimivan näköistä koodia; Mutta "toimii" ja "oikein" ovat kaksi eri asiaa. Koodi voi toimia ilman virheitä ja tuottaa väärän luvun: merkkivirhe kaavassa, siirtymä (off-by-one) taulukossa, virheellinen yksikkömuunnos. Kultainen sääntö siis: jokainen koodi testataan testitapauksessa, jossa oikea vastaus tiedetään itsenäisesti. Yksinkertainen analyyttinen esimerkki, käsin laskettu laskenta tai viitetieto todistaa koodin luotettavuuden. Mikään tekninen päätös ei saa perustua koodiin ilman testien läpäisemistä.

Varoitus: Turvallisuus-, mitoitus- tai turvalaskelman suorittavaa koodia ei voida pitää luotettavana vain siksi, että se "toimii". Turvallisuuskriittiset tilikoodit tulee testata tunnetulla tuloksella, ja valtuutetun insinöörin tulee varmistaa tulokset itsenäisesti.

kolme minilaukkua

Tapaus 1 — Tietojen puhdistusautomaatio. Insinööri siivosi manuaalisesti kolmen kuukauden tiedot (noin 1,1 miljoonaa riviä) 8 anturista joka kuukausi. Tekoälyllä kirjoitettu pandas-skripti vähensi tämän minuutteihin. Insinööri testasi ensin koodia pienellä tunnetulla näytetiedostolla; huomasi, että yksi sarake jäsennettiin väärin, korjasi sen ja sovelsi sen sitten koko tietoon.

Tapaus 2 — Äänetön äänenvoimakkuusvirhe. YZ kirjoitti koodin painehäviön laskemiseen, mutta sekoitti syötteen olettaen bar ja kaavan Pa. Koodi toimi ilman virheitä, mutta tulos oli 100 000 kertaa väärä. Insinööri havaitsi tilauseron manuaalisella ohjauslaskelmalla. Yksikkökommenttien lisäämisen jälkeen virhe selvitettiin ja korjattiin.

Tapaus 3 — Testaus tallennettu. Yksi tiimi sai tekoälyltä koodin massatasapainon ratkaisijalle. He testasivat sitä ensin kaksikomponenttisessa, käsin liukenevassa näytteessä; koodi sulki silmukan väärin, eikä se summautunut. Virhe havaittiin ennen kuin sitä sovellettiin todelliseen, monimutkaiseen malliin. Ilman testausta virhe leviäisi kaikkiin tuloksiin.

Neljä kopioitavaa mallia

1) Tietojen analysointikoodiluonnos:

Tehtäväsi: Python-apulainen kemiantekniikassa. Tehtävä: [kuvaus]. Syöte: [CSV/taulukko, sarakkeet, UNITS]. Tulos: [mitä, missä yksikössä]. käytä pandas/numpy. Koodissa: (1) tulkitse kunkin muuttujan yksikkö, (2) kerro syöttöoletukset alussa, (3) käsittele reunatapauksia (puuttuu data, nolla). Testaan ​​koodia tunnetulla esimerkillä; älä käytä maagisia numeroita, määritä vakiot tarkasti.

2) Koodin selitys ja vahvistus:

Selitä seuraava Python-koodi rivi riviltä: mitä se tekee, mitä oletuksia se tekee, mitä yksiköitä se odottaa. Korosta mahdollisia virhepisteitä (yksiköiden sekaannus, indeksin muutos, nollalla jako, ylivuoto). Ehdota, mitä yksinkertaista, tunnettua testitapausta voin käyttää tämän koodin vahvistamiseen. Koodi: [liitä]

3) Testin määrittäminen tunnetulla tuloksella:

Kirjoita testijoukko tämän funktion vahvistamiseksi: vähintään 3 yksinkertaista tapausta, joissa vastaus tiedetään analyyttisesti tai manuaalisesti. Kuvaa kunkin testin odotettu tulos ja miksi odotamme tätä tulosta. En käytä koodia todellisiin tietoihin ilman testausta. Toiminto: [liitä]

4) Vianetsintä:

Tämä koodi antaa seuraavan virheen/väärän tuloksen: [virheilmoitus tai odotettu vsactual output]. Listaa mahdolliset syyt todennäköisyysjärjestyksessä ja kerro minulle, kuinka jokainen testataan. Älä sano suoraan "korjasin sen"; Selvitetään yhdessä perimmäinen syy ensin. Ehdota myös yksikön ja tilauksen tarkistusta. Koodi ja tiedot: [liitä]

Heikko kehote / Vahva kehote

Heikko kehote:

Kirjoita minulle painehäviön laskentakoodi.

Syöttömuoto, yksikkö, yhtälö, ehto eivät ole selvät. AI piilottaa oletuksensa, voi sekoittaa yksiköitä.

Tehokas kehotus:

Tehtäväsi: kemiantekniikan Python-apulainen. Tehtävä: kitkan aiheuttama paineen lasku pyöreässä putkessa. Syöttö: virtausnopeus [m3/s], halkaisija [m], pituus [m], tiheys [kg/m3], viskositeetti [Pa·s]. Lähtö: painehäviö [Pa]. Käytä Darcy-Weisbachia; Tarkista virtausjärjestelmä (Re) kitkakertoimen suhteen. Kommentoi jokainen yksikkö, tilaa oletukset (täysi kuorma, vakaa virtaus). Testaan ​​koodia manuaalista laskentaa vastaan ​​laminaariesimerkissä.

Ero on selvä: syöttöyksiköt, menetelmä, tulosyksikkö ja testaustarkoitus tekevät koodista luotettavan.

Roolin jakautuminen Pythonin käytössä

liiketoimintaa

AI:n rooli

miehen päätös

koodin kirjoittaminen

Luo luonnos

Tehtävänkuvaus, yksiköt

Kirjaston valinta

Ehdotus

Vaatimustenmukaisuuden vahvistus

Kuvaus

rivi riviltä

Hyväksy ymmärryksellä

testi

Testisarjan suositus

Validointi tunnetulla tuloksella

Debug

hypoteesi, suunta

Perussyyn vahvistus

Johtopäätös

Numeroiden luominen

Testaus fysiikan kanssa

Yleisiä virheitä

  • Käytä koodia testaamatta sitä. Toimiva koodi ei ole oikea koodi; Siihen ei voi luottaa, ellei sitä testata tunnetulla tuloksella.
  • Yksiköt jätetään määrittelemättömiksi. Yksikön sekaannus on kemiantekniikan yleisin ja vaarallisin virhe.
  • Toimii ilman ymmärrystä. Älä luota tuloksiin ymmärtämättä tekoälyn kirjoittamaa koodia rivi riviltä.
  • Reunatilojen ohittaminen. Nolla, negatiivinen, puuttuva data voi hiljaa johtaa koodin väärään johtopäätökseen.
  • Perustamalla turvalaskelman vain koodiin. Turvallisuuskriittiset koodit vaativat testauksen + riippumattoman auktorisoidun todentamisen.

Yhteenvetona

Tekoäly kemiantekniikassa Pythonilla; Se on tehokas apulainen, joka luonnostelee, selittää ja tarjoaa virheenkorjausohjeita tietojen puhdistamiseen, kirjanpidon automaatioon, mallintamiseen ja grafiikkaan. Mutta tekoälyn koodi ei ole luotettava siksi, että se näyttää oikealta, vaan koska se on testattu tunnetulla tuloksella. On tärkeää määrittää yksiköt selkeästi, ymmärtää koodi, testata reunatapauksia ja varmistaa tulos fysiikan avulla; Turvallisuuskriittiset laskelmat edellyttävät myös valtuutetun insinöörin tarkastusta.

Sovellustehtävä

Valitse laskelma (esim. putken painehäviö tai kaksikomponenttinen massatase). Hanki koodi tekoälystä "data-analyysi/tilikoodiluonnos" -mallin avulla, kerro yksiköt selvästi. Tarkista sitten koodi manuaalisesti purettavassa esimerkissä "määritä testi tunnetulla tuloksella" -mallilla; Jos tulos ei täsmää, etsi perimmäinen syy "debug"-kuviolla.

tarkistuslista

  • [ ] Olen ilmoittanut selkeästi syöttö/tulostusyksiköt ja -menetelmän.
  • [ ] Ymmärsin koodin rivi riviltä ja näin sen oletukset.
  • [ ] Testasin koodia tunnetulla/manuaalisesti purettavalla esimerkillä.
  • [ ] Testasin reunatapauksia (nolla, negatiivinen, puuttuvat tiedot).
  • [ ] Varmistin tuloksen fysiikalla (massan säilyminen, järjestys); Virkailija vahvisti myös turvatilin.