Skip to content

Commit 94fbb54

Browse files
authored
Add files via upload
1 parent 318b3f4 commit 94fbb54

1 file changed

Lines changed: 102 additions & 23 deletions

File tree

README.md

Lines changed: 102 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -174,62 +174,141 @@ Lq = λ · Wq
174174

175175
Calculado en vivo en el panel derecho. Los IC al 95% se estiman con 30 réplicas independientes.
176176

177-
### 4. Cadena de Markov discreta — Sem A
177+
### 4. Programación Lineal — asignación óptima de verdes (Solver QM)
178178

179-
Estado del semáforo modelado como cadena de Markov de tiempo discreto (dt = 1s):
179+
Para formalizar la decisión de tiempos semafóricos se plantea un modelo de **Programación Lineal (PL)** para el escenario pico.
180180

181-
**Modo convencional** (ciclo 122s: verde 18s · amarillo 4s · rojo 100s):
181+
**Variables de decisión**
182+
183+
- `gH`: segundos de verde para la fase horizontal `(A + C + D)` por ciclo.
184+
- `gV`: segundos de verde para la fase vertical `(B)` por ciclo.
185+
- `uH`: déficit de capacidad horizontal (veh/ciclo).
186+
- `uV`: déficit de capacidad vertical (veh/ciclo).
187+
188+
**Parámetros del caso pico**
189+
190+
- `λ_A = 0.25 veh/s`, `λ_B = 0.08 veh/s`.
191+
- Demanda horizontal agregada: `λ_H = 1.05·λ_A = 0.2625 veh/s`.
192+
- Demanda vertical: `λ_V = λ_B = 0.08 veh/s`.
193+
- Ciclo objetivo inteligente: `C = 66 s`.
194+
- Amarillos fijos: `4 s + 4 s` → tiempo verde total disponible: `gH + gV = 58`.
195+
- Capacidades de descarga calibradas en simulación:
196+
`sH = 0.50 veh/s`, `sV = 0.42 veh/s`.
197+
- Demanda por ciclo: `dH = λ_H·C = 17.33 veh/ciclo`, `dV = λ_V·C = 5.28 veh/ciclo`.
198+
199+
**Función objetivo**
200+
201+
```
202+
Max Z = 0.50·gH + 0.42·gV − 8·uH − 5·uV
203+
```
204+
205+
**Restricciones**
182206

183207
```
184-
┌─────────────────────────────────┐
185-
│ → VERDE → AMARILLO → ROJO → │
186-
│ │
187-
P_conv: │ R→R: 0.990 R→Y: 0.010 │
188-
│ Y→Y: 0.750 Y→G: 0.250 │
189-
│ G→G: 0.944 G→Y: 0.056 │
190-
└─────────────────────────────────┘
191-
192-
Distribución estacionaria: π(G)=0.148 π(Y)=0.033 π(R)=0.820
208+
gH + gV = 58
209+
15 <= gH <= 41
210+
12 <= gV <= 41
211+
0.50·gH + uH >= 17.33
212+
0.42·gV + uV >= 5.28
213+
gH, gV, uH, uV >= 0
193214
```
194215

195-
**Modo inteligente** (ciclo ~66s: verde 30s · amarillo 4s · rojo 32s promedio):
216+
**Resolución en Solver QM (método Simplex)**
217+
218+
- Módulo: `Linear Programming``Maximize`.
219+
- Resultado óptimo: `gH* = 41 s`, `gV* = 17 s`, `uH* = 0`, `uV* = 0`.
220+
- Valor óptimo: `Z* = 27.64`.
221+
- Interpretación: el plan base recomendado para hora pico asigna `70.7%` del verde efectivo al eje horizontal y `29.3%` al vertical, sin déficit de capacidad.
222+
223+
### 5. Cadena de Markov discreta — Sem A
224+
225+
El estado del semáforo se modela como cadena de Markov de tiempo discreto (`dt = 1 s`) con orden de estados:
226+
227+
`[G, Y, R] = [Verde, Amarillo, Rojo]`
228+
229+
La evolución del estado se calcula con:
230+
231+
`p_{t+1} = p_t·P` y `p_t = p_0·P^t`
196232

233+
**Matriz de transición — modo convencional**
234+
(ciclo 122 s: 18 verde, 4 amarillo, 100 rojo)
235+
236+
```
237+
P_conv =
238+
[0.944 0.056 0.000
239+
0.000 0.750 0.250
240+
0.010 0.000 0.990]
197241
```
198-
P_intel: R→R: 0.969 R→Y: 0.031
199-
Y→Y: 0.750 Y→G: 0.250
200-
G→G: 0.967 G→Y: 0.033
201242

