Professional Documents
Culture Documents
CURSO: TELECOMUNICACIONES II
ALUMNO:
SOLUCIONARIO DE LA PRIMERA PRÁCTICA CALIFICADA
1. PROBLEMA 1: Técnicas de comprensión de datos:
Huffman:
El algoritmo consiste en la creación de un árbol binario que tiene cada uno de los símbolos
por hoja, y construido de tal forma que siguiéndolo desde la raíz a cada una de sus hojas
se obtiene el código Huffman asociado a él.
1. Se crean varios árboles, uno por cada uno de los símbolos del alfabeto, consistiendo
cada uno de los árboles en un nodo sin hijos, y etiquetado cada uno con su símbolo
asociado y su frecuencia de aparición.
2. Se toman los dos árboles de menor frecuencia, y se unen creando un nuevo árbol.
La etiqueta de la raíz será la suma de las frecuencias de las raíces de los dos
árboles que se unen, y cada uno de estos árboles será un hijo del nuevo árbol.
También se etiquetan las dos ramas del nuevo árbol: con un 0 la de la izquierda, y
con un 1 la de la derecha.
3. Se repite el paso 2 hasta que sólo quede un árbol.
Con este árbol se puede conocer el código asociado a un símbolo, así como obtener el
símbolo asociado a un determinado código.
Para obtener el código asociado a un símbolo se debe proceder del siguiente modo:
1
Lempel-ziv (LZ)
LZW (Lempel-Ziv-Welch) es un algoritmo de compresión sin pérdida desarrollado
por Terry Welch en 1984 como una versión mejorada del algoritmo LZ78 desarrollado
por Abraham Lempel y Jacob Ziv.
La mayoría de los métodos de compresión se basan en un análisis inicial del texto para
identificar cadenas repetidas para armar un diccionario de equivalencias, asignando
códigos breves a estas cadenas. En una segunda etapa, se convierte el texto utilizando los
códigos equivalentes para las cadenas repetidas. Esto requiere dos etapas, una de análisis
y una segunda de conversión y también requiere que el diccionario se encuentre junto con
el texto codificado, incrementando el tamaño del archivo de salida.
La clave del método LZW reside en que es posible crear sobre la marcha, de manera
automática y en una única pasada un diccionario de cadenas que se encuentren dentro del
texto a comprimir mientras al mismo tiempo se procede a su codificación. Dicho diccionario
no es transmitido con el texto comprimido, puesto que el descompresor puede reconstruirlo
usando la misma lógica con que lo hace el compresor y, si está codificado correctamente,
tendrá exactamente las mismas cadenas que el diccionario del compresor tenía.
Las entradas del diccionario pueden representar secuencias de caracteres simples o
secuencias de códigos de tal forma que un código puede representar dos caracteres o
puede representar secuencias de otros códigos previamente cargados que a su vez
representen, cada uno de ellos, otros códigos o caracteres simples, o sea que un código
puede representar desde uno a un número indeterminado de caracteres. En realidad, el
algoritmo no discrimina entre códigos y caracteres simples pues el diccionario se carga
inicialmente de códigos que representan los primeros 256 caracteres simples por lo que
estos no son más que otros códigos dentro del mismo diccionario.
Otra característica importante del algoritmo es que los códigos en la salida se representan
por cadenas de bits variables.
2
Formato de contenedores
Formato AVI
El formato avi permite almacenar simultáneamente un flujo de datos de video y varios flujos
de audio. El formato concreto de estos flujos no es objeto del formato AVI y es interpretado
por un programa externo denominado códec. Es decir, el audio y el video contenidos en el
AVI pueden estar en cualquier formato (AC3/DivX, o MP3/Xvid, entre otros). Por eso se le
considera un formato contenedor.
Para que todos los flujos puedan ser reproducidos simultáneamente, es necesario que se
almacenen de manera intercalada (interleave). De esta manera, cada fragmento de archivo
tiene suficiente información como para reproducir unos pocos fotogramas junto con el
sonido correspondiente.
Formato específicos:
Formato MJPEG
Motion JPEG (M-JPEG) es un nombre trivial para aquellos formatos multimedia donde
cada fotograma o campo entrelazado de una secuencia de video digital es comprimidapor
separado como una imagen JPEG. Es frecuentemente usado en dispositivos portátiles
tales como cámaras digitales.
El formato fue creado por CompuServe en 1987 para dotar de un formato de imagen
en color para sus áreas de descarga de archivos, sustituyendo su temprano
formato RLE en blanco y negro. GIF llegó a ser muy popular porque podía usar el algoritmo
3
de compresión LZW (Lempel Ziv Welch) para realizar la compresión de la imagen, que era
más eficiente que el algoritmo Run-length encoding (RLE)
GIF es un formato sin pérdida de calidad para imágenes con hasta 256 colores, limitados
por una paleta restringida a este número de colores. Por ese motivo, con imágenes con
más de 256 colores (profundidad de color superior a 8), la imagen debe adaptarse
reduciendo sus colores, produciendo la consecuente pérdida de calidad.
Formato JPEG
Joint Photographic Experts Group (JPEG), traducido al español como Grupo
Conjunto de Expertos en Fotografía, es el nombre de un comité de expertos que creó
un estándar de compresión y codificación de archivos e imágenes fijas.
4
El formato JPEG utiliza habitualmente un algoritmo de compresión con pérdida para
reducir el tamaño de los archivos de imágenes, esto significa que al descomprimir o
visualizar la imagen no se obtiene exactamente la misma imagen de la que se partía
antes de la compresión. Existen también tres variantes del estándar JPEG que
comprimen la imagen sin pérdida de datos: JPEG 2000, JPEG-LS y Lossless JPEG.
5
1.4 Técnicas de compresión de voz:
¿Qué es encriptación?
Es el proceso mediante el cual cierta información o texto sin formato es cifrado de forma
que el resultado sea ilegible a menos que se conozcan los datos necesarios para su
interpretación. Es una medida de seguridad utilizada para que al momento de almacenar o
transmitir información sensible ésta no pueda ser obtenida con facilidad por terceros.
Opcionalmente puede existir además un proceso de desencriptación a través del cual la
información puede ser interpretada de nuevo a su estado original, aunque existen métodos
de encriptación que no pueden ser revertidos. El término encriptación es traducción literal
del inglés y no existe en el idioma español. La forma más correcta de utilizar este término
sería cifrado.
6
Usos de la Encriptación
Métodos de Encriptación
Para poder Encriptar un dato, se pueden utilizar tres procesos matemáticos diferentes:
Los algoritmos HASH, los simétricos y los asimétricos.
1. Algoritmo HASH:
Este algoritmo efectúa un cálculo matemático sobre los datos que constituyen el
documento y da como resultado un número único llamado MAC. Un mismo documento
dará siempre un mismo MAC.
7
Actualmente existen dos métodos de cifrado para criptografía de clave secreta, el
cifrado de flujo y el cifrado en bloques.
Cifrado de flujo
El emisor A, con una clave secreta y un algoritmo determinístico (RKG), genera
una secuencia binaria (s) cuyos elementos se suman módulo 2 con los
correspondientes bits de texto claro m, dando lugar a los bits de texto cifrado c,
Esta secuencia (c) es la que se envía a través del canal. En recepción, B, con la
misma clave y el mismo algoritmo determinístico, genera la misma secuencia
cifrante (s), que se suma modulo 2 con la secuencia cifrada (c) , dando lugar a los
bits de texto claro m.
Los tamaños de las claves oscilan entre 120 y 250 bits
Cifrado en bloque
Los cifrados en bloque se componen de cuatro elementos:
- Transformación inicial por permutación.
- Una función criptográfica débil (no compleja) iterada r veces o "vueltas".
- Transformación final para que las operaciones de encriptación y desencriptación
sean simétricas.
- Uso de un algoritmo de expansión de claves que tiene como objeto convertir la
clave de usuario, normalmente de longitud limitada entre 32 y 256 bits, en un
conjunto de subclaves que puedan estar constituidas por varios cientos de bits en
total.
8
3.1 Algoritmos Asimétricos (RSA):
Requieren dos Claves, una Privada (única y personal, solo conocida por su dueño)
y la otra llamada Pública, ambas relacionadas por una fórmula matemática compleja
imposible de reproducir. El concepto de criptografía de clave pública fue introducido
por Whitfield Diffie y Martin Hellman a fin de solucionar la distribución de claves
secretas de los sistemas tradicionales, mediante un canal inseguro. El usuario,
ingresando su PIN genera la clave Publica y Privada necesarias. La clave Publica
podrá ser distribuida sin ningún inconveniente entre todos los interlocutores. La
Privada deberá ser celosamente guardada. Cuando se requiera verificar la
autenticidad de un documento enviado por una persona se utiliza la Clave Publica
porque el utilizó su Clave Privada.
Firma Digital
Origen:
El concepto de firma digital nació como una oferta tecnológica para acercar la operatoria
social usual de la firma ológrafa (manuscrita) al marco de lo que se ha dado en llamar el
ciberespacio o el trabajo en redes.
Concepto:
9
Ventajas Ofrecidas por la Firma Digital:
El uso de la firma digital satisface los siguientes aspectos de seguridad:
10
Ejemplos
Chroma subsampling o color subsampling
JPEG
En compresión de imagen Compresion fractal.
GIF
MPEG
H.264
En compresión de video Theora
Dirac
Sorenson
AAC
ADPCM
ATRAC
En compresión de audio AC3
MP3
Vorbis
11
Se fundamenta en conceptos de la Teoría de la Información, como
la Redundancia y Entropía de los datos (ver compresión de datos) y es generalmente
implementada usando uno o dos tipos de modelos diferentes: el estático y aquel basado
en diccionario.
Ejemplos
PNG
En compresión de imagen RLE (run-length encoding)
RAR
gzip
En compresión de archivo
bzip2
ARJ
FLAC
En compresión de audio
Monkey's
Audio
12
4. PROBLEMA 4: Analizar la inteligencia artificial y los algoritmos genéticos,
aplicaciones en la industria de electrónica y telecomunicaciones.
INTELIGENCIA ARTIFICIAL
AI puede ser categorizado en cualquier número de maneras, pero aquí hay dos ejemplos.
• Tipo 2: Memoria limitada. Estos sistemas de AI pueden usar experiencias pasadas para
informar decisiones futuras. Algunas de las funciones de toma de decisiones en vehículos
autónomos han sido diseñadas de esta manera. Las observaciones son utilizadas para
informar las acciones que ocurren en un futuro no tan lejano, como un coche que ha
cambiado de carril. Estas observaciones no se almacenan permanentemente.
13
• Tipo 3: Teoría de la mente. Este es un término psicológico. Se refiere a la comprensión
de que los demás tienen sus propias creencias, deseos e intenciones que afectan las
decisiones que toman. Este tipo de AI aún no existe.
En los últimos años, el 'malware' ha evolucionado tanto que se han dado casos como el de
'Blackshades', un virus a modo de franquicia del mal. Este sistema de Inteligencia Artificial,
diseñado por un hacker sueco, se instaló en lo más profundo de los sistemas operativos de
miles de ordenadores. El ciberdelincuente creó un programa que cualquiera se podía
descargar para gestionar el virus y conectarse a los micros y webcams de esos miles de
ordenadores.
14
La inteligencia artificial no sólo de pie para ayudar a difundir el uso de recursos renovables
que también lleva a cabo una profunda potencial de las energías tradicionales. Las
industrias de petróleo y gas natural también tienen sus ojos puestos en la IA.
APLICACIONES EN LA ELECTRONICA
La animatrónica junto con la inteligencia artificial es lo que da como resultado los androides,
como se suele conocer a los robots que imitan el comportamiento humano. Tenemos una
técnica capaz de dotar del aspecto y comportamiento de seres vivos a máquinas. Es decir,
humanizar' a los robots. Pero ya no sólo hablamos que los movimientos sean muy reales,
sino que además, parece real gracias a la piel sintética que han usado y al maquillaje.
Biométricas
Actualmente utilizado en casos donde resulta muy costoso o ineficiente que los humanos
ejecuten una determinada tarea o proceso.
Eso sí, recordemos que la inteligencia artificial no viene a reemplazar la capacidad humana,
sino a complementarla y a potencializar todo el talento que tienen las personas.
APLICACIONES EN TELECOMUNICACIONES
15
han encontrado un uso más generalizado para las aplicaciones de consumo, como por
ejemplo el asistente Siri de Apple. Ahora este tipo de servicios se están comercializando
rápidamente para una variedad de aplicaciones empresariales estándar.
Estas barreras también han afectado a las Comunicaciones Unificadas como Servicio
(UCaaS): Sólo las empresas muy grandes podrían justificar las implementaciones de una
nube privada por ello es que los proveedores de servicios implementaran su propia nube
privada para la prestación de servicios.
Ahora el impulso de la nube pública está aumentando tanto en las empresas como los
proveedores de servicios. Esto es impulsado principalmente por un cambio en la percepción
sobre la seguridad. Es cada vez más claro que la nube pública es de hecho superior: su
escala permite medidas de seguridad avanzadas y robustas, tanto computacionales como
físicas.
En los call centers, los dispositivos que disponen de IA son los responsables por el análisis
de las llamadas y por el direccionamiento inteligente de las demandas, inclusive en el
seguimiento relacionado a otras máquinas, fortaleciendo el concepto de Máquina a Máquina
(M2M, su siglas en ingles Machine to Machine), transmisión automática y medición de datos
de fuentes remotas realizado por medios como la radio y el cable.
16
Gestionar rutas dinámicamente: alterar la ruta y realizar la distribución inteligente de
llamadas entre servidores propios y tercerizados;
La inteligencia artificial abarca la capacidad programada en las máquinas para que puedan
desempeñar por sí mismas tareas que sólo eran realizadas por los humanos, esta
capacidad además de otorgarles un “pensamiento propio” también los dota de otras
cualidades para que ejecuten su asignación sin errores y en el menor tiempo posible.
Actualmente las telecomunicaciones se apoyan en los avances de la tecnología para
ofrecer novedades de interés y entretenimiento a los internautas
Las redes de datos se entienden como la infraestructura física que permite la transmisión
de información a través de, por ejemplo, fibra óptica.
17
congreso de comunicaciones ópticas conocido como OFC (Optical Fiber Conference),
realizado entre el 19 y el 23 de marzo en Los Ángeles, Estados Unidos.
ALGORITMO GENETICO
Los Algoritmos Genéticos (AGs) son métodos adaptativos que pueden usarse para resolver
problemas de búsqueda y optimización. Están basados en el proceso genético de los
organismos vivos. A lo largo de las generaciones, las poblaciones evolucionan en la
naturaleza de acorde con los principios de la selección natural y la supervivencia de los más
fuertes, postulados por Darwin (1859). Por imitación de este proceso, los Algoritmos
Genéticos son capaces de ir creando soluciones para problemas del mundo real. La
evolución de dichas soluciones hacia valores óptimos del problema depende en buena
medida de una adecuada codificación de las mismas.
Tanto las redes sociales como los algoritmos genéticos son herramientas que ya tienen
varias décadas, sin embargo actualmente siguen estando muy vigentes. Por un lado, las
redes sociales permiten analizar un conjunto de personas representando las relaciones
entre ellas. La prioridad del análisis de redes sociales está puesto en las relaciones de las
personas más que en las características específicas de cada individuo. Por otra parte, los
algoritmos genéticos consisten en una estrategia que, usando operadores análogos a los
de la selección natural, filtra y optimiza un conjunto de soluciones inicialmente aleatorio.
18
Este tipo de algoritmos de naturaleza heurística resulta de utilidad para problemas que
involucren un gran caudal de información y un gran conjunto de soluciones posibles.
Se dice que no poseen una buena escalabilidad con la complejidad, por ejemplo para
sistemas que están compuestos por muchas variables, componentes o elementos su
respectivo espacio de búsqueda crece de manera exponencial debido entre otras cosas a
las relaciones que puedan surgir, por lo tanto el problema del diseño de una aeronave debe
desglosarse en representaciones simples, como perfiles aerodinámicos, tomando en
cuenta que la recombinación de los elementos puede perjudicar el rendimiento individual.
Puede haber casos en los cuales dependiendo los parámetros que se utilicen para la
evaluación el algoritmo podría no llegar a converger en una solución óptima o bien terminar
en una convergencia prematura con resultados no satisfactorios (la convergencia prematura
podría significar una convergencia en un óptimo local o punto arbitrario afectando los
resultados a largo plazo).
La "mejor" solución lo es solo en comparación a otras soluciones por lo que no se tiene
demasiado claro un criterio de cuándo detenerse ya que no se cuenta con una solución
específica.
19
problema particular, sin embargo su espacio de búsqueda es muy grande. El AG explora
las diferentes estrategias, y selecciona de acuerdo con los parámetros de evaluación la
mejor red.En robótica, las aplicaciones de los AG están en el control de movimiento. Para
un robot móvil, es posible generar trayectorias en función de la topografía del entorno (Kala
et al., 2009 y Castillo & Trujillo, 2005). El AG genera trayectorias válidas en un ambiente
con obstáculos, a través de funcio-nes de evaluación que analicen el diseño de los
trayectos, evaluando su dificultad y la distancia de la trayectoria para favorecer la
minimización de tiempo y uso de energía del vehículo. Kala (2009) incluyó obstáculos en
movimiento (otros robots por ejemplo), esto se logró a través de la generación de
trayectorias entre dos puntos que se interconectaban hasta conformar la trayectoria
general.
Para otras estructuras robóticas, como un robot con piernas (Heinen & Santos, 2006) es
necesario determinar los valores de los parámetros que afectan el caminar, como la
distancia, la inestabilidad, el número de extremidades en contacto con el suelo (si tiene más
de dos piernas), que se convierten en funciones de evaluación. Los investigadores
trabajaron con un software llamado LegGen el cual esta-blece los parámetros de caminata
a través de un ambiente virtual. El software explora a través de un AG los valores que
garanticen una buena caminata. Un trabajo similar (Picado, et al., 2009) establece
trayectorias de movimiento para cada una de las articulaciones del robot, estas trayectorias
están parametrizadas por ecuaciones obtenidas a través de funciones de oscilación de
simple frecuencia, las cuales requieren de parámetros para su calibración. Los AG
determinan los parámetros más ade-cuados para el sistema y garantizan un paso estable,
rápido y poco sensitivo a los disturbio
20
2010; Giraldo et al., 2006; Gordillo et al., 2009; Parker & Goldberg, 1989, Tabandel et al.,
2006 y Mar-cos et al, 2009), encontrando así la respuesta más adecuada a la morfología
del robot. El individuo está compuesto por los valores de rotación posibles para cada una
de las articulaciones, en tanto que la función de evaluación son las ecuaciones de
movimiento del sistema, el sistema pondera pesos en función del error de posicionamiento
del efector final y las orientaciones de cada articulación, y al final selecciona aquel que
favorezca la menor desviación respecto a los valores requeridos, la Figura 4 presenta la
tendencia de la respuesta del AG para 100 pruebas respecto a un conjunto de valores
predefinidos, la tendencia del algoritmo es el encontrar una única respuesta con una media
(línea punteada) cercana al valor requerido definido, queda por delante optimizar este
proceso de búsqueda explorando otros operadores naturales.
En (Larch, 1994) se encuentra un ejemplo del primer grupo, donde se propone un mé- todo
que utiliza algoritmos genéticos para optimizar las reglas usadas en la clasificación de
coberturas en imágenes Landsat. Las reglas optimizadas son obtenidas mediante la
comparación de los resultados de las reglas con datos reales del terreno, usando una
función objetivo que minimiza el número de falsos positivos y falsos negativos. Un ejemplo
del segundo grupo se encuentra en (Quirin, Korczak et al., 2004) en donde se describen
dos sistemas de clasificación aprendida, que pueden ser usados para clasificar imágenes
de percepción remota. Un primer sistema utiliza ICU (Quirin, 2002), que es un sistema de
descubrimiento de reglas que combina un algoritmo genético, una población de reglas de
clasificación que describen las restricciones para cada píxel de los datos, y un conjunto de
métodos usados para la selección de las reglas y la asignación de la exactitud. El segundo
sistema utiliza XCS (Wilson, 1998), en este caso la función de aptitud se basa en la
exactitud de la predicción y en que las cadenas de bits clásicas de los sistemas
clasificadores son reemplazadas por vectores de valores reales (Wilson, 2000). En ambos
casos se trata de la extracción de reglas de clasificación de una imagen previamente
clasificada por expertos, y de la aplicación de dichas reglas a imágenes no clasificadas. Se
habla aquí de la minería de reglas como el proceso de descubrir un conjunto de
clasificadores, donde cada uno de ellos toma como entrada un píxel y devuelve su clase.
En esta categoría cae también el trabajo presentado en (Benton, 1995) donde los algoritmos
genéticos son utilizados para identificar, dentro de un conjunto de píxeles ya clasificados,
21
aquellos que resulten representativos de una categoría de clasificación, y a partir de esta
selección automatizar la labor de clasificación de los píxeles en imágenes similares. Como
muestra del tercer enfoque, se encuentra en (Brumby, 2004) una descripción de una
aplicación llamada Genie, que en lugar de optimizar un único algoritmo, toma varios
algoritmos de procesamiento de imágenes individuales (detección de bordes, medición de
texturas, operaciones espectra- UNIVERSIDAD MILITAR NUEVA GRANADA Ciencia e
Ingeniería Neogranadina, Vol. 17-2, 2007 105 les, filtros morfológicos) como miembros de
la población inicial. Sobre esta población se aplica el algoritmo genético, produciendo un
nuevo algoritmo de clasificación supervisada. Genie está escrito en una mezcla de código
Perl y C, y corre sobre estaciones de trabajo Linux estándar. Adicionalmente, y como un
tema estrechamente relacionado se encuentran varios trabajos sobre clustering con
estrategias evolutivas (Lee and Antonsson, 2000), (Lozano and Larrañaga, 1998). El
clustering es uno de los mecanismos más utilizados en el proceso de clasificación, y
consiste en el agrupamiento de píxeles con valores digitales similares.
Los algoritmos genéticos son una técnica de optimización global, empleados hoy en día en
el diseño de antenas. En el artículo se definen los principios básicos de estos algoritmos y
se muestran los resultados obtenidos utilizando estos algoritmos en el proceso de diseño y
optimización de tres tipos de antenas, la bocina piramidal, el reflector parabólico y el parche
circular.
22