Проверка и валидация моделей компьютерного моделирования

Проверка и валидация моделей компьютерного моделирования проводится в ходе разработки модели моделирования с конечной целью создания точной и достоверной модели. [1] [2] «Модели моделирования все чаще используются для решения проблем и содействия принятию решений. Разработчики и пользователи этих моделей, лица, принимающие решения, использующие информацию, полученную из результатов этих моделей, и лица, на которых влияют решения, основанные на таких моделях, все справедливо обеспокоены тем, являются ли модель и ее результаты «правильными». [3] Эта проблема решается путем проверки и валидации модели моделирования.

Имитационные модели являются приблизительными имитациями реальных систем и никогда не имитируют реальную систему в точности. В связи с этим модель должна быть проверена и подтверждена в той степени, которая необходима для предполагаемой цели или применения модели. [3]

Проверка и валидация имитационной модели начинается после того, как были задокументированы функциональные спецификации и завершена первоначальная разработка модели. [4] Проверка и валидация — это итеративный процесс, который происходит на протяжении всей разработки модели. [1] [4]

Проверка

В контексте компьютерного моделирования верификация модели — это процесс подтверждения того, что она правильно реализована относительно концептуальной модели (соответствует спецификациям и предположениям, которые считаются приемлемыми для данной цели применения). [1] [4] Во время верификации модель тестируется для поиска и исправления ошибок в реализации модели. [4] Для обеспечения соответствия модели спецификациям и предположениям относительно концепции модели используются различные процессы и методы. Цель верификации модели — гарантировать, что реализация модели является правильной.

Существует множество методов, которые можно использовать для проверки модели. Они включают, но не ограничиваются, проверкой модели экспертом, созданием логических схем, которые включают каждое логически возможное действие, проверкой выходных данных модели на предмет разумности при различных настройках входных параметров и использованием интерактивного отладчика. [1] Многие методы разработки программного обеспечения, используемые для проверки программного обеспечения , применимы к проверке имитационной модели. [1]

Проверка

Валидация проверяет точность представления модели реальной системы. Валидация модели определяется как «обоснование того, что компьютерная модель в пределах ее области применимости обладает удовлетворительным диапазоном точности, соответствующим предполагаемому применению модели». [3] Модель должна быть создана для определенной цели или набора целей, а ее валидность должна определяться для этой цели. [3]

Существует множество подходов, которые можно использовать для проверки компьютерной модели. Подходы варьируются от субъективных обзоров до объективных статистических тестов. Один из подходов, который обычно используется, заключается в том, чтобы создатели модели определяли ее валидность с помощью серии тестов. [3]

Нейлор и Фингер [1967] сформулировали трехэтапный подход к проверке модели, который широко применяется: [1]

Шаг 1. Постройте модель с высокой степенью достоверности.

Шаг 2. Проверка предположений модели.

Шаг 3. Сравните преобразования ввода-вывода модели с соответствующими преобразованиями ввода-вывода для реальной системы. [5]

Лицевая действительность

Модель, имеющая внешнюю валидность , кажется разумной имитацией реальной системы для людей, которые знакомы с реальной системой. [4] Внешняя валидность проверяется путем того, что пользователи и люди, знакомые с системой, проверяют выходные данные модели на предмет разумности и в процессе выявляют недостатки. [1] Дополнительным преимуществом участия пользователей в валидации является то, что доверие пользователей к модели и уверенность пользователей в модели возрастают. [1] [4] Чувствительность к входным данным модели также может использоваться для оценки внешней валидности. [1] Например, если моделирование работы ресторана быстрого питания было запущено дважды с частотой прибытия клиентов 20 и 40 в час, то выходные данные модели, такие как среднее время ожидания или максимальное количество ожидающих клиентов, как ожидается, будут увеличиваться с частотой прибытия.

Проверка предположений модели

Предположения, сделанные относительно модели, обычно делятся на две категории: структурные предположения о том, как работает система, и предположения о данных. Также мы можем рассмотреть предположения об упрощении, которые мы используем для упрощения реальности. [6]

Структурные предположения

Предположения о том, как работает система и как она физически организована, являются структурными предположениями. Например, количество серверов в полосе проезда через фаст-фуд и если их больше одного, как они используются? Работают ли серверы параллельно, когда клиент завершает транзакцию, посещая один сервер, или один сервер принимает заказы и обрабатывает оплату, в то время как другой готовит и обслуживает заказ. Многие структурные проблемы в модели возникают из-за плохих или неверных предположений. [4] Если возможно, следует внимательно следить за работой реальной системы, чтобы понять, как она работает. [4] Структура и работа системы также должны быть проверены с пользователями реальной системы. [1]

Предположения данных

Для построения концептуальной модели и проверки модели должно быть достаточное количество соответствующих данных. Отсутствие соответствующих данных часто является причиной неудачи попыток проверки модели. [3] Данные должны быть проверены на предмет их достоверности. Типичная ошибка — предположение о ненадлежащем статистическом распределении данных. [1] Предполагаемая статистическая модель должна быть проверена с использованием тестов на соответствие и других методов. [1] [3] Примерами тестов на соответствие являются тест Колмогорова–Смирнова и тест хи-квадрат . Любые выбросы в данных должны быть проверены. [3]

