PTENES
Saltar al contenido
MÓDULO 1.2

🌍 Grafos en el mundo real

Seis grafos que ya usas sin saberlo. Empezamos por tu rutina de la mañana y terminamos en el grafo de dependencias de tu build, que técnicamente es casi lo mismo que un grafo de agentes.

6
Temas
40
Minutos
Básico
Nivel
Aplicado
Tipo
Progreso de este módulo
0%0 de 6
1

☕ Modela tu mañana

Tú dormido. Despiertas. Tardas 2 minutos en levantarte. Otros 5 en cepillarte los dientes. Otros 3 hasta que el café está en la taza. Cada estado es un en el, cada transición es una arista, y cada intervalo es el peso. Acabas de modelar un proceso.

Lo interesante empieza cuando aparece un ruta alternativa. Supongamos que alguien (o un robot) te lleva el café a la cama: ahora hay una arista que sale de «despertar» y llega directamente a «café», saltándose dos nodos. El grafo no cambió de naturaleza — solo ganó una arista. Y, de repente, existe una elección a optimizar.

Diagrama de la rutina de la mañana como grafo, en estilo de pizarra: despertarse, levantarse, cepillarse los dientes, preparar café, tomar café y salir de casa, conectados por flechas con pesos en minutos. Una flecha amarilla conecta directamente despertarse con preparar café, con un peso de 5, y lleva la etiqueta café listo o automatizado. Leyenda: los círculos son etapas, las flechas son relaciones y el número es el peso en tiempo.
Qué observar: fíjate en que el grafo no termina en el café — sigue hasta “salir de casa”. Esto importa: dónde cortas el grafo define qué pregunta responde. Si tu objetivo es “salir de casa más temprano”, el nodo “tomar café” (8 minutos hasta la puerta) pesa más que todo el ahorro de la flecha amarilla.

🆕 ¿Nuevo aquí? Qué es «modelar»

Modelar es elegir qué se convierte en nodo, qué se convierte en arista y qué se convierte en peso. No existe una modelación «correcta» en abstracto: existe una modelación útil para la pregunta que quieres responder. Si la pregunta es «¿cuánto tiempo me toma?», el peso son minutos. Si es «¿cuánto cuesta?», el peso es dinero.

Conceptos clave

Estado = nodo

Dónde estás

Transición = arista

Cómo sales de ahí

Intervalo = peso

Cuánto costó

Atajo = elección

Dónde hay algo que optimizar

2

👥 Lee el grafo social

Cuando LinkedIn te dice «tienen 3 conexiones en común, agrega a Lucas», te está dando el resultado de un recorrido por un grafo. Cada persona es un nodo. Cada relación es una arista con peso: amistad, compañeros de trabajo, temas en común, otras redes donde aparecen juntos. «Estar a tres conexiones» significa literalmente tres aristas de distancia.

1 · trabajo 2 · universidad 3 · tema tú Ana Bruno Lucas «3 conexiones de distancia» = 3 aristas en el camino

Qué observar: los números 1, 2, 3 encima de las líneas. “Grados de separación” no es una metáfora: es el número de aristas del camino más corto. Y la etiqueta de cada arista (trabajo, universidad, tema) muestra que las aristas pueden tener tipo, no solo peso.

📊 Lo que hace el algoritmo con esto

  • Recomendar a una persona: quién está a 2-3 aristas de distancia y tiene muchos vecinos en común
  • Recomendar contenido: lo que consumieron los vecinos con una arista de peso alto
  • Detectar comunidad: grupos donde casi todos se conectan con casi todos
  • Encontrar un puente: la persona que conecta dos grupos que no se conocen: la arista más valiosa de la red

Conceptos clave

Grado de separación

Distancia en aristas

Arista tipada

La relación tiene nombre

No dirigido

La amistad vale para ambos lados

Puente

La arista que conecta mundos

3

📈 Mira el trade-off: CAC, churn y LTV

Este es el ejemplo más importante del módulo, porque prepara el problema central del curso. Campaña → tráfico → registro → cuenta creada → activación → suscriptor → (cancelación) → LTV. Los nodos son estados del cliente; las aristas son las tasas de conversión entre ellos.

🆕 ¿Nuevo aquí? Las tres siglas

  • CAC (costo de adquisición de clientes): cuánto gastas, en promedio, para conseguir un cliente nuevo.
  • Abandono: la tasa de personas que cancelan. Un churn alto = un balde con fugas.
  • LTV (valor en el tiempo de vida): cuánto dinero te da un cliente en total antes de irse. Si el LTV no es mucho mayor que el CAC, el negocio pierde dinero con cada venta.
2% 30% 45% 12% campaña tráfico registro activación suscriptor LTV churn bajar el costo de la campaña atrae leads más fríos → aumenta el churn

