La expansión del caos polinomial es una técnica de modelado sustituto que reemplaza una costosa simulación con una serie de polinomios ortogonales cuyos coeficientes se pueden usar para estimar la incertidumbre directamente. Una vez instalado, un sustituto de PCE le brinda acceso analítico a los medios de salida, las varianzas, los intervalos de confianza y los índices de sensibilidad de SOBOL sin ejecutar una sola simulación adicional.
Este artículo cubre el PCE desde la base teórica hasta la implementación práctica. Verá exactamente cómo se seleccionan las bases polinomiales, cómo se estiman los coeficientes por regresión, cuadratura o proyección, cómo las técnicas dispersas extienden PCE a dimensiones moderadas y qué modos de falla rompen el PCE estándar. Los ejemplos de Python incluidos utilizan Chaospy, UQPY y Scikit-Learn para mostrar flujos de trabajo completos y validados.
Comida clave
- PCE reemplaza el muestreo aleatorio con una aproximación determinista: en lugar de dibujar miles de muestras de Monte Carlo, PCE ajusta un polinomio a la respuesta del modelo. Los coeficientes polinómicos proporcionan entonces momentos analíticos e índices de sensibilidad.
- La base polinomial debe coincidir con la distribución de entrada: Legendre for Uniform, Hermite for Gaussian, Laguerre para exponencial. Una base no coincidente destruye la ortogonalidad e invalida todas las estimaciones de coeficientes.
- PCE no intrusivo es la opción predeterminada para la mayoría de los flujos de trabajo: mantiene su simulador como una caja negra, lo evalúa en los puntos de entrenamiento y estima los coeficientes a través de la regresión. Esto evita modificar las ecuaciones del solucionador.
- Escasos métodos de PCE manejan ~50 parámetros: el truncamiento hiperbólico, las rejillas de lazo y smolyak reducen drásticamente el tamaño de la base polinomial. Funcionan cuando la respuesta del modelo tiene interacciones dominantes de orden bajo, pero se debe verificar la suposición de escasez.
- PCE no es universal: las respuestas discontinuas, los eventos de umbral, los cambios de contacto y las fallas del solucionador producen oscilaciones no físicas (el fenómeno de Gibbs). Cuando la respuesta sea discontinua, use PCE multielemento, caos polinomial racional o un sustituto híbrido.
Cómo funciona la expansión del caos polinómico
La expansión del caos polinomial representa una salida del modelo como una suma ponderada de polinomios ortogonales. Considere una salida escalar y que depende de un vector de entrada x:
Y = M(X)
La aproximación PCE reemplaza m(x) con un polinomio:
Y(X) ≈ Σ cₖ Ψₖ(X)
Aquí, ψₖ son polinomios ortogonales multivariados y Cₖ son coeficientes deterministas. El conjunto de polinomios debe ser ortogonal con respecto a la distribución de probabilidad de entrada, y los coeficientes se determinan por el método de estimación elegido.
Polinomios ortogonales y coincidencia de distribución
La familia polinomial está vinculada directamente a la distribución de entrada. Esta no es una elección de diseño, es un requisito matemático para la ortogonalidad.
| Distribución | Polinomio ortogonal | Normalización |
|---|---|---|
| uniforme [-1, 1] | leyenda | Pₙ(ξ) = (1/N!)·Dⁿ/Dξⁿ[(ξ²-1)ⁿ] |
| Normal Normal N(0,1) | hermita | Hₙ(ξ) = (-1)ⁿ·E(ξ²/2)·dⁿ/dξⁿ[e(-ξ²/2)] |
| Exponencial λ=1 | laguerre | Lₙ(ξ) = (1/n!)·E^ξ·dⁿ/dξⁿ[ξⁿ] |
| beta [a, b] | jacobi | Polinomios Jacobi generalizados |
| empollón | charlatán | Polinomios ortogonales discretos |
La condición de ortonormalidad indica:
∫ Ψᵢ(ξ) Ψⱼ(ξ) w(ξ) dξ = δᵢⱼ
donde w(ξ) es la densidad de probabilidad de la distribución de entrada y Δᵢⱼ es el delta de kronecker. Cuando esta condición se mantiene, los coeficientes PCE se relacionan directamente con las estadísticas de salida a través de la identidad de Parseval.
Construcción polinómica multivariada
Cuando las entradas son independientes, la base polinomial multivariada es un producto tensor de polinomios univariados:
Ψₖ(X) = Π ψₖᵢ(Xᵢ)
Para una base de grado total del orden P en D parámetros inciertos, el número de términos es:
N = (d + p)! / (d! · p!)
Para 20 parámetros y orden tres, esto produce 1.771 términos. Una regresión estable generalmente requiere más puntos de entrenamiento que los coeficientes, por lo que la demanda computacional crece rápidamente.
PCE no intrusivo versus intrusivo
Hay dos enfoques fundamentalmente diferentes para construir un PCE. El enfoque no intrusivo trata al simulador como una caja negra. El enfoque intrusivo reformula las ecuaciones gobernantes.
PCE no intrusivo
PCE no intrusivo evalúa el simulador determinista en puntos seleccionados en el espacio de incertidumbre y se ajusta a una regresión polinomial. El flujo de trabajo:
- Seleccione una base polinomial alineada con las distribuciones de entrada.
- Generar puntos de entrenamiento (cuadratura o muestreo).
- Ejecute el simulador en esos puntos.
- estimar los coeficientes de expansión.
- Validar en puntos de prueba independientes.
Este enfoque no agrega ninguna modificación del solucionador. Puede envolver un CFD, FEM, un campo de fase o un modelo molecular existente y obtener un PCE sustituto sin cambiar ningún código interno.
PCE intrusivo (Galerkin estocástico)
PCE intrusivo sustituye la expansión polinomial directamente en las ecuaciones de gobierno y deriva un sistema determinista acoplado para los coeficientes. Para un modelo simple:
∂u/∂t = L(u) + f → Σ ∂cₖΨₖ/∂t = L(Σ cₖΨₖ) + f
Después de proyectar en cada función de base, el sistema acoplado resuelve todos los coeficientes simultáneamente. Esto puede ser más eficiente porque utiliza la estructura completa de las ecuaciones, pero requiere modificar el solucionador para manejar el sistema acoplado. Para la mayoría de los flujos de trabajo de producción, el enfoque intrusivo no es práctico: se prefiere el enfoque de regresión no intrusiva.
Cómo estimar los coeficientes PCE
El método de estimación del coeficiente determina tanto la precisión como el costo computacional. Hay tres enfoques principales.
Estimación basada en regresión
El enfoque de regresión no intrusiva es el más utilizado. Muestra los puntos de entrada, evalúa el modelo y se ajusta al polinomio por regresión lineal:
y ≈ Φ c
donde φ es la matriz de evaluación polinómica e y es el vector de evaluaciones de modelos. Si n_samples ≥ n_terms, la solución de mínimos cuadrados es:
c = (ΦᵀΦ)⁻¹ Φᵀ y
Esto es sencillo de implementar con las características polinomiales de scikit-learn:
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import Ridge
# Training data: N_samples × N_inputs
X_train = np.random.uniform(-1, 1, (100, 3))
# Polynomial features up to degree 2
poly = PolynomialFeatures(degree=2, include_bias=False)
Phi = poly.fit_transform(X_train) # 100 × 10 matrix
# Ridge regression (regularization stabilizes coefficient estimation)
model = Ridge(alpha=1e-4)
c = model.fit(Phi, y_train).coef_
La regresión con regularización (Ridge, Lazo) es numéricamente estable y funciona bien para dimensiones moderadas. La desventaja es que la matriz de regresión se vuelve mal condicionada cuando el conjunto de entrenamiento es pequeño en relación con el tamaño de la base.
Estimación basada en cuadratura (fórmula Gauss)
Cuando el índice de coeficiente k es unidimensional (un solo término polinomio), el coeficiente cₖ se puede calcular por cuadratura numérica:
cₖ = ∫ M(X) Ψₖ(X) w(X) dX ≈ Σᵢ M(Xᵢ) Ψₖ(Xᵢ) w(Xᵢ) / ||Ψₖ||²
Para PCE multivariado, se necesitan cuadrículas de cuadratura escasas. Este enfoque es exacto cuando el modelo es un polinomio de grado ≤ 2p, pero se vuelve poco práctico en dimensiones altas porque el tamaño de la cuadrícula en cuadratura crece exponencialmente.
Basado en proyección (colocación estocástica)
La colocación estocástica construye el PCE interpolando el modelo en puntos de colocación seleccionados. El coeficiente del término k es:
cₖ = Σᵢ M(Xᵢ) Ψₖ(Xᵢ) / Ψₖ(Xᵢ)² (diagonal weight)
La colocación evita el paso de integración de la cuadratura y es computacionalmente eficiente cuando se utilizan cuadrículas escasas o estrategias de refinamiento adaptativo. Es el enfoque preferido cuando el simulador es lo suficientemente barato como para evaluar en todos los puntos de cuadratura.
Métodos de PCE escasos
La base polinomial completa crece combinatoriamente con la dimensión. Los métodos de PCE escasos reducen el tamaño de base mientras conservan la precisión cuando la respuesta del modelo está dominada por interacciones de orden bajo.
Truncamiento hiperbólico
La restricción de base hiperbólica (HBR) con el parámetro q < 1 Límites que se incluyen en varios índices:
∑ αᵢ^(1/q) ≤ p
Cuando Q → 1, el HBR se acerca a la base de grado total. Cuando Q → 0, se acerca a la base generalizada de Pareto. El parámetro Q controla la compensación entre el tamaño de base y la precisión. Para la mayoría de los modelos de ingeniería, Q = 0,5 a 0,7 proporciona una buena compresión al tiempo que conserva importantes términos de interacción.
El truncamiento hiperbólico reduce una base de pedidos de 20 parámetros, de 1.771 términos a aproximadamente 200-400 términos dependiendo de q.
Lazo y regresión regularizada
Lasso (operador de selección y contracción mínima absoluta) realiza regresión con una penalización L1:
min (||Φc||² + λ ||c||₁)
La penalización L1 impulsa muchos coeficientes exactamente a cero, produciendo una solución escasa. Elastic Net combina las penalidades de L1 y L2 para manejar los predictores correlacionados:
min (||Φc||² + λ₁ ||c||₁ + λ₂ ||c||₂²)
El PCE escaso basado en lazo se implementa en UQPY como HyperbolicTruncLARS (truncamiento hiperbólico con regresión de mínimo ángulo). El flujo de trabajo:
from uqpy.surrogates import HyperbolicTruncLARS
from uqpy.distributions import MultivariateGaussian, Uniform
# Define distributions
dist = MultivariateGaussian(np.zeros(5), np.eye(5))
# Generate samples and run model
samples = dist.sample(n=500)
y_train = model_function(samples)
# Build sparse PCE with q=0.5
pce = HyperbolicTruncLARS(distribution=dist, q=0.5, p=3)
pce.fit(samples, y_train)
# Validate
validation_samples = dist.sample(n=100)
y_pred = pce.predict(validation_samples)
rmse = np.sqrt(np.mean((y_pred - y_test)**2))
Rejillas escasas de Smolyak
La construcción de Smolyak combina reglas de cuadratura univariadas utilizando la fórmula de cuadrícula escasa:
Qₘ = Σ_{|k|=m} (-1)^(m-|k|) · Πᵢ Q_{kᵢ}
donde q_d es el operador de cuadratura dimensional y |k| = σ kᵢ. Las cuadrículas de Smolyak reducen el número de puntos multidimensionales del crecimiento exponencial al polinomio en la dimensión. Son más efectivos cuando la respuesta es suave y dominan las interacciones de bajo orden.
Cuando el PCE es efectivo
PCE converge exponencialmente rápido para obtener respuestas suaves del modelo. La tasa de convergencia depende de:
- Suavidad: las respuestas analíticas convergen geométricamente. Las respuestas suaves por partes convergen algebraicamente.
- Dimensión efectiva: incluso con 50 parámetros nominales, si solo 5 controlan la respuesta, PCE converge en 5 dimensiones.
- Interacciones de parámetros: las interacciones fuertes de orden superior aumentan el tamaño de base requerido.
- Calidad del diseño experimental: las secuencias SOBOL o las cuadrículas escasas en cuadratura funcionan mejor que el muestreo aleatorio uniforme.
Contexto de referencia
- PCE proporciona momentos analíticos e índices SOBOL una vez instalados, sin evaluaciones de modelos adicionales.
- El enfoque de regresión trata al simulador como una caja negra.
- Los métodos escasos pueden extender PCE a ~50 parámetros inciertos cuando el modelo exhibe interacciones escasas.
- El ecosistema UQ de Python incluye CHAOSPY, UQPY, SALIB, SMT y la incertidumbre.
PCE vs Kriging vs redes neuronales
PCE es un sustituto entre muchos. Comprender las compensaciones le ayuda a elegir el método correcto para su problema.
| Dimensión | Método | Datos necesarios | interpretabilidad | dimensionalidad | Extracción UQ | Índices de Sobol |
|---|---|---|---|---|---|---|
| peñatallo | Regresión polinómica / cuadrada | N_Términos × 1.5 | Alto (coeficientes se asignan a la varianza) | Moderado (escaso se extiende a ~50) | Momentos analíticos exactos | Exacto (agrupación de coeficientes) |
| Kriging (proceso gaussiano) | Interpolación basada en correlación | ~10-50 × d | Medio (estructura de correlación) | Moderado bajo (~10-30) | Intervalos de predicción | No (se necesita derivada numérica) |
| Redes neuronales | Arquitectura profunda / superficial | Cientos a miles | Bajo (caja negra) | Alto (100+ posible) | No (sin modelo UQ inherente) | No (sensibilidad a través de perturbaciones) |
| Modelos de pedido reducido | Proyección / Adecuado ortogonal | específico del problema | Medio (vectores de proyección) | Alto (incrusta la física) | No (proyección determinista) | No |
PCE es el único sustituto que da índices analíticos exactos de Sobol de los coeficientes. Kriging da intervalos de predicción pero requiere diferenciación numérica para la sensibilidad. Las redes neuronales requieren una sensibilidad basada en perturbaciones. Los modelos de orden reducido son proyecciones deterministas.
Cuándo elegir PCE
PCE es la mejor opción cuando:
- Necesita momentos analíticos e índices de sensibilidad: los coeficientes le dan índices e[Y], var(y) y sobol sin cálculo adicional.
- La respuesta es suave y de baja dimensión: las respuestas analíticas convergen geométricamente en PCE.
- Necesitas Monte Carlo rápido en el sustituto: Una vez instalado, evaluar el polinomio es O(1). Esto es invaluable para el análisis de confiabilidad o la estimación de probabilidad de umbral.
- El simulador es moderadamente caro: si cada evaluación toma minutos a horas, es factible un PCE de 100-500 puntos.
Cuándo evitar el PCE
Evite el PCE cuando:
- La respuesta es discontinua: el fenómeno de Gibbs produce oscilaciones cerca de discontinuidades. Use PCE multielemento o un sustituto híbrido.
- Necesita un modelo de alta dimensión: incluso el PCE escaso se vuelve inestable más allá de ~50 parámetros sin escasez verificada.
- La respuesta es altamente no lineal con un fuerte comportamiento de umbral: PCE suaviza los umbrales. Use Monte Carlo o QMC aleatorizado en su lugar.
- Los datos son extremadamente escasos: con menos de 20 puntos de entrenamiento, el PCE no es confiable. Las superficies de respuesta polinomial o kriging pueden ser más robustas.
El fenómeno de Gibbs
El fenómeno de Gibbs es el modo de falla más fundamental del PCE estándar. Para respuestas discontinuas, eventos de umbral, cambios de contacto o fallas del solucionador, la aproximación polinomial produce oscilaciones no físicas cerca de la discontinuidad. Esto es matemáticamente idéntico a las oscilaciones observadas al aproximar una función de paso con una serie de Fourier.
Para una respuesta suave, PCE converge rápidamente. Para una respuesta con una discontinuidad de un solo salto, el polinomio oscila con amplitud proporcional a la altura del salto y decayendo solo como 1/√N. Aumentar el orden polinomial empeora la oscilación, no mejor.
Estrategias de mitigación
PCE de varios elementos (ME-PCE): el dominio de entrada se divide en subregiones. Se instala un polinomio separado dentro de cada subregión, con la continuidad impuesta en los límites. Este es el enfoque más fiable para las respuestas discontinuas.
Híbrido polinomial de caos-kring: un PCE captura el componente suave de la respuesta, mientras que un modelo Kriging captura la discontinuidad residual. Esto aprovecha las fortalezas de ambos métodos.
Caos polinomial racional: Las aproximaciones de Padé-Legendre utilizan una proporción de polinomios en lugar de un solo polinomio. La forma racional puede representar saltos discontinuos con mayor precisión que un polinomio puro.
Descomposición del dominio de aprendizaje activo: Novák et al. (2023) introdujeron un enfoque secuencial donde el dominio de entrada se descompone iterativamente en función del comportamiento del modelo en cada región. Este es el enfoque más flexible para respuestas discontinuas complejas.
Guía de implementación de Python
caramelo
Chaospy es una biblioteca enfocada para distribuciones de PCE y probabilidad. No tiene como objetivo ser un marco UQ todo en uno.
import chaospy as cp
import numpy as np
# Independent uncertain parameters
distribution = cp.J(
cp.Uniform(0.8, 1.2),
cp.Normal(2.0, 0.1)
)
# Total-degree polynomial basis
order = 3
expansion = cp.generate_expansion(order, distribution)
# Experimental design (Sobol)
samples = distribution.sample(100, rule='sobol')
# Model evaluations
def model(sample):
conductivity = sample[0]
source = sample[1]
return source / conductivity + 0.2 * conductivity**2
evaluations = np.array([model(samples[:, i]) for i in range(samples.shape[1])])
# Fit PCE by regression
approximation = cp.fit_regression(expansion, samples.T, evaluations)
# Extract statistics (analytical, no additional model evaluations)
mean = cp.E(approximation, distribution)
variance = cp.Var(approximation, distribution)
first_order = cp.Sens_m(approximation, distribution)
total_order = cp.Sens_t(approximation, distribution)
print(f"Mean: {mean}")
print(f"Standard deviation: {np.sqrt(variance)}")
print(f"First-order Sobol: {first_order}")
print(f"Total-order Sobol: {total_order}")
uqpy
UQPY proporciona PCE escasas, LARS y amplias utilidades de validación.
from uqpy.distributions import MultivariateGaussian
from uqpy.surrogates import HyperbolicTruncLARS, MonteCarlo
import numpy as np
# Define distribution
dist = MultivariateGaussian(np.zeros(5), np.eye(5))
# Generate samples and run model
samples = dist.sample(n=500)
y_train = np.array([model_function(x) for x in samples])
# Build sparse PCE
pce = HyperbolicTruncLARS(distribution=dist, q=0.5, p=3)
pce.fit(samples, y_train)
# Validate on independent test points
test_samples = dist.sample(n=100)
y_pred = pce.predict(test_samples)
y_test = np.array([model_function(x) for x in test_samples])
# Root mean squared error
rmse = np.sqrt(np.mean((y_pred - y_test)**2))
print(f"RMSE: {rmse}")
# Monte Carlo uncertainty propagation on the surrogate
n_mc = 10000
mc_samples = dist.sample(n_mc)
mc_predictions = pce.predict(mc_samples)
mc_mean = np.mean(mc_predictions)
mc_std = np.std(mc_predictions)
print(f"MC propagation mean: {mc_mean}")
print(f"MC propagation std: {mc_std}")
PCE regularizado de Scikit
Para proyectos que ya usan Scikit-learn, Ridge o Lazo es sencillo.
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import Lasso
# Generate Sobol samples
N = 300
d = 4
from scipy.stats import qmc
sampler = qmc.Sobol(d)
sample = sampler.random(base2=np.ceil(np.log2(N)).astype(int))
# Model evaluations
y = np.array([model_function(row) for row in sample])
# Polynomial features with hyperbolic truncation (manual basis selection)
poly = PolynomialFeatures(degree=2, include_bias=False)
Phi = poly.fit_transform(sample)
# LASSO regression
lasso = Lasso(alpha=1e-3)
c = lasso.fit(Phi, y).coef_
print(f"Non-zero coefficients: {np.sum(c != 0)} out of {len(c)}")
print(f"Coefficients: {c}")
Validación de un sustituto de PCE
Nunca se debe confiar en un sustituto PCE sin validación. Los coeficientes polinómicos proporcionan momentos exactos, pero esos momentos no tienen sentido si el sustituto no se aproxima al modelo con precisión.
Protocolo de validación
- Generar puntos de validación: independiente del entrenamiento. Use secuencias SOBOL o muestreo de hipercubo latino.
- Compute RMSE y error máximo: compare las predicciones de PCE con las evaluaciones reales del modelo en los puntos de validación.
- Revise la precisión del momento: compare la media y la varianza extraídas de PCE con las estimaciones de Monte Carlo en el conjunto de validación.
- Monitor de estabilidad de la sensibilidad: si los índices SOBOL cambian significativamente entre el entrenamiento y la validación, el PCE no está convergente.
- Compruebe las oscilaciones de Gibbs: trace las predicciones de PCE contra una cuadrícula. Las oscilaciones no suaves indican un fallo de respuesta discontinuo.
Monitoreo de convergencia
Seguimiento del orden polinomial y número de puntos de entrenamiento. A medida que ambos aumentan, el RMSE debería disminuir monótonamente. Si RMSE se estanca o aumenta con un orden superior, la base es sobreajustar los datos de entrenamiento.
# Monitoring convergence as polynomial order increases
for order in [2, 3, 4, 5]:
expansion = cp.generate_expansion(order, distribution)
samples = distribution.sample(N)
evaluations = np.array([model(s) for s in samples])
pce = cp.fit_regression(expansion, samples.T, evaluations)
# Validate
test = distribution.sample(N_test)
y_pred = np.array([pce(s) for s in test])
y_true = np.array([model(s) for s in test])
rmse = np.sqrt(np.mean((y_pred - y_true)**2))
print(f"Order {order}: RMSE = {rmse:.6f}")
Errores comunes y cómo evitarlos
1. Base polinómica no coincidente
El uso de polinomios de Legendre para entradas gaussianas destruye la ortogonalidad. Los coeficientes se polarizan y el momento de extracción no es válido. Haga coincidir siempre la familia polinomial con la distribución de entrada.
2. Sobreajuste de la base polinómica
Una base de grado 5 en 10 parámetros tiene 2.002 términos. Con 2.000 puntos de entrenamiento, la regresión es apenas estable. Utilice criterios de información (AIC, BIC) o de validación cruzada para seleccionar el orden polinómico.
3. Confiar en los momentos PCE sin validación
La media y la varianza extraída de los coeficientes PCE son expresiones matemáticas exactas. Pero solo son válidos si la aproximación polinomial es precisa. Siempre valide contra puntos de prueba independientes antes de informar momentos.
4. Ignorar el fenómeno de Gibbs
Para respuestas discontinuas, el polinomio oscila cerca de discontinuidades. Informe el RMSE en una cuadrícula que incluye regiones de discontinuidad. Si RMSE está dominado por unos pocos puntos oscilatorios, el PCE no es válido.
5. Asumir la escasez sin verificar
El lazo o el truncamiento hiperbólico asume que la respuesta del modelo está dominada por interacciones de orden bajo. Si el modelo real tiene fuertes interacciones de alto orden, el PCE escaso las extrañará. Verifique la escasez comparando las normas de coeficiente de bases completas frente a escasas.
Resumen y próximos pasos
La expansión de caos polinómico convierte un simulador determinista en un sustituto estocástico que proporciona acceso analítico a estadísticas de salida, intervalos de incertidumbre e índices de sensibilidad. El método sobresale cuando la respuesta es suave, la dimensionalidad es moderada y el costo computacional es lo suficientemente alto como para justificar la construcción de sustitutos.
Flujo de trabajo recomendado
- Verifique la convergencia numérica del simulador determinista antes de UQ. El error de discretización y la incertidumbre numérica deben establecerse antes de la propagación.
- Asignar distribuciones a partir de datos experimentales o juicio de experto documentado. No prefiera distribuciones uniformes.
- Seleccione la base polinomial haciendo coincidir distribuciones con polinomios ortogonales. Verificar las condiciones de ortonormalidad.
- Elija un método de estimación de coeficiente: regresión para PCE no intrusivo, cuadratura para casos eficientes de baja dimensión, colocación para modelos baratos.
- Validar el sustituto contra puntos de prueba independientes y monitorear la convergencia con el aumento del orden polinomial.
- Informar momentos e índices de sensibilidad solo después de la validación. Incluya intervalos de confianza para las estadísticas estimadas.
Qué evitar
- Uso de PCE para respuestas discontinuas sin mitigación
- Suponiendo que el PCE escaso funciona para cada problema de alta dimensión
- Reportar momentos PCE sin validación
- Confuso PCE no intrusivo con galerkin estocástico intrusivo
- Uso de bases polinomiales completas en problemas donde el tamaño de base excede el conjunto de entrenamiento
Guías relacionadas
- Cuantificación de incertidumbre y análisis de sensibilidad en simulación científica — Flujo de trabajo de UQ más amplio, análisis de sensibilidad de SOBOL, métodos Monte Carlo y herramientas Python UQ.
- Métodos Monte Carlo para simulaciones científicas — Compare el muestreo aleatorio, QMC, LHS y el comportamiento de convergencia contra PCE.
- Surrogate de aprendizaje automático para simulaciones científicas: compilar y validar redes neuronales y procesos gaussianos sustitutos junto con PCE.
- Verificación vs validación en simulaciones científicas — Establecer convergencia numérica antes de comenzar Una campaña de UQ.
referencias
- Caflisch, R. E., & Mosolova, N. (1998). Métodos Monte Carlo y cuasi-Monte Carlo. Informe de CAM de UCLA.
- Novák et al. (2023). Dominio de aprendizaje activo Adaptativo Localizados sustitutos. Métodos informáticos en mecánica e ingeniería aplicadas. doi
- Schneider (2023). Expansión racional del caos polinómico. disertación TUM. PDF
- Diccionario Helmholtz UQ. Entrada de expansión de caos polinómico. url
- Centro de Aprendizaje COMSOL. Teoría de modelado sustituto y PCE. url
¿Necesita ayuda para crear sustitutos de PCE para sus simulaciones?
Si está luchando con la implementación del caos polinomial, la selección de bases, la escasa regularización de PCE o la validación de sustitutos, podemos ayudarlo. Nos especializamos en flujos de trabajo de cuantificación de incertidumbre basados en Python y podemos guiarlo desde scripts PCE básicos hasta canalizaciones sustitutas de producción.