Visualizar el caos: sistemas dinámicos en R

〢 Visualización Científica # R # caos # visualización # ciencia de datos # matemática
«8 de noviembre de 2025»
Visualizar el caos: sistemas dinámicos en R

🌪️ Del orden al caos

Los sistemas dinámicos son ecuaciones que describen el cambio. Pero al iterarlas muchas veces, emergen patrones impredecibles, bellos y sensibles a las condiciones iniciales.

El caos no es desorden. Es orden complejo, escondido bajo una superficie imprevisible.


🔬 El atractor de Lorenz

Uno de los ejemplos más famosos del caos es el Atractor de Lorenz, descubierto al estudiar el clima. Sus ecuaciones producen trayectorias que nunca se repiten, pero permanecen confinadas dentro de una región específica del espacio tridimensional.


# Instalación de librerías necesarias
# install.packages("deSolve")
# install.packages("plotly")

library(deSolve)
library(plotly)

# Definición del sistema de Lorenz
lorenz <- function(t, state, parameters) {
  with(as.list(c(state, parameters)), {
    dx <- sigma * (y - x)
    dy <- x * (rho - z) - y
    dz <- x * y - beta * z
    list(c(dx, dy, dz))
  })
}

# Parámetros del sistema
parameters <- c(sigma = 10, rho = 28, beta = 8/3)
state <- c(x = 1, y = 1, z = 1)
times <- seq(0, 50, by = 0.01)

# Resolver el sistema
out <- ode(y = state, times = times, func = lorenz, parms = parameters)
out <- as.data.frame(out)

# Visualización 3D interactiva
plot_ly(out, x = ~x, y = ~y, z = ~z, type = 'scatter3d', mode = 'lines',
        line = list(color = 'turquoise', width = 3)) %>%
  layout(scene = list(
    xaxis = list(title = 'X'),
    yaxis = list(title = 'Y'),
    zaxis = list(title = 'Z')
  ))