Проверка и валидация компьютерных имитационных моделей - Verification and validation of computer simulation models
Проверка и валидация компьютерных имитационных моделей проводится во время разработки имитационной модели с конечной целью создания точной и достоверной модели.[1][2] "Имитационные модели все чаще используются для решения проблем и помощи в принятии решений. Разработчики и пользователи этих моделей, лица, принимающие решения, использующие информацию, полученную на основе результатов этих моделей, и лица, на которых влияют решения, основанные на таких моделях, являются все справедливо озабочены тем, являются ли модель и ее результаты «правильными».[3] Эта проблема решается путем проверки и валидации имитационной модели.[4]
Имитационные модели являются приблизительной имитацией реальных систем, и они никогда не имитируют в точности реальную систему. В связи с этим модель должна быть проверена и утверждена в степени, необходимой для ее предполагаемого назначения или применения.[3]
Проверка и валидация имитационной модели начинается после документирования функциональных спецификаций и завершения первоначальной разработки модели.[5] Верификация и валидация - это итеративный процесс, который происходит на протяжении всей разработки модели.[1][5]
Проверка
В контексте компьютерного моделирования проверка модели - это процесс подтверждения того, что она правильно реализована по отношению к концептуальной модели (соответствует спецификациям и предположениям, которые считаются приемлемыми для данной цели приложения).[1][5]Во время верификации модель тестируется для поиска и исправления ошибок в реализации модели.[5]Для обеспечения соответствия модели спецификациям и предположениям в отношении концепции модели используются различные процессы и методы. Цель проверки модели - убедиться, что реализация модели верна.
Существует множество методов, которые можно использовать для проверки модели, включая, помимо прочего, проверку модели экспертом, создание логических блок-схем, включающих каждое логически возможное действие, проверку выходных данных модели на разумность в различных условиях. настройки входных параметров и с помощью интерактивного отладчика.[1]Многие методы разработки программного обеспечения, используемые для проверка программного обеспечения применимы для верификации имитационной модели.[1]
Проверка
Валидация проверяет точность представления модели реальной системы. Валидация модели определяется как «подтверждение того, что компьютеризированная модель в пределах ее области применимости обладает удовлетворительным диапазоном точности, совместимым с предполагаемым применением модели».[3] Модель должна быть построена для конкретной цели или набора задач, а ее применимость должна определяться для этой цели.[3]
Есть много подходов, которые можно использовать для проверки компьютерной модели. Подходы варьируются от субъективных обзоров до объективных статистических тестов. Один из широко используемых подходов состоит в том, чтобы разработчики моделей определяли достоверность модели с помощью серии тестов.[3]
Нейлор и Фингер [1967] сформулировали трехэтапный подход к проверке достоверности модели, который получил широкое распространение:[1]
Шаг 1. Постройте модель с высокой достоверностью.
Шаг 2. Подтвердите допущения модели.
Шаг 3. Сравните преобразования ввода-вывода модели с соответствующими преобразованиями ввода-вывода для реальной системы.[6]
Действительность лица
Модель, имеющая действительность лица кажется разумной имитацией системы реального мира для людей, знакомых с системой реального мира.[5] Подтверждение подлинности проверяется тем, что пользователи и люди, знакомые с системой, проверяют выходные данные модели на разумность и в процессе выявляют недостатки.[1] Дополнительным преимуществом участия пользователей в проверке является то, что доверие к модели для пользователей и доверие пользователя к модели возрастают.[1][5] Чувствительность к входным данным модели также может использоваться для оценки достоверности лица.[1] Например, если моделирование проезда в ресторан быстрого питания было выполнено дважды с темпами прибытия клиентов 20 в час и 40 в час, тогда ожидается, что выходные данные модели, такие как среднее время ожидания или максимальное количество ожидающих клиентов, увеличатся с прибытием. ставка.
Проверка допущений модели
Предположения, сделанные в отношении модели, обычно делятся на две категории: структурные предположения о том, как работает система, и предположения о данных. Также мы можем рассмотреть допущения упрощения, которые мы используем для упрощения реальности.[7]
Структурные допущения
Предположения о том, как работает система и как она устроена физически, являются структурными предположениями. Например, количество серверов в фаст-фуде проезжает по переулку, и если их больше одного, как они используются? Серверы работают параллельно, когда клиент завершает транзакцию, посещая один сервер, или один сервер принимает заказы и обрабатывает платежи, в то время как другой готовит и обслуживает заказ. Многие структурные проблемы в модели возникают из-за неверных или неверных предположений.[5] Если возможно, необходимо внимательно наблюдать за работой реальной системы, чтобы понять, как она работает.[5] Структура и работа системы также должны быть проверены пользователями реальной системы.[1]
Предположения в отношении данных
Для построения концептуальной модели и проверки модели должен быть достаточный объем соответствующих данных. Отсутствие соответствующих данных часто является причиной неудачных попыток проверки модели.[3] Данные должны быть проверены и получены из надежного источника. Типичная ошибка - это предположение о несоответствующем статистическом распределении данных.[1] Предполагаемая статистическая модель должна быть протестирована с использованием критериев согласия и других методов.[1][3] Примеры критериев согласия: Тест Колмогорова – Смирнова и критерий хи-квадрат. Любые выбросы в данных должны быть проверены.[3]
Допущения упрощения
Являются ли те предположения, которые мы знаем, которые неверны, но необходимы для упрощения проблемы, которую мы хотим решить.[7] Использование этих предположений должно быть ограничено, чтобы гарантировать, что модель достаточно верна, чтобы служить ответом на проблему, которую мы хотим решить.
Проверка преобразований ввода-вывода
Модель рассматривается как преобразование ввода-вывода для этих тестов. Проверочный тест состоит из сравнения выходных данных рассматриваемой системы с выходными данными модели для того же набора входных условий. Данные, записанные во время наблюдения за системой, должны быть доступны для выполнения этого теста.[3] Выходные данные модели, представляющие основной интерес, следует использовать в качестве меры производительности.[1] Например, если рассматриваемая система представляет собой поездку в фастфуд, где входными данными для модели является время прибытия клиента, а выходным показателем эффективности является среднее время ожидания клиента в очереди, тогда фактическое время прибытия и время, проведенное в очереди для клиентов во время проезда. будет записан. Модель будет запускаться с фактическим временем прибытия, и среднее время нахождения в очереди будет сравниваться с фактическим средним временем, проведенным в очереди с использованием одного или нескольких тестов.
Проверка гипотезы
Статистическая проверка гипотез с использованием t-тест может использоваться как основание для принятия модели как действительной или отклонения как недействительной.
Гипотеза, подлежащая проверке:
- ЧАС0 модельная мера эффективности = системная мера эффективности
против
- ЧАС1 модельная мера эффективности ≠ системная мера эффективности.
Тест проводится для заданного размера выборки и уровня значимости или α. Для выполнения теста номер п Выполняются статистически независимые прогоны модели и вычисляется среднее или ожидаемое значение E (Y) для интересующей переменной. Тогда тестовая статистика, т0 вычисляется для данного α, п, E (Y) и наблюдаемое значение для системы μ0
- а критическое значение для α и n-1 степеней свободы
- рассчитывается.
Если
отклонить H0, модель требует корректировки.
Существует два типа ошибок, которые могут возникнуть при проверке гипотез: отклонение действительной модели, называемое ошибкой типа I или «риск создателей модели», и принятие неверной модели, называемой ошибкой типа II, β или «риском пользователя модели».[3] Уровень значимости или α равен вероятности ошибки типа I.[3] Если α мало, то отказ от нулевой гипотезы является сильным выводом.[1] Например, если α = 0,05 и нулевая гипотеза отклоняется, вероятность отклонения действительной модели составляет всего 0,05. Очень важно снизить вероятность ошибки типа II.[1][3] Вероятность корректного обнаружения неверной модели равна 1 - β. Вероятность ошибки типа II зависит от размера выборки и фактической разницы между значением выборки и наблюдаемым значением. Увеличение размера выборки снижает риск ошибки типа II.
Точность модели как диапазон
Недавно был разработан статистический метод, в котором степень точности модели определяется как диапазон. Этот метод использует проверку гипотез для принятия модели, если разница между интересующей переменной модели и интересующей системной переменной находится в пределах указанного диапазона точности.[8] Требуется, чтобы и системные данные, и данные модели были приблизительно Обычно Независимые и идентично распределенные (NIID). В t-тест статистика используется в этой методике. Если среднее значение модели μм а среднее значение системы равно μs то разница между моделью и системой D = μм - μs. Гипотеза, подлежащая проверке, заключается в том, находится ли D в приемлемом диапазоне точности. Пусть L = нижний предел точности и U = верхний предел точности. потом
- ЧАС0 L ≤ D ≤ U
против
- ЧАС1 D
U
подлежит испытанию.
Кривая рабочей характеристики (ОС) - это вероятность того, что нулевая гипотеза будет принята, когда она верна. Кривая OC характеризует вероятность ошибок как I, так и II типа. Кривые риска для риска создателя модели и пользователя модели могут быть построены на основе кривых OC. Сравнение кривых с фиксированным размером выборки между риском разработчика модели и риском пользователя модели можно легко увидеть на кривых риска.[8] Если риск разработчика модели, риск пользователя модели, а также верхний и нижний пределы диапазона точности заданы, то можно рассчитать необходимый размер выборки.[8]
Доверительные интервалы
Доверительные интервалы можно использовать для оценки того, "достаточно ли близка" модель[1] в систему для некоторой интересующей переменной. Разница между известным модельным значением μ0, и системное значение μ проверяется, чтобы увидеть, меньше ли оно значения, достаточно малого для того, чтобы модель действительна в отношении интересующей переменной. Значение обозначается символом ε. Чтобы выполнить тест номер, п, статистически независимые прогоны модели проводятся и среднее или ожидаемое значение E (Y) или μ для представляющей интерес выходной переменной моделирования Y со стандартным отклонением S производится. Выбран уровень достоверности 100 (1-α). Интервал [a, b] строится следующим образом:
- ,
куда
- критическое значение из t-распределения для данного уровня значимости и n-1 степеней свободы.
- Если | a-μ0| > ε и | b-μ0| > ε, то модель необходимо откалибровать, поскольку в обоих случаях разница больше допустимой.
- Если | a-μ0| <ε и | b-μ0| <ε, то модель приемлема, так как в обоих случаях ошибка достаточно близка.
- Если | a-μ0| <ε и | b-μ0| > ε или наоборот тогда необходимы дополнительные прогоны модели, чтобы сократить интервал.
Графические сравнения
Если статистические допущения не могут быть выполнены или для системы недостаточно данных, для принятия субъективных решений можно использовать графические сравнения выходных данных модели с выходными данными системы, однако предпочтительны другие объективные тесты.[3]
Стандарты ASME
Документы и стандарты, включающие верификацию и валидацию компьютерного моделирования и симуляции, разрабатываются Американское общество инженеров-механиков (ASME) Комитет по проверке и валидации (V&V). ASME V&V 10 предоставляет руководство по оценке и повышению достоверности вычислительных моделей механики твердого тела посредством процессов верификации, валидации и количественной оценки неопределенности.[9] ASME V&V 10.1 предоставляет подробный пример, иллюстрирующий концепции, описанные в ASME V&V 10.[10] ASME V&V 20 предоставляет подробную методологию для проверки компьютерного моделирования применительно к гидродинамике и теплопередаче.[11] ASME V&V 40 обеспечивает основу для установления требований к достоверности модели для компьютерного моделирования и представляет примеры, характерные для индустрии медицинских устройств. [12]
Смотрите также
Рекомендации
- ^ а б c d е ж грамм час я j k л м п о п Бэнкс, Джерри; Карсон, Джон С .; Нельсон, Барри Л .; Николь, Дэвид М. Моделирование дискретных систем Пятое издание, Верхняя Сэдл-Ривер, Pearson Education, Inc., 2010 г. ISBN 0136062121
- ^ Schlesinger, S .; и другие. (1979). «Терминология достоверности модели». Моделирование. 32 (3): 103–104. Дои:10.1177/003754977903200304.
- ^ а б c d е ж грамм час я j k л м Сарджент, Роберт Г. «ПРОВЕРКА И ПРОВЕРКА МОДЕЛИРОВАНИЯ». Материалы Зимней симуляционной конференции 2011 г.
- ^ Hemakumara et al;https://www.researchgate.net/profile/Gpts_Hemakumara/publication/339540267_Field_Verifications_of_the_Arc_GIS_Based_Automation_Landform_Model_Including_the_Recommendations_to_Enhance_the_Automation_System_with_Ground_Reality/links/5e580b9092851cefa1c9dcd3/Field-Verifications-of-the-Arc-GIS-Based-Automation-Landform-Model-Including-the-Recommendations-to- Улучшите-систему-автоматизации-с-наземной-реальностью.pdf
- ^ а б c d е ж грамм час Карсон, Джон, «ПРОВЕРКА И ВАЛИДАЦИЯ МОДЕЛИ». Труды Зимней имитационной конференции 2002 г.
- ^ НЭЙЛОР, Т. Х., И Дж. М. ФИНГЕР [1967], «Верификация компьютерных имитационных моделей», Наука управления, Vol. 2, pp. B92– B101., Цит. По: Бэнкс, Джерри; Карсон, Джон С .; Нельсон, Барри Л .; Николь, Дэвид М. Моделирование дискретных систем Пятое издание, Верхняя Сэдл-Ривер, Pearson Education, Inc., 2010 г., стр. 396. ISBN 0136062121
- ^ а б 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
- ^ а б c Сарджент, Р. Г. 2010. «Новая статистическая процедура для проверки имитационных и стохастических моделей». Технический отчет SYR-EECS-2010-06, Департамент электротехники и компьютерных наук, Сиракузский университет, Сиракузы, Нью-Йорк.
- ^ «V&V 10 - 2006 Руководство по верификации и валидации в вычислительной механике твердого тела». Стандарты. КАК Я. Проверено 2 сентября 2018 года.
- ^ «V&V 10.1 - 2012 Иллюстрация концепций верификации и валидации в вычислительной механике твердого тела». Стандарты. КАК Я. Проверено 2 сентября 2018 года.
- ^ «V&V 20 - Стандарт 2009 для проверки и подтверждения в вычислительной гидродинамике и теплопередаче». Стандарты. КАК Я. Проверено 2 сентября 2018 года.
- ^ «День индустрии V&V 40». Симпозиум по верификации и валидации. КАК Я. Проверено 2 сентября 2018 года.