Анализа осетљивости се користи за одређивање утицаја колекције независних фактора на зависну варијаблу под одређеним условима.
То је снажан приступ за одређивање како на излаз модела утичу инпути модела уопштено. У овом посту ћу дати кратак преглед анализе осетљивости користећи САЛиб, бесплатни Питхон пакет за анализу осетљивости.
Нумеричка вредност позната као индекс осетљивости често представља осетљивост сваког улаза. Постоје бројне врсте индекса осетљивости:
- Индекси првог реда: израчунава допринос једног инпута модела излазној варијанси.
- Индекси другог реда: израчунава допринос два инпута модела излазној варијанси.
- Индекс укупног реда: квантификује допринос модела инпута излазној варијанси, обухватајући ефекте првог реда (само улаз флуктуира) и све интеракције вишег реда.
Шта је САЛиб?
САЛиб је базиран на Питхон-у опен соурце комплет алата за процену осетљивости. Има одвојени ток посла, што значи да нема директну интеракцију са математичким или рачунарским моделом. Уместо тога, САЛиб је задужен за производњу улазних података модела (преко једне од функција узорка) и израчунавање индекса осетљивости (преко једне од функција анализе) из излаза модела.
Типична анализа осетљивости САЛиб-а састоји се од четири корака:
- Одредите улазе (параметре) модела и опсег узорка за сваки.
- Да бисте креирали уносе модела, покрените функцију узорка.
- Процените модел користећи генерисане улазе и сачувајте резултате модела.
- Да бисте израчунали индексе осетљивости, користите функцију анализе на излазима.
Собол, Моррис и ФАСТ су само неке од метода анализе осетљивости које пружа САЛиб. Многи фактори утичу на то који приступ је најбољи за дату апликацију, као што ћемо касније видети. За сада, имајте на уму да морате да користите само две функције, узорковање и анализу, без обзира на то коју технику користите. Водићемо вас кроз основни пример како бисмо илустровали како да користите САЛиб.
Пример САЛиб – Соболова анализа осетљивости
У овом примеру ћемо испитати Соболову осетљивост Ишигами функције, као што је приказано у наставку. Због своје високе нелинеарности и немонотоности, Ишигами функција се широко користи за процену методологија анализе несигурности и осетљивости.
Кораци иду на следећи начин:
1. Увоз САЛиб-а
Први корак је додавање потребних библиотека. Функције узорка и анализе САЛиб-а се разликују у Питхон модулима. Увоз сателитског узорка и функције Собол анализе, на пример, приказани су у наставку.
Такође користимо функцију Исхигами, која је доступна као тестна функција у САЛиб-у. Коначно, увозимо НумПи пошто га САЛИб користи за складиштење улаза и излаза модела у матрици.
2. Унос модела
Тада се морају дефинисати улазни подаци модела. Ишигами функција прихвата три улаза: к1, к2 и к3. У САЛиб-у конструишемо дицт који специфицира број улаза, њихова имена и ограничења за сваки улаз, као што се види испод.
3. Генеришите узорке и модел
Затим се генеришу узорци. Морамо да креирамо узорке користећи Салтелли узоркивач пошто радимо анализу осетљивости Собол. У овом случају, вредности параметара су НумПи матрица. Можемо приметити да је матрица 8000 пута 3 покретањем парам вредности.схапе. 8000 узорака је креирано са Салтелли узоркивачем. Салтелли узоркивач креира узорке, где је Н 1024 (параметар који смо дали) и Д је 3. (број улаза модела).
Као што је раније речено, САЛиб се не бави евалуацијом математичких или рачунарских модела. Ако је модел написан у Питхон-у, обично ћете проћи кроз сваки узорак уноса и проценити модел:
Узорци се могу сачувати у текстуалној датотеци ако модел није развијен у Питхон-у:
Сваки ред у парам валуес.ткт представља један улаз модела. Излаз модела треба да буде сачуван у другој датотеци у сличном стилу, са по једним излазом у свакој линији. Након тога, излази се могу учитати са:
У овом примеру користићемо функцију Исхигами из САЛиба. Ове тестне функције се могу проценити на следећи начин:
4. Извршите анализу
Коначно можемо да израчунамо индексе осетљивости након учитавања резултата модела у Питхон. У овом примеру користићемо собол.анализе за израчунавање првог, другог и индекса укупног реда.
Си је Питхон речник који има кључеве „С1“, „С2“, „СТ“, „С1 цонф“, „С2 цонф“ и „СТ цонф“. Тастери _цонф држе повезане интервале поверења, који су генерално постављени на 95 процената. За излаз свих индекса користите параметар кључне речи принт то цонсоле=Труе. Алтернативно, као што је илустровано у наставку, можемо одштампати појединачне вредности из Си.
Видимо да к1 и к2 имају осетљивост првог реда, али чини се да к3 нема утицаја првог реда.
Ако су индекси укупног реда значајно већи од индекса првог реда, интеракције вишег реда се сигурно дешавају. Ове интеракције вишег реда можемо видети гледајући индексе другог реда:
Можемо приметити да к1 и к3 имају значајне интеракције. Након тога, резултат се може трансформисати у Пандас ДатаФраме за даље проучавање.
5. Зацртавање
За вашу удобност, обезбеђени су основни садржаји за цртање. Функција плот() производи матплотлиб објекте осовине за накнадну манипулацију.
Zakljucak
САЛиб је софистицирани алат за анализу осетљивости. Друге технике у САЛиб-у укључују Фуријеов тест осетљивости амплитуде (ФАСТ), Моррисов метод и независну меру од делта-момента. Иако је то Питхон библиотека, намењена је за рад са моделима било које врсте.
САЛиб нуди интерфејс командне линије који се лако користи за креирање улаза модела и процену излаза модела. Проверити САЛиб документација да бисте сазнали више.
Ostavite komentar