Kev soj ntsuam rhiab heev yog siv los txiav txim qhov cuam tshuam ntawm kev sau los ntawm cov yam ntxwv ywj pheej ntawm qhov sib txawv nyob hauv qee yam xwm txheej.
Nws yog ib txoj hauv kev muaj zog rau kev txiav txim siab seb tus qauv tsim tawm cuam tshuam li cas los ntawm tus qauv cov khoom siv hauv cov ntsiab lus dav dav. Hauv cov ntawv tshaj tawm no, kuv yuav muab cov ntsiab lus ceev ceev ntawm kev tshuaj xyuas kev nkag siab siv SALib, pob Python rhiab heev tsom xam dawb.
Tus lej tus nqi hu ua rhiab heev index, feem ntau sawv cev rau txhua qhov kev nkag siab. Muaj ntau ntau hom rhiab heev indices:
- First-order indices: xam qhov kev koom tes ntawm ib qho qauv input rau cov zis variance.
- Qhov kev txiav txim thib ob: suav qhov kev koom tes ntawm ob tus qauv inputs rau cov zis sib txawv.
- Tag nrho cov kev txiav txim index: quantifies tus qauv input qhov kev koom tes rau cov zis variance, encompassing ob qho tib si thawj-order teebmeem (cov input fluctuating ib leeg) thiab cov kev sib txuas siab dua.
SALib yog dab tsi?
SALib yog Python-based Qhib qhov chaw toolkit rau kev soj ntsuam rhiab heev. Nws muaj kev sib cais ua haujlwm, uas txhais tau hais tias nws tsis cuam tshuam ncaj qha nrog tus lej lossis lej qauv. Hloov chaw, SALib yog tus saib xyuas tsim cov qauv nkag (los ntawm ib qho ntawm cov qauv ua haujlwm) thiab suav cov ntsuas qhov ntsuas siab (ntawm ib qho ntawm cov kev ntsuas ntsuas) los ntawm cov qauv tso tawm.
Ib qho kev soj ntsuam SALib rhiab heev muaj plaub kauj ruam:
- Txiav txim siab tus qauv inputs (tsis muaj) thiab cov qauv ntau yam rau txhua tus.
- Txhawm rau tsim cov qauv nkag, khiav cov qauv ua haujlwm.
- Ntsuas tus qauv siv cov khoom tsim tawm thiab txuag cov qauv kev tshwm sim.
- Txhawm rau suav cov rhiab heev qhov ntsuas, siv qhov ntsuas ntsuas ntawm cov zis.
Sobol, Morris, thiab FAST tsuas yog ob peb ntawm cov kev ntsuas kev xav tau muab los ntawm SALib. Muaj ntau yam cuam tshuam uas txoj hauv kev yog qhov zoo tshaj plaws rau daim ntawv thov, raws li peb yuav pom tom qab. Rau lub sijhawm tam sim no, nco ntsoov tias koj tsuas yog yuav tsum siv ob lub luag haujlwm, piv txwv thiab txheeb xyuas, tsis hais seb koj ua haujlwm li cas. Peb yuav qhia koj txog qhov piv txwv yooj yim los piav qhia txog kev siv SALib.
SALib Example – Sobol' Sensitivity Analysis
Hauv qhov piv txwv no, peb yuav tshuaj xyuas Sobol 'rhiab heev ntawm Ishigami muaj nuj nqi, raws li qhia hauv qab no. Vim tias nws cov nonlinearity siab thiab nonmonotonicity, Ishigami muaj nuj nqi yog dav siv los ntsuas qhov tsis paub tseeb thiab kev soj ntsuam cov txheej txheem.
Cov kauj ruam mus raws li nram no:
1. Importing SALib
Thawj kauj ruam yog ntxiv cov tsev qiv ntawv xav tau. Cov qauv thiab txheeb xyuas cov haujlwm ntawm SALib tau khaws cia sib txawv hauv Python modules. Ntshuam cov qauv satellite thiab Sobol tsom xam ua haujlwm, piv txwv li, yog qhia hauv qab no.
Peb kuj siv Ishigami muaj nuj nqi, uas yog muaj raws li kev xeem muaj nuj nqi hauv SALib. Thaum kawg, peb import NumPy li SALib siv nws los khaws cov qauv inputs thiab outputs hauv matrix.
2. Qauv tswv yim
Cov qauv inputs ces yuav tsum tau txhais. Ishigami muaj nuj nqi lees txais peb qhov kev nkag: x1, x2, thiab x3. Hauv SALib, peb tsim cov lus hais uas qhia txog tus lej ntawm cov khoom siv, lawv cov npe, thiab cov kev txwv ntawm txhua qhov kev tawm tswv yim, raws li pom hauv qab no.
3. Tsim cov qauv thiab cov qauv
Cov qauv yog ces tsim. Peb yuav tsum tsim cov qauv siv Saltelli sampler vim peb tab tom ua Sobol rhiab heev tsom xam. Hauv qhov no, param qhov tseem ceeb yog NumPy matrix. Peb tuaj yeem pom tias cov matrix yog 8000 los ntawm 3 los ntawm kev khiav param values.shape. 8000 qauv tau tsim nrog Saltelli sampler. Lub Saltelli sampler tsim cov qauv, qhov twg N yog 1024 (qhov parameter peb muab) thiab D yog 3. (tus naj npawb ntawm cov qauv inputs).
Raws li tau hais dhau los, SALib tsis koom nrog kev ntsuas lej lossis kev suav cov qauv. Yog tias tus qauv sau rau hauv Python, koj feem ntau yuav voj los ntawm txhua tus qauv nkag thiab ntsuas tus qauv:
Cov qauv tuaj yeem khaws cia rau hauv cov ntawv nyeem yog tias tus qauv tsis tsim hauv Python:
Txhua kab nyob rau hauv param values.txt sawv cev rau ib tug qauv input. Tus qauv tso zis yuav tsum tau khaws cia rau lwm cov ntaub ntawv hauv cov qauv zoo sib xws, nrog rau ib qho kev tso tawm ntawm txhua kab. Tom qab ntawd, cov zis tuaj yeem thauj khoom nrog:
Hauv qhov piv txwv no, peb yuav siv Ishigami muaj nuj nqi los ntawm SALib. Cov haujlwm xeem no tuaj yeem ntsuas raws li hauv qab no:
4. Ua Kev Ntsuam Xyuas
Thaum kawg peb tuaj yeem suav qhov ntsuas qhov ntsuas siab tom qab thauj cov qauv tshwm sim rau hauv Python. Hauv qhov piv txwv no, peb yuav siv sobol.analyze los suav thawj, thib ob, thiab tag nrho cov ntawv xaj.
Si yog Python phau ntawv txhais lus muaj cov yuam sij "S1," "S2," "ST," "S1 conf," "S2 conf," thiab "ST conf." Cov yuam sij _conf tuav cov kev ntseeg siab sib cuam tshuam, uas feem ntau tau teeb tsa rau 95 feem pua. Txhawm rau tso tawm, txhua qhov ntsuas, siv lo lus tseem ceeb sau rau console = Tseeb. Xwb, raws li tau piav qhia hauv qab no, peb tuaj yeem luam tawm tus nqi ntawm Si.
Peb tuaj yeem pom tias x1 thiab x2 muaj qhov kev txiav txim thawj zaug, tab sis x3 tsis zoo li muaj kev cuam tshuam thawj zaug.
Yog tias tag nrho cov ntawv xaj xaj loj dua li qhov kev txiav txim thawj zaug, qhov kev txiav txim siab dua yog qhov tseeb tiag tiag. Peb tuaj yeem pom cov kev sib cuam tshuam siab dua no los ntawm kev saib ntawm qhov ntsuas thib ob:
Peb tuaj yeem pom tias x1 thiab x3 muaj kev cuam tshuam loj. Tom qab ntawd, qhov tshwm sim yuav raug hloov mus rau Pandas DataFrame rau kev kawm ntxiv.
5. Kev piav qhia
Rau koj txoj kev yooj yim, cov cuab yeej qhia ntawv yooj yim tau muab. Lub plot() muaj nuj nqi tsim matplotlib axis khoom rau tom ntej manipulation.
xaus
SALib yog cov cuab yeej siv tshuaj ntsuam xyuas rhiab heev. Lwm cov txheej txheem hauv SALib suav nrog Fourier Amplitude Sensitivity Test (FAST), Morris Method, thiab Delta-Moment Independent Measure. Thaum nws yog lub tsev qiv ntawv Python, nws yog npaj los ua haujlwm nrog cov qauv ntawm txhua yam.
SALib muaj ib qho yooj yim-rau-siv command-line interface rau tsim qauv inputs thiab ntsuam xyuas cov qauv outputs. Tshawb xyuas SALIB documentation kom paub ntau ntxiv.
Sau ntawv cia Ncua