11 - Tarea 4

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 15

AUTOMATAS Y LENGUAJES FORMALES

TAREA 4 – Construcción de Máquinas de Turing

ESTUDIANTE

VICTOR ALDRIN MENA

EDWARD VICENTE RINCON

URIEL ANDRES

ANDRES FELIPE ACEVEDO

JOSE LUIS RODRIGUEZ GALEANO

TUTOR (A)

JAIME JOSE VALDES

UNIVERSIDAD ABIERTA Y A DISTANCIA.


PERIODO ACADÉMICO
2021
DESARROLLO DE LA GUIA

EJERCICIO GRUPAL 1

Creación de Máquina de Turing Reconocedora

EJERCICIO A
TRABAJAR

Caracterización
de la máquina
Mediante la definición formal explicar las características de la
de turing
máquina de Turing, mediante la séptupla

MT = (Q, ∑, Г, δ, q0, B, F)
donde:
Q: conjunto finitos Q = {q0, q1, q2,q3}
de estados de
control.
∑: conjunto finito ∑ = {a}, donde B∉∑
de símbolos de
entrada (Alfabeto),
distinto del
espacio blanco.
Г: conjunto finito Г = {1}, donde B∊∑
de símbolos de la y
cinta. ∑⊆ Г
δ: función de (Q * Γ) -> (Q * Γ *
transición δ(q,X) L, R )
=(p,Y,D)
• q es un estado
• X es un
símbolo de la
cinta
• P es un
nuevo estado
en Q:
• Y es un
símbolo en Г
que substituir
en X:
• D es decir R y
L (R: derecha,
L: izquierda),
que es la
dirección en
que se mueve
el
cabezal.
q0 ε Q: estado inicial q0 ε Q = {q0}
B ε Г: símbolo ⎕
blanco (este símbolo
no hace parte de ∑),
aparece en todas
las casilla, excepto
en aquellas
que contienen
símbolos de
entrada.
F ⊆ Q: conjunto de F ⊆ Q = {q3}
estados de
aceptación o
finales

Realizar la tabla de transición


Función de Transición
δ (q0, a) = (q0, 1, R)
δ (q0, ⎕) = (q1, ⎕, L)
δ (q1, a) = (q1, a, L)
δ (q1, 1) = (q2, a, R)
δ (q2, a) = (q2, a, R)
δ (q2, ⎕) = (q1, a, L)
δ (q1, ⎕) = (q3, ⎕, R)

Realizar un cuadro donde explique las diferencias y similitudes


de las máquinas reconocedoras y transductoras cada una con su
respectivo ejemplo

Máquinas reconocedoras Maquinas transductoras

Son aquellas en donde la Son las más generales.


salida es binaria (sí-no), Convierten una secuencia de
depende únicamente del señales de entrada en una
estado y existe un estado secuencia de salida, pudiendo
inicial. Puede decirse, esta ser binaria o más
entonces, que cuando la compleja, según la entrada
máquina produce una salida actual (no solo del estado) y
positiva (es decir, un si) es pudiendo también prescindirse
porque ha reconocido o de un estado inicial.
aceptado la secuencia de
entrada. En las máquinas de
estados aceptoras, los estados Ejemplo:
con salida positiva se
denominan estados finales.

Ejemplo: • MT que sustituye los


dígitospor cero.
• MT que añade un bit
• Sea el lenguaje 𝐿 = deparidad a la entrada.
𝑛 𝑛 MT que duplica el
{𝑎 𝑏 |𝑛 ≥ 1}. Es decir, L •

tiene infinitas cadenas de la número de 1s que hay en


la cinta.
forma ab, aabb, aaabbb, … Se
va a construir una MT M que
acepta L, o en otras palabras,
tal que L(M) = L. En este caso,
el lenguaje L representa
directamente un

problema de reconocimiento
de las cadenas de un lenguaje.

Procedimiento Paso 1:
de paso a paso
Inicia la maquina
del recorrido de
una cadena

Paso 2:

Cadena a validar: aaaaaaaaaa

Estado inicial (q0)

Lee una (a)

Se reemplaza por un (1)

Se queda en (q0)
Se va por toda la cadena cambiando la (a) por (1) hasta llegar a la
vacía e ir al (q1)

Paso 3:

En (q1) se lee con un (1)

Indica que se reemplace por una (a)

Se mueve por la cinta

Se mueve a (q2)

Paso 4:

En q2 se lee un espacio en blanco

Indica que se reemplace por una (a)

Se va a q1

Se mueve por la cinta


Paso 5:

En q1 se lee una (a)

Indica que se reemplace por una (a)

Se queda en q1

Se mueve por la cinta

Paso 6:

En q1 se lee un (1)

Indica que se reemplace por una (a)

Se va a q2

Se mueve por la cinta

Paso 7:
En q2 se lee una (a)

Indica que se reemplace por una (a)

Se queda en q2

Se mueve por la cinta

Se repite el proceso hasta encontrar un espacio en blanco

Paso 8:

En q2 se lee un espacio en blanco

Indica que se reemplace por una (a)

Se va a q1

Se mueve por la cinta

Paso 9:

Sigue un bucle entre q1 y q2 el cual hace que se agreguen "a" en


la cadena vacía a la derecha de la cinta, y se reemplacen los "1"
por "a" en la parte izquierda de la cinta, sucede hasta reemplazar
todos los "1" por "a", y haber agregado a la derecha de la cinta, la
misma cantidad de "a" que la cadena inicial a validar. Entonces se
encarga de duplicar la cadena inicial.
Paso 10:

En q1 el cabezal queda a la izquierda de la cinta en el espacio en


