¿Nuestro código genético utiliza algoritmos de compresión?

A nivel de ADN, los humanos, como la mayoría de los eucariotas, tienen genomas bastante ineficientes. Es un sistema de codificación interesante y claramente muy viable, pero no; no se comprime y ni siquiera recolecta basura con mucha frecuencia.

La función principal del genoma son los genes; segmentos de ADN que codifican una proteína. Hay otros elementos funcionales más allá de los genes, pero volvamos a ellos más adelante. Una proteína es una serie de aminoácidos: pequeños bloques de construcción moleculares. Hay 20 “estándar”, además de algunas raras que omitiré. Esto significa que para almacenar un gen, debe almacenar una larga lista de aminoácidos. También hay dos tipos de “códigos de control”: básicamente “iniciar” y “detener”.

Hay cuatro bases posibles (A, T, G, C), por lo que claramente necesitamos más de una por aminoácido. Dos tampoco es suficiente (4 * 4 = 16), por lo que el ADN utiliza codones de tres bases, lo que permite 64 únicos. Un gen simplemente se almacena como inicio , una larga serie de códigos de aminoácidos y se detiene . Hay un par de códigos de parada, en realidad; y muy raramente ves un código de inicio alternativo. Los códigos de detención son completamente únicos, pero los códigos de inicio se reutilizan: dentro de un gen, codifican el aminoácido metionina.

Ahora, claramente hay más codones posibles que aminoácidos y códigos de control. Sin embargo, todos están en uso; como un tipo primitivo de codificación de redundancia. Cuanto más común sea un aminoácido, más codones lo codificarán: la idea es que si se muta una sola base, seguirá codificando lo mismo que antes.

Cuando este ADN se usa realmente , primero se copia, luego se lee y se destruye esa copia. La copia, la transcripción , crea una cadena de ARNm (ARN mensajero) que es complementario al ADN: G se convierte en C, C se convierte en G, T se convierte en A y A se convierte en … U, porque el ARN utiliza una molécula ligeramente diferente para esa posición. Por lo tanto, si comienza con AGG CTC, el ARNm leerá UCC GAG. Cuando se habla de codones, es común usar la lectura de ARNm y no la lectura de ADN.

Los genes no siempre son un solo tramo de codones. Se pueden dividir en bloques separados por ADN no utilizado: llamamos a los bloques en uso exones (ya que se expresan) y los intrones de relleno (ya que son intragénicos, “ en el gen o intervinientes ). Todo el asunto, intrones y todo, primero se transcribe, y luego los intrones se editan. Sin embargo, este proceso puede modificarse: a veces, obtienes variantes de empalme alternativas , donde también se eliminan algunos de los exomas, según lo deciden las proteínas y otras moléculas que interfieren con la transcripción. Esto significa que un solo gen puede codificar múltiples proteínas, lo que significa que si bien los humanos tienen alrededor de 20 000 genes, la cantidad de variantes de proteínas posibles es mucho mayor. Se podría argumentar que esta es una forma de compresión, o al menos deduplicación, aunque no se comparte nada entre los genes.

Ah, y todo esto ha ignorado que grandes fragmentos de ADN no codifican y posiblemente no tienen sentido: los errores de copia han dejado enormes fragmentos de repeticiones, hay viejos virus desactivados y copias de genes allí, hay “elementos móviles” que, nuevamente, son básicamente errores de copia, y probablemente podría vivir bien sin la mayor parte.

Sin embargo, también hay cosas funcionales en el ADN no codificador fuera de los genes: unos pocos miles de bases antes de la mayoría de los genes hay una región promotora: un tramo de ADN que encaja (y atrae) la maquinaria de proteínas que realiza las transcripciones. Hay regiones que pueden contener moléculas “bloqueadoras” para detener la transcripción, hay regiones de miARN (que se transcriben, pero el ARNm en sí es la parte activa y nunca se convierte en una proteína), y todo tipo de otras cosas raras y maravillosas mal entendidas cosas. También está todo el estudio de la epigenética, modificaciones que no están en el código de ADN; cosas como los grupos metilo que se unen al ADN en ciertas posiciones, lo que dificulta (o a veces promueve) la transcripción de ciertos genes o exomas. Sin embargo, eso está fuera del punto aquí.