Qué observar: la línea roja punteada de abajo. Un agente que trabaja en loop con el objetivo de “bajar el costo de adquisición” solo verá la primera arista y va a acertar su misión. Pero no ve la línea punteada: un lead más barato suele ser un lead más frío; el churn aumenta, el LTV cae y el negocio empeora mientras la métrica mejora. Este es el motivo técnico de que una sola métrica nunca sea suficiente.

Diagrama del embudo de crecimiento como grafo, en estilo de pizarra: el presupuesto alimenta la campaña, la campaña genera tráfico (alcance/impresiones), el tráfico lleva a la landing page, la landing al signup, el signup a la activación, la activación a la retención, y la retención al LTV (ingresos por usuario) y también al churn (abandono, 1 menos la retención). Churn y LTV apuntan de vuelta al CAC y a la campaña. Una línea punteada conecta LTV con CAC y muestra que la razón LTV sobre CAC saludable es mayor que 3. En rojo, un loop marcado optimizar CAC (bajar el costo o subir la calidad de la campaña) y la nota una mejor campaña genera mejor tráfico, menor churn y mayor LTV. En la esquina, la nota: un loop simple optimiza 1 métrica; el grafo muestra el impacto en el sistema.
Qué observar: las flechas rojas, que cierran un ciclo. El embudo por sí solo sería un DAG (solo hacia adelante). Pero el CAC vuelve a la campaña y el churn vuelve al comienzo — y ese regreso es lo que hace que el sistema tenga un comportamiento propio. Un agente en bucle apunta a una casilla; el grafo muestra que reducir el CAC mueve también el churn, la retención y el LTV. Fíjate también en la etiqueta discontinua LTV/CAC > 3: es una restricción entre dos métricas, algo que una sola métrica ni siquiera puede expresar.

Conceptos clave

Estado del cliente

Cada etapa es un nodo

Conversión = peso

El % de la arista

Efecto secundario

Arista que el ciclo no ve

Multimétrica

Una sola siempre engaña

4

🎫 Asigna tareas en paralelo: el grafo del backlog

Todo equipo grande acaba con un proceso: primero una epic (el objetivo grande), dentro de ella historias (las historias de uso), dentro de ellas tareas, y a veces subtareas. Eso parece un árbol. No lo es: casi siempre una story depende de otra, y entonces el árbol se convierte en un grafo.

Y por eso al gerente de producto le gusta este diseño: el grafo responde la pregunta que hace todos los días: ¿cuántas personas pueden trabajar aquí al mismo tiempo? Si dos ramas no se bloquean entre sí, caben dos. Cuando termine una tarea, se libera otra. Si dos subtareas van en secuencia, no sirve de nada asignarlas a dos personas.

epic historia A historia B task A1 task A2 task B1 subtask B1.1 depende de libre ahora

Qué observar: la línea roja punteada. Sin ella, esto es un árbol bonito y dirías “caben 3 personas”. Con ella, la tarea B1 solo puede empezar después de A2, así que en realidad solo avanzan dos frentes ahora. Esa única arista cruzada marca la diferencia entre un plan que funciona y un equipo detenido esperando.

Diagrama de un proyecto de software, en estilo de pizarra: un EPIC en la parte superior se descompone en Historia A e Historia B; Historia A tiene la Tarea 1 y la Tarea 2, y la Tarea 1 tiene dos subtareas; Historia B tiene la Tarea 3 y la Tarea 4, y la Tarea 4 tiene una subtarea. Una flecha roja va de la Tarea 2 a la Tarea 3 con la etiqueta depende, y una flecha azul va de la Tarea 3 a la Tarea 1 con la etiqueta bloquea. La leyenda distingue tres tipos de aristas: descomposición en blanco, depende (debe terminar antes) en rojo y bloquea (impide el inicio) en azul.
Qué observar: la leyenda, en la esquina inferior derecha. Son tres tipos de aristas diferentes en el mismo diseño — y esa es la distinción que separa un organigrama bonito de un grafo útil. Las líneas blancas (descomposición) forman el árbol; la roja e a azul son las que rompen el árbol y se convierten en grafo. Cuenta las tareas que pueden avanzar ahora: la Tarea 3 bloquea la Tarea 1, así que la mitad izquierda que parecía libre… no lo está.

✓ Divide la tarea para desbloquearla

  • ✓Haz la pantalla con datos falsos mientras la base de datos no exista
  • ✓Primero acuerden el contrato (el formato de los datos) y luego cada lado sigue con lo suyo
  • ✓Separar “lo que decide” de “lo que ejecuta”

✗ Falso paralelismo

  • ✗Poner a 5 personas (o 5 agentes) en una rama que solo libera 1 a la vez
  • ✗Llamar «subtareas independientes» a dos cosas que modifican el mismo archivo
  • ✗Ignorar la dependencia porque está en otra epic

Conceptos clave

Dependencia

Arista que bloquea

Anchura

Cuántos caben ahora

Desbloqueo

Dividir para liberar trabajo

También aplica a los agentes