Упрощение предположений

Это те предположения, которые, как мы знаем, не являются верными, но необходимы для упрощения проблемы, которую мы хотим решить. [6] Использование этих предположений должно быть ограничено, чтобы гарантировать, что модель достаточно верна, чтобы служить ответом на проблему, которую мы хотим решить.

Проверка преобразований ввода-вывода

Модель рассматривается как преобразование вход-выход для этих тестов. Тест проверки состоит из сравнения выходных данных рассматриваемой системы с выходными данными модели для того же набора входных условий. Данные, записанные во время наблюдения за системой, должны быть доступны для выполнения этого теста. [3] Выходные данные модели, которые представляют основной интерес, должны использоваться в качестве меры производительности. [1] Например, если рассматриваемая система представляет собой закусочную быстрого питания, где входными данными для модели является время прибытия клиента, а выходной мерой производительности является среднее время пребывания клиента в очереди, то будут записаны фактическое время прибытия и время, проведенное клиентами в очереди в закусочной. Модель будет запущена с фактическим временем прибытия, а среднее время в очереди модели будет сравнено с фактическим средним временем, проведенным в очереди, с использованием одного или нескольких тестов.

Проверка гипотез

Статистическая проверка гипотез с использованием t-критерия Стьюдента может быть использована в качестве основы для принятия модели как действительной или отклонения ее как недействительной.

Гипотеза, которая должна быть проверена, заключается в следующем.

H 0 модельная мера производительности = системная мера производительности

против

H 1 модельная мера производительности ≠ системная мера производительности.

Тест проводится для заданного размера выборки и уровня значимости или α. Для проведения теста проводится число n статистически независимых запусков модели и выводится среднее или ожидаемое значение E(Y) для интересующей переменной. Затем вычисляется тестовая статистика t 0 для заданных α, n , E(Y) и наблюдаемого значения для системы μ 0

т 0 = ( Э ( И ) ты 0 ) / ( С / н ) {\displaystyle t_{0}={(E(Y)-u_{0})}/{(S/{\sqrt {n}})}} и критическое значение для α и n-1 степеней свободы
т а / 2 , н 1 {\displaystyle t_{a/2,n-1}} рассчитано.

Если

| т 0 | > т а / 2 , н 1 {\displaystyle \left\vert t_{0}\right\vert >t_{a/2,n-1}}

отклоняем H 0 , модель нуждается в корректировке.

Существует два типа ошибок, которые могут возникнуть при проверке гипотез: отклонение допустимой модели, называемое ошибкой типа I или «риском создателей модели», и принятие недопустимой модели, называемое ошибкой типа II, β или «риском пользователя модели». [3] Уровень значимости или α равен вероятности ошибки типа I. [3] Если α мало, то отклонение нулевой гипотезы является сильным выводом. [1] Например, если α = 0,05 и нулевая гипотеза отвергается, существует только 0,05 вероятность отклонения допустимой модели. Уменьшение вероятности ошибки типа II очень важно. [1] [3] Вероятность правильного обнаружения недопустимой модели равна 1 - β. Вероятность ошибки типа II зависит от размера выборки и фактической разницы между значением выборки и наблюдаемым значением. Увеличение размера выборки снижает риск ошибки типа II.

Точность модели как диапазон

Недавно был разработан статистический метод, в котором величина точности модели указывается в виде диапазона. Метод использует проверку гипотез для принятия модели, если разница между интересующей переменной модели и интересующей переменной системы находится в пределах указанного диапазона точности. [7] Требование состоит в том, чтобы как системные данные, так и данные модели были приблизительно нормально независимыми и одинаково распределенными (NIID) . В этом методе используется статистика t-теста . Если среднее значение модели равно μ m , а среднее значение системы равно μ s , то разница между моделью и системой равна D = μ m - μ s . Гипотеза для проверки заключается в том, находится ли D в пределах приемлемого диапазона точности. Пусть L = нижний предел точности, а U = верхний предел точности. Тогда

Н 0 Л ≤ Д ≤ У

против

H 1 D < L или D > U

подлежит проверке.

Кривая рабочей характеристики (OC) — это вероятность того, что нулевая гипотеза будет принята, когда она верна. Кривая OC характеризует вероятности ошибок как типа I, так и типа II. Кривые риска для риска создателя модели и риска пользователя модели могут быть разработаны из кривых OC. Сравнение кривых с фиксированным размером выборки компромиссов между риском создателя модели и риском пользователя модели можно легко увидеть на кривых риска. [7] Если риск создателя модели, риск пользователя модели, а также верхний и нижний пределы для диапазона точности указаны, то можно рассчитать необходимый размер выборки. [7]

Доверительные интервалы

Доверительные интервалы можно использовать для оценки того, является ли модель «достаточно близкой» [1] к системе для некоторой интересующей переменной. Разница между известным значением модели, μ 0 , и системным значением, μ, проверяется, меньше ли она значения, достаточно малого, чтобы модель была действительна относительно этой интересующей переменной. Значение обозначается символом ε. Для выполнения теста проводится ряд, n , статистически независимых прогонов модели и выводится среднее или ожидаемое значение, E(Y) или μ для интересующей выходной переменной моделирования Y, со стандартным отклонением S. Выбирается уровень достоверности, 100(1-α). Интервал, [a,b], строится с помощью