En total, esto significa que un gen sin intrones, que codifica tres fenilalaninas encadenadas (mucho más cortas que cualquier proteína real) podría verse así (con la región no codificada acortada):

DNA TATAAxxxxxxxxTAC AAA AAA AAA ATCxxxxxxxx
ARNm AGO UUU UUU UUU UAG
pro non- Start Phe Phe Phe Stop non-
codificación del motor codificación

Lo llamaría “no comprimido en absoluto”, excepto por el funky sistema de empalme alternativo.

1: Los eucariotas son animales, plantas, hongos … básicamente cualquier cosa que no sea una bacteria o archea. Las bacterias usan la misma codificación de ADN que todos los demás, pero están bajo más presión para que sea eficiente. Esto significa que hacen cosas como tener múltiples copias de genes importantes, por lo que pueden transcribir múltiples copias a la vez; casi no tienen ADN no codificante, no tienen intrones en absoluto, agrupan múltiples genes para transcribirse como bloque, y algunas bacterias llegan a tener genes superpuestos para ahorrar espacio.

Sí, algo de compresión tipo LZ, por así decirlo, con moléculas largas codificadas a partir de bloques que están codificados a partir de subbloques codificados por genes. Y bloques comunes luego individualizados con variaciones.

También parece codificación de procedimiento: codificación de desencadenantes en lugar de resultados detallados. De hecho, la cantidad de bits de codificación es muy pequeña en el ADN (aproximadamente 2 Gb), ni siquiera sería suficiente para codificar todas las neuronas y sus conexiones, o huesos, formas y ubicaciones exactas. En cambio, desencadenar / controlar / detener el crecimiento de cualquier cosa (que comprende factores de señalización y crecimiento) es mucho más compacto.

Pero, opuestamente, muchas cosas parecen un desperdicio de codificación (largas repeticiones de secuencias, secciones aparentemente inútiles, pero quién sabe), y el hecho de que la mayoría de los aminoácidos en una cadena están ahí para que todo se doble en una bola de hilo. exponer las pocas partes útiles en lugares útiles, al menos es fácil de almacenar, construir y mutar).

More Interesting

Si está utilizando Java durante las entrevistas algorítmicas, ¿puede omitir las clases de escritura y acceder directamente a los métodos?

¿Cuál es el tiempo de entrenamiento promedio y el tiempo de prueba de los algoritmos de aprendizaje automático más comunes?

Un algoritmo de cifrado de bloque en su forma básica casi nunca se usa para cifrar mensajes largos. ¿Por qué?

¿Cuáles son las aplicaciones de las búsquedas lineales y binarias?

¿Puedo leer Introducción a las estructuras de datos de Cormen como un principiante completo?

¿Cuál es el mejor libro para aprender algoritmos y estructuras de datos en Java para principiantes?

¿Por qué obtener más puntos de datos soluciona el problema de la alta variación en un algoritmo de aprendizaje automático?

¿Existe un algoritmo para aplicar a una imagen que muestre lo que vería alguien que necesita corrección de la visión?

¿Cuál es la forma más rápida y eficiente de hacer una sustitución / sustitución de cadenas dentro de una cadena grande con JavaScript?

¿Cuál es el mejor algoritmo de aprendizaje automático sin supervisión para la segmentación de imágenes basada en color?

¿Cómo resuelvo esta pregunta SPOJ.com - Problema XOINC?

¿De qué sirve estudiar algoritmos de clasificación y técnicas de búsqueda? Quiero decir, ¿dónde lo usamos en la programación?

¿Es necesario un montón de páginas de CV para conseguir un trabajo?

¿Qué tipo de algoritmos se utilizan en DSP (plataforma del lado de la demanda)?

¿Cómo combina ACM ICPC invertir en diversidad y mantener alta la barra de entrada?