blanco, por ende, el cabezal lee espacio en blanco y coloca otro
espacio en blanco.

Se mueve por la cinta hacia la derecha quedando en la primera (a)

Y se mueve a q3

Paso 11:

Se valida la cadena y queda aceptada

Practicar y
verificar lo
aprendido
EJERCICIO GRUPAL 2

Código Convolucional

Desarrolle el siguiente ejercicio: Asuma que hubo error en el dato recibido en


el par de bits codificados 2, 5 y 8 con distancia de haming.

Teniendo en cuenta que el dato de entrada es: 00100001


El código convolucional especificado por tres parámetros (n, k, m)

n es el número de bits de la palabra codificada (salida)


k es el número de bits de la palabra de datos (entrada)  k=1
m memoria del código o longitud restringida  m=3

Los cuatro estados posibles son: 00 10 11 01

1. Realice el diagrama de árbol. (Complete la tabla)

00100001

0 0 1

101000101

111000111
8 7 6 5 4 3 2 1

DATOS 0 0 1 0 0 0 0 1

ESTADO PRESENTE 00 01 10 00 00 00 01 10

CODIFICADO 11 01 11 00 00 11 01 11

RECIBIDO 10 01 11 01 00 11 00 11

2. Realice el diagrama de estados para ese dato de entrada.

El árbol se va por abajo porque nuestro primer dato de entrada fue 1

Codificados 0

Estados 1

11

10 01

01 11 00 01

00 00 00 11 01 11

00 10 00
3. Identifique en el diagrama de Trellis la ruta correcta (identificando salidas codificadas)

Trellis: Una manera de representar las distintas transiciones y los caminos que éstas
describen es mediante un diagrama de Trellis. Una descripción de Trellis de un codificador
convolucional muestra como cada posible entrada al codificador influye en ambas salidas
y a la transición de estado del codificador.

El dato de entrada es: 00100001 0

11 01 11 00 00 11 01 11

00 00 11
00

01
01
11 01

10

11
11 11
4. Realice el diagrama de Viterbi corrigiendo el dato (ruta correcta).

La codificación convolucional se decodifica con ayuda del algoritmo de Viterbi. El proceso


consiste en quitar algunos de todos los caminos posibles. Lo que se consigue aplicando
este método es reducir el número de cálculos (se busca una ruta adecuada). Según el
algoritmo de Viterbi, para reducir el número de cálculos, cada vez que dos trayectos
(también llamados ramas) se junten en un estado del Diagrama de Trellis, el de mayor
métrica acumulada se desecha en la búsqueda del trayecto óptimo. Esto se debe a que el
estado actual resume la historia de todos los estados anteriores en cuanto a su influencia en
los estados posteriores.

Realmente, esta eliminación de posibles caminos no comienza hasta el tercer nivel de


representación. Esto se debe a que hasta ese instante no han podido converger dos ramas
en un estado ya que por cada k bits de palabra de datos (k=1 en el ejemplo) surgen 2k
estados. Es decir, del primer estado (el 01 por definición) tendremos dos estados en el
siguiente nivel de representación, y por cada uno de estos, otros dos en el posterior nivel.
Por tanto, será en el tercer nivel cuando empecemos a tomar decisiones porque ahora si
convergerán dos ramas en cada estado.

El dato de entrada es: 00100001 0

01 00 11

11 00 11 00 01 11 01 10

00
00

0 01
01
01

10

2
11
11 11 11
REFERENCIAS BIBLIOGRÁFICAS

Carrasco, R. C., Calera Rubio, J., & Forcada Zubizarreta, M. L. (2000). Teoría de lenguajes,
gramáticas y autómatas para informáticos. Digitalia. (pp. 127 - 142). Recuperado de
https://bibliotecavirtual.unad.edu.co/login?url=https://search-ebscohost-
com.bibliotecavirtual.unad.edu.co/login.aspx?direct=true&db=nlebk&AN=318032&lang=es&sit
e=ehost-live&ebv=EB&ppid=pp_Cover

Jurado Málaga, E. (2008). Teoría de autómatas y lenguajes formales. Universidad de Extremadura.


Servicio de Publicaciones. (pp. 39 - 70). Recuperado de
https://bibliotecavirtual.unad.edu.co/login?url=http://search.ebscohost.com/login.aspx?direct=tru
e&db=edsbas&AN=edsbas.62161440&lang=es&site=eds-live&scope=site

González, A. [Ángela]. (2017, noviembre 5). Autómatas Finitos. [Archivo de video]. Recuperado
de http://hdl.handle.net/10596/10470

Carrasco, R. C., Calera Rubio, J., & Forcada Zubizarreta, M. L. (2000). Teoría de lenguajes,
gramáticas y autómatas para informáticos. Digitalia. (pp. 119 - 127). Recuperado de
https://bibliotecavirtual.unad.edu.co/login?url=https://search-ebscohost-
com.bibliotecavirtual.unad.edu.co/login.aspx?direct=true&db=nlebk&AN=318032&lang=es&sit
e=ehost-live&ebv=EB&ppid=pp_Cover

Alfonseca Cubero, E. (2007). Teoría de autómatas y lenguajes formales. Madrid etc., Spain:
McGraw-Hill España. (pp. 117 - 150). Recuperado de https://elibro-
net.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50119

González, A. [Ángela]. (2018, junio 1). Lenguajes Independientes del Contexto. [Archivo web].
Recuperado de http://hdl.handle.net/10596/18317

Algoritmo de viterbi. (2013, 9 diciembre). [Vídeo]. YouTube.


https://www.youtube.com/watch?v=8W9iziEQroE

También podría gustarte