Interpolación y datos · Tema 18

Interpolación y aproximación de datos

Cómo construir una función a partir de muestras, decidir si debe pasar exactamente por ellas y reconocer los límites de estimar dentro o fuera del intervalo observado.

01 · El problema

Conocemos algunos puntos, no toda la función

Un sensor mide una temperatura cada hora, una animación define posiciones en instantes clave y una simulación costosa produce resultados para unos pocos parámetros. En todos estos casos conocemos pares:

(x₀,y₀), (x₁,y₁), …, (xₙ,yₙ)

pero necesitamos estimar un valor para otro x. La interpolación y la aproximación transforman esas muestras discretas en una regla que puede evaluarse entre los datos.

02 · Vocabulario

Nodos, valores y función aproximante

Nodo xᵢ
Valor de la variable independiente donde existe una muestra.
Dato yᵢ
Valor observado, calculado o medido en el nodo.
Conjunto de datos
Colección de pares ordenados (xᵢ,yᵢ).
Aproximante g(x)
Función construida para representar o estimar los datos.

Los nodos deben distinguirse de los índices del arreglo. El índice i identifica una muestra; xᵢ puede ser cualquier número real y los espacios entre nodos no tienen que ser uniformes.

03 · Coincidencia exacta

Qué significa interpolar

Una función interpolante p(x) debe reproducir cada dato:

p(xᵢ) = yᵢ    para todo i

Por lo tanto, su error en los nodos es cero, salvo efectos de redondeo. Entre los nodos, diferentes familias de funciones pueden generar curvas distintas aunque todas atraviesen las mismas muestras.

Interpolar es apropiado cuando:

  • los datos se consideran exactos o suficientemente confiables;
  • se necesita continuidad entre valores tabulados;
  • pasar por cada muestra forma parte del requisito;
  • la estimación se realiza principalmente dentro del intervalo observado.

04 · Representar una tendencia

Ajustar no exige pasar por todos los puntos

Cuando las mediciones contienen ruido, obligar a la curva a reproducir cada fluctuación puede ser contraproducente. Un ajuste busca una función g(x) que se acerque a los datos según un criterio global.

residuo del dato i:   rᵢ = yᵢ − g(xᵢ)

Un criterio frecuente es minimizar la suma de cuadrados:

Σ rᵢ² = Σ [yᵢ−g(xᵢ)]²

La recta, parábola o curva ajustada puede no atravesar ningún punto exactamente, pero describir mejor la relación subyacente y generalizar mejor a nuevas observaciones.

05 · Elegir el objetivo

Interpolar frente a ajustar

Diferencias conceptuales entre interpolación y ajuste.
AspectoInterpolaciónAjuste o regresión
Condición en los nodosCoincidencia exactaSe permiten residuos
Datos idealesTablas o cálculos confiablesMediciones con ruido
ComplejidadPuede crecer con los puntosSe elige según el modelo
ObjetivoEstimar entre muestrasCapturar una tendencia
Error en datosPuede reproducirloPuede suavizarlo
EjemploTabla de una funciónRelación experimental

Ninguna alternativa es universalmente superior. La elección depende de qué representan los datos y de qué uso tendrá el modelo.

06 · Existencia y unicidad

Un polinomio para n+1 puntos

Dados n+1 nodos distintos, existe un único polinomio de grado menor o igual que n que interpola todos los datos.

p(x) = a₀ + a₁x + a₂x² + … + aₙxⁿ

Imponer p(xᵢ)=yᵢ produce un sistema lineal para los coeficientes. La unicidad matemática no significa que esa sea siempre la representación más estable o apropiada.

Un polinomio global de grado alto puede oscilar intensamente, especialmente cerca de los extremos y con nodos uniformemente espaciados. Más puntos no garantizan automáticamente una mejor interpolación global.

07 · Alcance del modelo

Aproximaciones globales y locales

Modelo global

Una función usa todos los datos

Un polinomio global cambia en todo el intervalo cuando se modifica un punto. Puede ser compacto, pero sensible y oscilatorio.

Modelo local

Cada tramo usa datos cercanos

La interpolación por segmentos limita la influencia de una muestra. Rectas y splines son ejemplos habituales.

Los modelos locales suelen ser más fáciles de actualizar y controlar. Los globales pueden aprovechar relaciones suaves que abarcan todo el dominio.

08 · Dentro y fuera

Interpolación no es extrapolación

Interpolación
Estima para x situado entre el menor y el mayor nodo disponible.
Extrapolación
Estima fuera del intervalo observado y prolonga una tendencia sin datos que la respalden.