а = Э ( И ) т а / 2 , н 1 С / н а н г б = Э ( И ) + т а / 2 , н 1 С / н {\displaystyle a=E(Y)-t_{a/2,n-1}S/{\sqrt {n}}\qquad и\qquad b=E(Y)+t_{a/2,n-1}S/{\sqrt {n}}} ,

где

т а / 2 , н 1 {\displaystyle t_{a/2,n-1}}

— критическое значение из t-распределения для заданного уровня значимости и n-1 степеней свободы.

Если |a-μ 0 | > ε и |b-μ 0 | > ε, то модель необходимо откалибровать, поскольку в обоих случаях разница больше приемлемой.
Если |a-μ 0 | < ε и |b-μ 0 | < ε, то модель приемлема, поскольку в обоих случаях ошибка достаточно близка.
Если |a-μ 0 | < ε и |b-μ 0 | > ε или наоборот, то для сокращения интервала необходимы дополнительные прогоны модели.

Графические сравнения

Если статистические предположения не могут быть выполнены или данных для системы недостаточно, можно использовать графическое сравнение выходных данных модели с выходными данными системы для принятия субъективных решений, однако предпочтительны другие объективные тесты. [3]

Стандарты ASME

Документы и стандарты, включающие проверку и валидацию вычислительного моделирования и имитации, разрабатываются Комитетом по проверке и валидации (V&V) Американского общества инженеров-механиков (ASME). ASME V&V 10 предоставляет руководство по оценке и повышению достоверности моделей вычислительной механики твердого тела с помощью процессов проверки, валидации и количественной оценки неопределенности. [8] ASME V&V 10.1 предоставляет подробный пример для иллюстрации концепций, описанных в ASME V&V 10. [9] ASME V&V 20 предоставляет подробную методологию проверки вычислительного моделирования применительно к динамике жидкостей и теплопередаче. [10] ASME V&V 40 предоставляет основу для установления требований к достоверности модели для вычислительного моделирования и представляет примеры, характерные для отрасли медицинских приборов. [11]

Смотрите также

Ссылки

  1. ^ abcdefghijklmnop Бэнкс, Джерри; Карсон, Джон С.; Нельсон, Барри Л.; Никол, Дэвид М. Моделирование дискретно-событийных систем , пятое издание, Upper Saddle River, Pearson Education, Inc. 2010 ISBN  0136062121
  2. ^ Шлезингер, С.; и др. (1979). «Терминология для достоверности модели». Моделирование . 32 (3): 103– 104. doi :10.1177/003754977903200304.
  3. ^ abcdefghijklm Сарджент, Роберт Г. «ВЕРИФИКАЦИЯ И ВАЛИДАЦИЯ ИМИТАЦИОННЫХ МОДЕЛЕЙ». Труды зимней конференции по моделированию 2011 г.
  4. ^ abcdefgh Карсон, Джон, «ПРОВЕРКА И ВАЛИДАЦИЯ МОДЕЛИ». Труды Зимней конференции по моделированию 2002 года.
  5. ^ NAYLOR, TH, AND JM FINGER [1967], "Verification of Computer Simulation Models", Management Science, Vol. 2, pp. B92– B101., цитируется в Banks, Jerry; Carson, John S.; Nelson, Barry L.; Nicol, David M. Discrete-Event System Simulation Fifth Edition, Upper Saddle River, Pearson Education, Inc. 2010 p. 396. ISBN 0136062121 
  6. ^ ab 1. Фонсека, П. Гипотезы моделирования. В трудах SIMUL 2011; 2011; стр. 114–119. https://www.researchgate.net/publication/262187532_Simulation_hypotheses_A_proposed_taxonomy_for_the_hypotheses_used_in_a_simulation_model
  7. ^ abc Sargent, RG 2010. «Новая статистическая процедура для проверки имитационных и стохастических моделей». Технический отчет SYR-EECS-2010-06, Кафедра электротехники и компьютерных наук, Сиракузский университет, Сиракузы, Нью-Йорк.
  8. ^ «V&V 10 – 2006 Руководство по верификации и валидации в вычислительной механике твердого тела». Стандарты . ASME. Получено 2 сентября 2018 г.
  9. ^ «V&V 10.1 – 2012 Иллюстрация концепций верификации и валидации в вычислительной механике твердого тела». Стандарты . ASME. Получено 2 сентября 2018 г.
  10. ^ «V&V 20 – 2009 Standard for Verification and Validation in Computational Fluid Dynamics and Heat Transfer». Стандарты . ASME. Получено 2 сентября 2018 г.
  11. ^ «V&V 40 Industry Day». Симпозиум по верификации и валидации . ASME. Получено 2 сентября 2018 г.
Взято с "https://en.wikipedia.org/w/index.php?title=Проверка_и_валидация_моделей_компьютерного_симуляции&oldid=1091736850"