ISSN: 1139-8736
Depósito Legal: B-8714-2001

5.3.1 Espacio de Búsqueda Estático (Algoritmo de Un Paso Básico)

Para entender el funcionamiento del Módulo Acústico vamos a describir las estructuras de datos más importantes utilizadas por el mismo así como el pseudocódigo del algoritmo implementado, con las variables implicadas en cada paso del proceso, indicando la interacción entre el Módulo Gramatical, el Módulo Léxico y el Módulo Acústico.

ALGORITMO DE “UN PASO” BÁSICO
ESPACIO ESTÁTICO

*** Inicialmente ***

LeerAutómata () - Módulo Gramatical (*.INV, *.CAT, *.EST, *.PRI)
LeerModelosHMM () - Módulo Acústico (DHMM o SCHMM, *.FON)
LeerDiccionarioCategorizado () - Módulo Léxico (*.TER, *.TRP, *.FON)

*** Procesos en el Módulo Acústico ***

Bucle de Tramas (t = 1, ..., t = T)
{
   Si t = 1 (Primera Trama)
      GenerarEspacioEstados ()
         :: SolicitarSPNodos (Del M. Acústico al M. Gramatical)
         :: IncorporarSPNodos
            - Rellenar ListaSuperNodosActivos[]
            - Inicializar
               PRED[SPNodo, t] = INF
               WW[SPNodo, t] = -1
               BRED[SPNodo, t] = -1
               SS[SPNodo, t] = -1

         :: SolicitarNodos (Del M. Acústico al M. Léxico)
          :: IncorporarNodos
            - Rellenar ListaNodosActivos[]
            - Inicializar
               DELTA0[est, Nodo] = INF
              ALFA0[est, Nodo] = -1
              SIGMA0[est, Nodo] = -1

      ProcesarListas ()
         :: ProcesarSPNodosIniciales
            - Calcular
              
               ALFA0[0, Nodo] = 0
               SIGMA0[0, Nodo] = SPNodoINICIAL

Si t > 1 (Resto Tramas)
   {

      ProcesarListas ()
         
:: RecorrerSPNodos
            :: RecorrerNodos
               :: SolicitarSPNAnterioresActivos (Del M. Acústico al M.Gramatical)
                  - Obtener (considerando los SILENCIOS acústicos)
                      SPNodoAnt*
            
:: ProcesarEstadosNodo
                :: ProcesarEstado0 (Ecuaciones (1),(2),(3))

                   (1)
                   (2)
                 (3)

                :: ProcesarRestoEstados (Ecuaciones (4),(5),(6))

                   (4)
                   (5)
                    (6)

      CalcularReducciones ()
         
:: RecorrerSPNodos
            :: RecorrerNodos
               - Calcular Variables Reducidas (Ecuaciones (7), (8), (9), (10))

                  PRED[SPNodo, t] = DELTA1[UltEstNodo*, Nodo*] (7)
                  WW[SPNodo, t] = ListaNodosActivos[Nodo*].Palabra (8)
                  BRED[SPNodo, t] = ALFA1[UltEstNodo*, Nodo*] (9)
                  SS[SPNodo, t] = SIGMA1[UltEstNodo*, Nodo*] (10)

      PrepararDatos ()
         
:: RecorrerSPNodos
            :: RecorrerNodos
               - Copiar (Ecuaciones (11),(12),(13))

                  DELTA0[est, Nodo] = DELTA1[est, Nodo] (11)
                  ALFA0[est, Nodo] = ALFA1[est, Nodo] (12)
                  SIGMA0[est, Nodo] = SIGMA1[est, Nodo] (13)

   }

*** Obtención del Resultado ***

   Si t = T (Últ. Trama)
       BackTracking ()
         
:: Recuperar la Secuencia de Palabras utilizando PRED[], WW[], BRED[], SS[].

}

Anterior   I  Siguiente   I  Índice capítulo 5   I  Índice General


ISSN: 1139-8736
Depósito Legal: B-8714-2001