La extrapolación es generalmente más riesgosa. Dos funciones casi idénticas dentro del intervalo pueden separarse con rapidez fuera de él.

09 · Preparar las muestras

Orden, duplicados, faltantes y ruido

Antes de construir una función es necesario revisar los datos:

  • Nodos desordenados: pueden ordenarse conservando cada par (x,y).
  • Nodos duplicados: dos valores distintos de y para el mismo x impiden una interpolación como función ordinaria.
  • Valores no finitos: NaN e infinitos deben rechazarse o tratarse previamente.
  • Datos faltantes: no deben convertirse silenciosamente en cero.
  • Ruido y valores atípicos: pueden volver inconveniente la coincidencia exacta.
function prepararPuntos(puntos) {
  if (!Array.isArray(puntos) || puntos.length < 2) {
    throw new Error("Se necesitan al menos dos puntos");
  }
  const copia = puntos.map(({ x, y }) => {
    if (!Number.isFinite(x) || !Number.isFinite(y)) {
      throw new Error("Cada coordenada debe ser finita");
    }
    return { x, y };
  }).sort((a, b) => a.x - b.x);

  for (let i = 1; i < copia.length; i++) {
    if (copia[i].x === copia[i - 1].x) {
      throw new Error(`Nodo duplicado: x=${copia[i].x}`);
    }
  }
  return copia;
}

console.log(prepararPuntos([{ x: 2, y: 5 }, { x: 0, y: 1 }]));

10 · De dónde surge la diferencia

Fuentes de error

Errores que pueden coexistir en una estimación.
FuenteOrigenEjemplo
DatosMedición o simulaciónSensor con precisión limitada
DiscretizaciónPocas muestrasNodos demasiado separados
ModeloFamilia inadecuadaRecta para una relación curva
InterpolaciónComportamiento entre nodosCurvatura no capturada
RedondeoAritmética finitaEvaluación inestable

El error cero en los nodos no demuestra que el modelo sea correcto entre ellos. Para evaluar la calidad se necesitan conocimiento del fenómeno, cotas teóricas o datos de validación adicionales.

11 · Decisión práctica

Qué preguntar antes de elegir un método

  1. 1
    ¿Los datos son exactos?

    Si contienen ruido, considerar ajuste o suavizado.

  2. 2
    ¿Debe pasar por cada punto?

    Si la respuesta es sí, necesitamos una interpolación.

  3. 3
    ¿Se requiere suavidad?

    Una recta por tramos es continua, pero cambia bruscamente de pendiente en los nodos.

  4. 4
    ¿Cuántos datos existen?

    Un polinomio global de grado muy alto puede ser inestable.

  5. 5
    ¿Dónde se evaluará?

    Dentro del intervalo es interpolación; fuera, extrapolación.

  6. 6
    ¿Los datos cambiarán?

    Los métodos locales o incrementales pueden ser más fáciles de actualizar.

12 · Diseño para programación

Separar construcción y evaluación

Una buena interfaz construye el modelo una sola vez y devuelve una función que puede evaluarse muchas veces. Este ejemplo introductorio usa segmentos rectos:

function crearInterpoladorLineal(puntos) {
  const datos = [...puntos].sort((a, b) => a.x - b.x);
  if (datos.length < 2) throw new Error("Faltan puntos");

  return function evaluar(x) {
    let i = 0;
    while (i < datos.length - 2 && x > datos[i + 1].x) i++;
    const p = datos[i];
    const q = datos[i + 1];
    if (q.x === p.x) throw new Error("Nodos duplicados");
    const t = (x - p.x) / (q.x - p.x);
    return p.y + t * (q.y - p.y);
  };
}

const temperatura = crearInterpoladorLineal([
  { x: 10, y: 18 }, { x: 12, y: 24 }, { x: 14, y: 27 }
]);
console.log(temperatura(11)); // 21

Esta implementación extrapola usando el primer o último segmento. En una API real conviene permitir que el usuario elija entre extrapolar, limitarse al intervalo o lanzar un error.

13 · Contextos de uso

Dónde aparece la interpolación

Ejemplos de datos y aproximaciones.
ÁreaMuestrasUso
AnimaciónFotogramas claveCalcular posiciones intermedias
GráficosPuntos de una curvaDibujar una trayectoria continua
SensoresMediciones temporalesEstimar instantes no medidos
Tablas científicasValores precalculadosAproximar funciones costosas
ImágenesPíxeles vecinosRedimensionar o transformar
Datos experimentalesObservaciones con ruidoAjustar una tendencia