202-
Distribución estacionaria: π(G)≈0.455 π(R)≈0.485
243+
**Matriz de transición — modo inteligente**
244+
(ciclo ~66 s: 30 verde, 4 amarillo, 32 rojo promedio)
245+
246+
```
247+
P_int =
248+
[0.967 0.033 0.000
249+
0.000 0.750 0.250
250+
0.031 0.000 0.969]
203251
```
204252

205-
El panel lateral muestra la matriz empírica P en tiempo real, la distribución π observada vs teórica, la métrica de convergencia (1 − TVD), y la predicción del próximo estado.
253+
**Cálculos numéricos (iniciando en rojo `p0 = [0, 0, 1]`)**
254+
255+
| Tiempo | `p_t` convencional `[G,Y,R]` | `p_t` inteligente `[G,Y,R]` |
256+
|---|---|---|
257+
| `t = 10 s` | `[0.0746, 0.0113, 0.9141]` | `[0.2324, 0.0207, 0.7469]` |
258+
| `t = 60 s` | `[0.1445, 0.0322, 0.8233]` | `[0.4492, 0.0590, 0.4918]` |
259+
| `t → ∞` (π) | `[0.1465, 0.0328, 0.8206]` | `[0.4553, 0.0601, 0.4846]` |
260+
261+
**Aplicación directa al problema**
262+
263+
- La fracción estacionaria en rojo baja de `0.8206` a `0.4846` (reducción de `40.9%`).
264+
- La probabilidad estacionaria de verde sube de `0.1465` a `0.4553` (más de `3x`).
265+
- Estas probabilidades alimentan el panel de predicción de estado, la estimación de espera y la validación del control adaptativo contra la operación convencional.
266+
267+
El panel lateral muestra la matriz empírica `P` en tiempo real, la distribución `π` observada vs teórica, la métrica de convergencia `(1 − TVD)`, y la predicción del próximo estado.
206268

207269
---
208270

209271
## Metodología del proyecto
210272

211-
El proyecto siguió 4 fases definidas en la presentación académica:
273+
El proyecto siguió 5 fases integradas para la toma de decisiones:
212274

213275
**FASE 1 — Levantamiento de datos de campo**
214276
- Medición directa de ciclos semafóricos en la intersección
215277
- Conteo vehicular por franjas horarias: **7–9 AM · 12–2 PM · 5–7 PM**
216278
- Registro de patrones críticos: colas de hasta 80–140 m en hora pico
217279

218-
**FASE 2 — Diseño del modelo M/G/1**
280+
**FASE 2 — Modelado base de desempeño (M/G/1)**
219281
- Sistema de colas M/G/1 con tasa λ (Poisson) y μ (General)
220282
- Ecuaciones de Pollaczek-Khinchine para Wq, Lq
221283
- Variables continuas (tiempo) y discretas (estados semafóricos)
222284

223-
**FASE 3 — Implementación**
285+
**FASE 3 — Optimización por Programación Lineal (Solver QM)**
286+
- Definición explícita de variables de decisión (`gH`, `gV`) y restricciones operativas
287+
- Maximización del flujo servido con penalización de déficit
288+
- Obtención de plan base óptimo por escenario (ej. pico: `41s/17s`)
289+
290+
**FASE 4 — Modelado dinámico con Markov**
291+
- Construcción de matrices de transición `P_conv` y `P_int`
292+
- Cálculo de probabilidades de estado a `t` pasos y distribución estacionaria `π`
293+
- Estimación probabilística de tiempo en rojo/verde para alimentar la política de control
294+
295+
**FASE 5 — Implementación y validación en simulación**
224296
- Arquitectura Source → Queue → Processor → Sink
225297
- Distribución exponencial para llegadas (proceso de Poisson)
226298
- Configuración de tiempos adaptativos según densidad de cola
227299

228-
**FASE 4 — Validación y análisis**
229300
- 30 réplicas independientes con IC al 95%
230-
- Validación cruzada con teoría M/G/1
301+
- Validación cruzada con teoría M/G/1 + resultados de PL + predicción Markov
231302
- Análisis de sensibilidad por escenario (valle, mañana, mediodía, pico)
232303

304+
### Integración PL + Markov + Simulación para decidir
305+
306+
1. **Programación Lineal (PL):** define el plan óptimo base de tiempos verdes por ciclo bajo restricciones reales.
307+
2. **Markov:** traduce ese plan en probabilidades de transición de estados semafóricos y anticipa permanencia en rojo/verde.
308+
3. **Simulación de eventos discretos:** prueba el plan y las transiciones bajo variabilidad vehicular real (Poisson + IDM + colas), midiendo KPIs.
309+
310+
Ciclo de decisión aplicado: `optimizar (PL) → predecir (Markov) → validar/ajustar (Simulación)`.
311+
233312
---
234313

235314
## Arquitectura del sistema propuesto

0 commit comments

Comments
 (0)