Misma cuenta, otra flota

5

📚 Conecta la documentación que lee el agente

La forma más común de dar contexto a un agente hoy es dejarle una carpeta llena de archivos .md y esperar. El agente lo lee todo, consume contexto y además mezcla información vieja con nueva. La alternativa es transformar esta carpeta en un grafo: cada documento se convierte en un nodo y tú declaras cómo un documento se relaciona con el otro.

🧪 Ejemplo práctico: convierte tu carpeta de docs en un grafo

Objetivo: pasar de “un montón de archivos .md sueltos” a un mapa que el agente pueda recorrer. Pega este prompt en Claude Code (o en cualquier agente con acceso a tus archivos), dentro de la carpeta del proyecto.

Leia todos os arquivos .md em <./docs> e me devolva um grafo de conhecimento em JSON.

Regras:
- Cada arquivo e um no: { "id", "arquivo", "assunto_em_1_frase", "publico" }
- Cada aresta e uma relacao TIPADA entre dois nos. Use SO estes tipos:
  "pre_requisito_de" | "detalha" | "contradiz" | "substitui" | "exemplo_de"
- Se dois documentos se contradizem, crie a aresta "contradiz" e explique
  em uma frase QUAL afirmacao conflita.
- Se um documento nao se liga a nenhum outro, liste-o em "orfaos".

Formato de saida (so o JSON, sem texto em volta):
{ "nos": [...], "arestas": [{"de","para","tipo","porque"}], "orfaos": [...] }

Cómo verificar: tres señales de que salió bien — (1) el JSON es válido; (2) existe al menos una arista contradiz o la lista de orfaos no está vacía (la documentación real siempre tiene basura); (3) miras el campo porque de 3 aristas y estar de acuerdo con ellas. Si todas las aristas son «detalla», el agente fue perezoso: pídeselo de nuevo y exige variedad de tipos.

Cambia: <./docs> por tu carpeta.

⚠️ No lo confundas con “graph engineering”

Lo que acabas de hacer es un grafo de conocimiento: un grafo de información que consulta el agente. Graph engineering (Trilha 4) es un grafo de ejecución: quién se ejecuta, en qué orden y con qué herramientas. Son cosas distintas y el mercado las mezcla todo el tiempo. La Ruta 3 tiene una tabla dedicada a aclarar esta confusión.

Conceptos clave

Documento = nodo

Cada archivo, un nodo

Relación tipada

No todas las conexiones son iguales

Navegar > leer todo

Menos contexto consumido

No es lo mismo

Conocimiento ≠ ejecución

6

🧱 Copia del build: el grafo de dependencias

Este es el grafo más parecido al que construirás en la Trilha 4 — y la buena noticia es que ya existe y funciona desde hace décadas. Cuando ejecutas npm install, make o un pipeline de CI, una herramienta arma un grafo dirigido de dependencias y decide por sí sola qué se ejecuta primero, qué va después y qué puede ejecutarse al mismo tiempo.

🎯 Todo lo que el build ya resolvió, tu grafo de agentes tendrá que resolver

  • •Orden: nadie se ejecuta antes que aquello de lo que depende (orden topológico)
  • •Paralelismo: las ramas independientes avanzan juntas
  • •Caché: si nada cambió en ese nodo, no lo rehagas
  • •Detección de ciclos: dependencia circular = error explícito, no bloqueo silencioso
  • •Reanudación: ¿falló a mitad de camino? vuelve a ejecutar solo lo que faltó

Ninguna de estas ideas es nueva ni exclusiva de la IA. Por eso mucha gente del mundo de la orquestación reaccionó al hype de “graph engineering” encogiéndose de hombros: la Trilha 3 cuenta esa historia con honestidad.

Verificación rápida: en el embudo campaña → ... → LTV, un agente que solo mira el costo de adquisición puede perjudicar el negocio. ¿Por qué, en términos de grafo?

Conceptos clave

DAG de compilación

El ancestro del work graph

Caché por nodo

No rehacer lo que no cambió

Ciclo = error

Detectado, no sufrido

Reanudación

Vuelve a ejecutar solo lo que faltó

📌 Resumen del módulo

✓
Modelar es elegir — qué es un nodo, qué es un peso, según la pregunta que quieres responder.
✓
El grado de separación es la distancia en aristas — y las aristas pueden tener un tipo, no solo un peso.
✓
Una métrica nunca es suficiente — optimizar una arista afecta a las demás; el grafo te permite verlo.
✓
El paralelismo es una propiedad del grafo — la dependencia cruzada que decide cuántos frentes avanzan.
✓
Grafo de conocimiento ≠ ingeniería de grafos — información que el agente lee vs. ejecución que el agente sigue.
✓
El build ya hizo esto — orden, paralelismo, caché, detección de ciclos y reanudación.

Próximo módulo:

1.3 — Cómo se recorre un grafo: recorrido, camino más corto, orden topológico y detección de ciclos.