La familia adecuada cambia con el objetivo: una animación puede priorizar suavidad, mientras una tabla termodinámica puede priorizar precisión y preservación de forma.

14 · Exploración interactiva

Laboratorio: coincidencia exacta o tendencia

Compará una interpolación lineal por tramos con una recta de mínimos cuadrados. Mové el punto de consulta dentro y fuera del intervalo observado.

EXPERIMENTO 18

De las muestras a una estimación

Datos suaves

Los resultados numéricos aparecen debajo.
Interpolación—
Ajuste lineal—
RMSE del ajuste—
RegiónInterpolación

La curva dorada pasa por cada muestra; la recta resume la tendencia global.

Preguntas para explorar

  1. Elegí datos lineales con ruido. ¿Qué modelo representa mejor la tendencia?
  2. En el conjunto con un dato atípico, observá su influencia sobre la recta.
  3. Mové x fuera de [0,5]. ¿Por qué cambia la etiqueta de la región?
  4. En un nodo, verificá que la interpolación reproduzca exactamente el dato.

15 · Comprensión

Confusiones frecuentes

«Interpolar y ajustar son sinónimos»

Interpolar exige coincidencia en cada nodo. Ajustar permite residuos para representar una tendencia o reducir el efecto del ruido.

«Pasar por todos los puntos garantiza un buen modelo»

Solo garantiza error cero en las muestras. La curva puede oscilar o comportarse mal entre ellas.

«Más grado siempre produce mayor precisión»

Un polinomio de grado alto puede amplificar redondeo y presentar oscilaciones intensas.

«Estimar fuera del intervalo sigue siendo interpolar»

Fuera del rango de nodos se realiza extrapolación, generalmente con mayor incertidumbre.

«Los datos deben estar igualmente espaciados»

Muchos métodos admiten nodos irregulares. Lo esencial para la interpolación ordinaria es que sean distintos.

16 · Práctica guiada

Ejercicios

Ejercicio 1: clasificar el objetivo

Una tabla contiene valores calculados con gran precisión y la función debe reproducirlos exactamente. ¿Interpolar o ajustar?

Ver solución

Interpolar, porque la coincidencia con los valores tabulados es un requisito y los datos se consideran confiables.

Ejercicio 2: datos ruidosos

Un sensor entrega cien mediciones con pequeñas fluctuaciones aleatorias. ¿Por qué un polinomio de grado 99 puede ser una mala elección?

Ver solución

Reproduciría también el ruido, podría oscilar entre muestras y sería sensible numéricamente. Un ajuste de menor complejidad puede representar mejor la tendencia.

Ejercicio 3: interpolación o extrapolación

Los nodos abarcan [2,8]. Clasificá estimaciones en x=5, x=2 y x=10.

Ver solución razonada

x=5 está dentro y es interpolación. x=2 coincide con un extremo y reproduce un dato. x=10 está fuera y es extrapolación.

Ejercicio 4: duplicados

¿Puede una función ordinaria interpolar simultáneamente (3,5) y (3,8)?

Ver solución

No, porque una función no puede asignar dos valores diferentes al mismo argumento. Es necesario revisar, combinar o reinterpretar las observaciones.

Ejercicio 5: región de consulta

Implementá una función que indique si un valor se encuentra dentro, en el borde o fuera del intervalo de nodos.

Ver una posible solución
function clasificarConsulta(nodos, x) {
  const minimo = Math.min(...nodos);
  const maximo = Math.max(...nodos);
  if (x < minimo || x > maximo) return "extrapolación";
  if (x === minimo || x === maximo) return "borde";
  return "interpolación";
}

console.log(clasificarConsulta([2, 4, 8], 10)); // extrapolación

17 · Síntesis

Ideas para recordar

  • Los nodos y sus valores forman muestras discretas de una relación.
  • Una función interpolante reproduce exactamente cada dato.
  • Un ajuste permite residuos para capturar una tendencia global.
  • Con nodos distintos existe un único polinomio interpolante de grado máximo n.
  • Un modelo global utiliza todos los puntos; uno local trabaja por regiones.
  • Estimar fuera del intervalo es extrapolar y supone mayor riesgo.
  • Los datos deben validarse antes de construir el modelo.
  • Error cero en los nodos no garantiza exactitud entre ellos.
  • El método debe elegirse según ruido, suavidad, cantidad de datos y uso final.

En el próximo tema estudiaremos la interpolación lineal y polinómica, sus fórmulas, implementación y error.