Введение
Эксперимент, используемый для изучения компьютерной симуляции. Компьютерный эксперимент или эксперимент с моделированием – это эксперимент, предназначенный для изучения компьютерной симуляции, также называемой системой in silico. Эта область включает в себя вычислительную физику, вычислительную химию, вычислительную биологию и другие смежные дисциплины.
A computer experiment or simulation experiment is an experiment used to study a computer simulation, also referred to as an in silico system. This area includes computational physics, computational chemistry, computational biology and other similar disciplines.
Предыстория
Компьютерные симуляции создаются для имитации физической системы. Поскольку они предназначены для детального воспроизведения определенных аспектов системы, они часто не позволяют получить аналитическое решение. Поэтому используются такие методы, как дискретно-событийное моделирование или решатели методом конечных элементов. Компьютерная модель используется для получения выводов о системе, которую она имитирует. Например, климатические модели часто используются, поскольку проведение экспериментов с объектом размером с Землю невозможно.
Цели
Компьютерные эксперименты применялись с различными целями. Некоторые из них включают:
Количественная оценка неопределенности: Определение неопределенности, присутствующей в компьютерном моделировании, возникающей из-за неизвестных факторов при его создании. Обратные задачи: Выявление скрытых свойств системы на основе физических данных. Коррекция систематических ошибок: Использование физических данных для устранения систематических ошибок в моделировании. Ассимиляция данных: Объединение результатов нескольких моделирований и физических данных для создания комплексной прогностической модели. Проектирование систем: Поиск входных параметров, обеспечивающих оптимальные показатели производительности системы.
Uncertainty quantification: Characterize the uncertainty present in a computer simulation arising from unknowns during the computer simulation's construction. Inverse problems: Discover the underlying properties of the system from the physical data. Bias correction: Use physical data to correct for bias in the simulation. Data assimilation: Combine multiple simulations and physical data sources into a complete predictive model. Systems design: Find inputs that result in optimal system performance measures.
Компьютерная моделирование
Моделирование компьютерных экспериментов обычно использует байесовский подход. Байесовская статистика – это интерпретация области статистики, в которой все данные об истинном состоянии мира явно выражены в форме вероятностей. В контексте компьютерных экспериментов, байесовский подход подразумевает, что мы должны сформировать априорное распределение, представляющее наши предварительные представления о структуре компьютерной модели. Использование этого подхода для компьютерных экспериментов началось в 1980-х годах и хорошо обобщено Саксом и др. (1989). Хотя байесовский подход широко используется, в последнее время обсуждаются также частотные подходы.
The basic idea of this framework is to model the computer simulation as an unknown function of a set of inputs. The computer simulation is implemented as a piece of computer code that can be evaluated to produce a collection of outputs. Examples of inputs to these simulations are coefficients in the underlying model, initial conditions and forcing functions. It is natural to see the simulation as a deterministic function that maps these inputs into a collection of outputs. On the basis of seeing our simulator this way, it is common to refer to the collection of inputs as , the computer simulation itself as , and the resulting output as Both and are vector quantities, and they can be very large collections of values, often indexed by space, or by time, or by both space and time. Although is known in principle, in practice this is not the case. Many simulators comprise tens of thousands of lines of high level computer code, which is not accessible to intuition. For some simulations, such as climate models, evaluation of the output for a single set of inputs can require millions of computer hours .
Основная идея этого подхода заключается в моделировании компьютерной симуляции как неизвестной функции множества входных параметров. Компьютерная симуляция реализуется в виде компьютерного кода, который можно выполнить для получения набора выходных данных. Примерами входных параметров для этих симуляций являются коэффициенты в базовой модели, начальные условия и вынуждающие функции. Естественно рассматривать симуляцию как детерминированную функцию, отображающую эти входные параметры в набор выходных данных. Исходя из такого представления симулятора, обычно обозначают множество входных параметров как , саму компьютерную симуляцию как , а полученный выход – как . И и являются векторными величинами и могут представлять собой очень большие наборы значений, часто индексированные пространством, временем или и тем, и другим. Хотя известна в принципе, на практике это не всегда так. Многие симуляторы состоят из десятков тысяч строк высокоуровневого компьютерного кода, который недоступен для интуитивного понимания. Для некоторых симуляций, таких как климатические модели, вычисление выходных данных для одного набора входных параметров может потребовать миллионы вычислительных часов.
The basic idea of this framework is to model the computer simulation as an unknown function of a set of inputs. The computer simulation is implemented as a piece of computer code that can be evaluated to produce a collection of outputs. Examples of inputs to these simulations are coefficients in the underlying model, initial conditions and forcing functions. It is natural to see the simulation as a deterministic function that maps these inputs into a collection of outputs. On the basis of seeing our simulator this way, it is common to refer to the collection of inputs as , the computer simulation itself as , and the resulting output as Both and are vector quantities, and they can be very large collections of values, often indexed by space, or by time, or by both space and time. Although is known in principle, in practice this is not the case. Many simulators comprise tens of thousands of lines of high level computer code, which is not accessible to intuition. For some simulations, such as climate models, evaluation of the output for a single set of inputs can require millions of computer hours .
Гауссов процесс
Типичная модель для вывода компьютерного кода — гауссовский процесс. Для упрощения обозначений предположим, что является скаляром. В рамках байесовского подхода мы фиксируем наше убеждение, что функция следует гауссовскому процессу, где — средняя функция, а — функция ковариации. Популярные средние функции — это полиномы низкого порядка, а популярная функция ковариации — ковариация Матерна, которая включает в себя как экспоненциальную, так и гауссовскую ковариации (в качестве частного случая).
where is the mean function and is the covariance function. Popular mean functions are low order polynomials and a popular covariance function is Matern covariance, which includes both the exponential and Gaussian covariances (as ).
Конструкция компьютерных экспериментов
Конструкция компьютерных экспериментов имеет существенные отличия от планирования экспериментов для параметрических моделей. Поскольку априорное гауссовское распределение имеет бесконечномерное представление, концепции А- и D-критериев (см. Оптимальное планирование), ориентированных на снижение ошибки в оценке параметров, неприменимы. Повторные запуски также были бы неэффективны в случаях, когда компьютерное моделирование не содержит ошибок. Критерии, используемые для определения хорошего плана эксперимента, включают интегрированную среднеквадратичную ошибку прогнозирования и критерии, основанные на расстоянии. Популярными стратегиями планирования являются латинский гиперкуб и последовательности с малым расхождением.
Popular strategies for design include latin hypercube sampling and low discrepancy sequences.
Проблемы с большими размерами выборки
В отличие от физических экспериментов, в компьютерных экспериментах обычно используются тысячи различных комбинаций входных данных. Поскольку стандартный статистический вывод требует обращения квадратной матрицы, размер которой равен числу выборок, вычислительные затраты растут пропорционально этому размеру. Обращение больших, плотных матриц также может приводить к числовым неточностям. В настоящее время эта проблема решается с помощью жадных деревьев решений, обеспечивающих эффективные вычисления при неограниченной размерности и объеме выборки (патент WO2013055257A1), или обходится использованием методов приближения, например.