martes, julio 12, 2016

Jugando con la Conjetura de Collatz

Ayer llegué a través de Twitter a un enlace que habla de la Conjetura de Collatz. Aparece representado como el problema más simple de las matemáticas que aun no ha sido demostrado o desmentido.
Os adjunto el vídeo de Derivando en el que se explica muy bien:


Más información al respecto se puede encontrar en Gaussianos o en la Wikipedia.

Esta mañana me he entretenido en la biblioteca a trastear con la conjetura, llegando a unas conclusiones que a posterior he visto en la Wikipedia. Os cuento cómo he llegado a ellas y cómo desde ahí la conjetura se puede formular en otros términos, quizás más accesibles para su demostración/negación.
Según la conjetura, cualquier número bajo las reiteradas operaciones de:

  • en caso de ser par, división por 2
  • en caso de ser impar, multiplicación por 3 y al resultado se le suma 1

termina llegando a 1.

El algoritmo de estas operaciones se simplifica si utilizamos la representación binaria de números puesto que:

  • en el caso de los pares, la división por 2, significa quitar el último cero (ejemplo 18 (10010) entre 2 es 9(1001).
  • en el caso de los impares, la multiplicación por 3 y sumar después 1 pasa a ser la suma del número en binario más ese mismo número al que se le añade un 1 al final (ejemplo 9 por 3 y luego sumado 1 resulta 28 que en binario se realizaría como 1001 + 10011= 11100).

Un resultado obvio es que, siempre después de un número impar va a salir un número par, así que todo operación de multiplicación por 3 más 1, siempre viene acompañada de una posterior división por 2.
Si uno estudia por encima en qué momento termina el número colapsando a 1 irremisiblemente, se dará cuenta de que eso ocurre SOLO en el momento en el que las operaciones le han llevado a una potencia de 2. En ese momento, operaciones consecutivas  de división por 2, llevarán el número a 1.
Para lo que voy a explicar a continuación, es importante saber que todas las potencias de 2 en binario tienen la forma de un 1 seguido de una cierta cantidad de 0s (ejemplo: 8 (1000) ; 64 (1000000); etc).
Ya que dividir por 2 solo quita ceros al final, podemos reformular el algoritmo de cálculo a una sola operación:

independientemente de si es par o impar, se le quita todos los ceros que tenga la final y al número resultante, se le suma ese mismo número añadiendo un 1 al final.

Con este algoritmo podemos calcular las iteraciones más deprisa. Por ejemplo, mientras que el número 27 requiere de 111 pasos en notación decimal, con este algoritmo se realiza en:
27 (11011) ->
11011 + 110111 = 101001
101001+1010011= 1011110
101111+1011111= 10001110
1000111+10001111=11010110
1101011+11010111=101000010
10100001+101000011=111100100
1111001+11110011=101101100
1011011+10110111=100010010
10001001+100010011=110011100
1100111+11001111=100110110
10011011+100110111=111010010
11101001+111010011=1010111100
10101111+101011111=1000001110
100000111+1000001111=1100010110
110001011+1100010111=10010100010
1001010001+10010100011=11011110100
110111101+1101111011=10100111000
10100111+101001111=111110110
11111011+111110111=1011110010
101111001+1011110011=10001101100
100011011+1000110111=1101010010
110101001+1101010011=10011111100
100111111+1001111111=1110111110
111011111+1110111111=10110011110
1011001111+10110011111=100001101110
10000110111+100001101111=110010100110
11001010011+110010100111=1001011111010
100101111101+1001011111011=1110001111000
1110001111+11100011111=101010101110
10101010111+101010101111=1000000000110
100000000011+1000000000111=1100000001010
110000000101+1100000001011=10010000010000
1001000001+10010000011=11011000100
110110001+1101100011=10100010100
101000101+1010001011=1111010000
111101+1111011=10111000
10111+101111=1000110
100011+1000111=1101010
110101+1101011=10100000
101+1011=10000
1
un total de 40 pasos.


Bajo esta perspectiva, demostrar la conjetura de Collatz equivaldría a demostrar que el desplazamiento de los números binarios bajo la operación arriba indicada, aplicada una cierta cantidad de veces, lleva ineludíblemente a 1. Según lo veo yo, hemos pasado de un problema de Teoría de números a uno de Traslaciones en un espacio n dimensional.
------------------------------------------------------------------------------------------

A partir de lo anteriormente dicho, y obviando la operación de división por 2 (como hemos comprobado que se puede hacer), llegamos a que los sucesivos números que se obtienen son de la forma:



Con lo que otra manera de reformular la conjetura es decir que cualquier potencia de 2 se puede escribir como
2^m = n×3^j+sum_(i=j-1)^0 3^i  
donde n y j son dos números naturales, que en nuestro caso representan cualquier número n y j el número de veces que realizamos la operación de multiplicar por 3 y sumar 1.

jueves, junio 02, 2016

Herramientas para operar con texto


A raíz de los más de 2300 tuits generados estos días bajo el hashtag #Soyfísico y que he guardado en Google Spread Sheets con la herramienta gratuita Twitter Archiver, me he vuelto a encontrar con el problema de que no tengo la experiencia ni conozco las herramientas para trabajar con texto. Mientras que puedo hacer casi todas las operaciones y estudios matemáticos que se me puedan ocurrir con números, en el mundo del análisis de palabras soy un ignorante. Alguna incursión he tenido que hacer en el pasado para hacer algún análisis semántico en inglés con Wolfram Language o editar y extraer pequeños fragmentos de texto de ficheros de entrada/salida para alguna simulación con AWK o algún pequeño flirteo con web crawlers/scrapers para buscar información pero estoy muy lejos de ser eficaz con ninguno de ellos.



Así, hay montones de tareas con textos que se me resisten o que requieren de semanas de trabajo para que pueda llevarlas adelante.
Por ejemplo, un simple Word Cloud con las palabras más frecuentes de un texto me supone un reto. No sé cómo extraer palabras y calalogarlas según algún tesauro (por ejemplo: extraer palabras que estén relacionadas con oficios o separarlas entre masculinas o femeninas). No sé cómo extraer frases que empiecen por un carácter determinado y guardarlas en una base de datos (por ejemplo, coger los pdfs de los exámenes de PAU y hacer una base de datos en el que cada entrada sea una pregunta de examen). No sé cómo generar un fichero con preguntas aleatorias de una base de preguntas ya creada. No sé cómo crear un documento en el que vaya intercalando imáganes de una carpeta con un texto con el título de cada imagen extraído de los metadatos. No sé cómo obtener cierta información de una página web  o cómo lanzar queries en distintos buscadores de forma automática. Así un sin fin de situaciones en las que me siento indefenso antes un texto.

Me diréis que todo esto es arremangarse y programarlo en Python o otro lenguaje de programación y razón no os falta. Pero, al igual que ya no tengo que programar la transformada de Fourier para hacer el análisis de una función, tengo la esperanza de que todo esto ya esté implementado en una plataforma fácil de usar.

Así que pido ayuda a los expertos. Cada vez veo más necesario aprender a moverme entre información textual y quiero dejar de sentirme un analfabeto texto-digital.


lunes, abril 18, 2016

Treinta años después, seguimos cometiendo los mismos fallos en educación

PROLOGO

Este quiere ser un libro distinto a los demás: Te explicamos por qué.

Conoces de sobra los métodos habituales para la enseñanza de las ciencias. El profesor explica, intenta poner en claro, con su mejor voluntad, una serie de principios, leyes y técnicas, de “verdades”, en definitiva, que constituyen el conjunto de conocimientos que llamamos Ciencia. El alumno escucha, intenta comprender lo que dice el profesor y luego, ya en su casa, vuelve a estudiar esas “verdades” expresadas en términos semejantes en su libro de texto. Consigue así una asimilación, casi siempre memorística y poco duradera, que le sirve, a veces, para superar el examen.

Es claro que estos métodos están al servicio de la transmisión cultural como fin prioritario de la educación. Lo que se pretende es que conozcas muchas cosas, cuantas más mejor. Sólo así serás un hombre culto. Por eso las clases suelen limitarse a una exposición de hechos y los libros de texto a una acumulación de informaciones.

Probablemente hemos exagerado un poco, ya sabemos que no siempre es así del todo. Pero, en líneas generales, ¿no te resulta familiar esta situación? Por desgracia, tememos que sí.

Y lo tememos porque no participamos de ese concepto de educación. Para almacenar datos ya están los ordenadore electrónicos. Lo que se espera de un hombre culto de hoy es que se interese por el mundo que le rodea en toda su plenitud de manifestaciones, que sea capaz de interpretar, comprender y juzgar lo que ocurre a su alrededor y de desenvolverse por sí mismo ante situaciones nuevas, no recogidas en sus libros de texto. Claro que esto no es posible sin una serie de conocimientos básicos. Pero es más importante todavía el desarrollo de las capacidades y actitudes conducentes a esos fines. SIn ellas, el hombre-enciclopedia corre peligro de ser un autómata, dirigido y manipulado, sin posibilidad de resolver, ni siquiera percibir, los problemas que le afectan. Es más importante “formar cabezas” que “llenar cabezas”.

Bueno ¿y qué puede aportar la Ciencia a esa formación? Mucho, sin duda. Esto es lo que nos vamos a plantear aquí.

La Ciencia no es sólo el producto de la civilización humana. En la misma medida, por lo menos, es también el método de trabajo de miles de investigadores, es una forma peculiar de observar y entender las cosas que implica necesariamente el funcionamiento de importantísimas facultades intelectuales. Se trata, entonces, de que hagas Ciencia por ti mismo, que redescubras las leyes que rigen el comportamiento del Universo y que seas así el principal artífice, el protagonista de tu propio aprendizaje.

Ese es el objetivo y el planteamiento de este libro. Por eso no es un libro de texto”normal”. Te daremos unas técnicas e informaciones iniciales necesarias y enseguida ¡a redescubrir, a inventar, a hacer Ciencia!

Trabajos Prácticos de Física y Química. Félix Prats y Yolanda del Amo. Ed Akal 1988

sábado, enero 30, 2016

Valor educativo de los Puzzles

Acabo de comenzar un MOOC sobre Diseño y Desarrollo de Técnicas/Tecnologías para la Educación.
Iré colgando por aquí las tareas que presento al curso por si son de utilidad.
Hoy vamos con el uso de Puzzles en educación.


NAME: Jigsaw PuzzlesTYPE OF TECHNOLOGY: GameTIME PERIOD: Credited to John Spilsbury, a London cartographer and engraver,around 1760.LINK: https://en.wikipedia.org/wiki/Jigsaw_puzzlehttp://www.techsupportalert.com/content/best-free-jigsaw-puzzle-and-creator.htmEDUCATIONAL VALUE:
-It improves concentration and problem solving skills.
-It improves spatial vision and attention to the details.
-It helps to devise plans to tackle the task of completing it.
-It is fun and de-stressing
-It trains visual memory and imagination
-In case of large puzzles, it improves patience and perseverance and, if made with others, cooperation.
-If completed, it boosts your self esteem.
-Besides, when used specifically for educational purposes, it helps you memorize different aspects of a topic (ie: locations and distributions in geography, anatomy…)
Concerning the educational value of Jigsaw Puzzles, does anyone know of scientific experiments proving the aforementioned list in a quantitative way?

miércoles, agosto 26, 2015

Sustitución de la mano de obra humana por robots: ¿ventaja o peligro?

Esta es una brevísima entrada a raíz del artículo ¿Quitarán los robots el trabajo a las nuevas generaciones? publicado ayer por el País y un comentario de @javierfpanadero al respecto:


Según mi opinión los robots SÍ nos vas a quitar el trabajo en muchas áreas actuales y no con fines positivos como insinúa Javier, para currar menos, sino para optimizar el proceso de producción y beneficios para el empresario.
Mis razones son las siguientes:
La persona que tiene interés y dinero para invertir en Inteligencia Artificial e implantarla en la empresa NO es el currito de la planta sino el empresario que quiere mejorar resultados y sobrevivir en un mundo muy competitivo.
En primera aproximación, la economía y los empresarios no saben de, ni les interesan, los males de sus empleados.

La cosa podría ser diferente si fueran los trabajadores, sindicatos o cualquier ente público que se dedicara a proteger los intereses del personal el que introdujera la automatización en las empresas. En ese caso sí se haría en aras del bienestar de la sociedad, sustituyendo a la mano de obra humana en tareas peligrosas, duras, monótonas,.. Pero a estas alturas ¿a quién no le queda claro que eso no va  a ocurrir? Y ya lo estamos viendo, sin ir más lejos, en el decreciente número de funcionarios públicos que van siendo sustituidos por máquinas. Usted como contribuyente ¿no va a apoyar una mejora en el servicio y una reducción de costos? El funcionario eliminado de turno tendrá que ser recolocado pero ¿dónde? y ¿por quién?. Y usted como contribuyente no se va a preocupar de eso.

Así que vayan poniendo sus barbas en remojo.

jueves, julio 30, 2015

Como el profesor absolutista y el alumnado reaccionario

Parece que empiezo a encajar las piezas del rompecabezas.

El español nunca ha estado verdaderamente liberado de esa "esclavitud". Siempre se ha sabido dominado por un gobierno absolutista que poco margen ha dejado para que el español sea dueño de su destino. Y cuando las leyes/normas vienen impuestas desde fuera y las tienes que acatar por obligación y no por interiorización razonada, lo lógico es que te rebeles contra ellas y las incumplas a escondidas, a la más mínima.
Es ese mal gobernante/dirigente que impone en vez de explicar, que llevamos teniendo durante decenas de años, el principal responsable de esta mojigata (los que acatan como siempre) e irreverente (los que se rebelan desorganizadamente) sociedad en la que estamos inmersos.



Necesitamos buenos gobernantes YA!!!

lunes, julio 27, 2015

La reincidente distorsión de los resultados del paro en Alcorcón

Se ha montado un buen revuelo, y con razón, por la reciente gráfica que ha colgado el PP de Alcorcón sobre la evolución del paro en la ciudad


Que 6782 y 12878 sean el mismo número tira por tierra muchos siglos de avances matemáticos y pone en peligro al banco más pintado, que habiendo prestado lo segundo, igual solo recibe de su deudor lo primero (¿acaso los griegos están tomando buena nota?).

Pero que esta burda presentación de datos no sea más que la continuación de, al menos, otras dos más, creo que apunta a la mala fe de sus creadores.

Hace menos de una semana solté espuma por la boca cuando me encontré con un tweet del ayuntamiento de Alcorcón en el que de forma taimada se abalaba la labor de la gestión realizada por su regidor, en especial el logro del descenso del paro.

Ni corto ni perezoso el que elaboró el gráfico decidió empezar justo en la fecha en la que el desempleo alcanzó el máximo y así, obviamente, todo aparece cuesta abajo.
Como no puedo con estas cosas, tiré de internet para encontrar datos a fechas anteriores y poner las cosas en su justa perspectiva.


Así mucho mejor! O si lo prefieren con número de parados como en la gráfica "amañada" aquí les dejo una de producción casera:


Pero estos ardides ya se pusieron en práctica en marzo del año pasado cuando, a bombo y platillo, se demostraba sin pudor que la gestión del desempleo del ayuntamiento del PP había sido "infinitamente" mejor que la de la oposición en años anteriores.

Esta última, además de manipular nuevamente la representación de los datos, situando el final de una en el máximo y el principio de la otra en el mínimo, utilizaba escalas verticales manifiestamente muy distintas. Aquí atestiguaban otra igualdad matemática ( 6128 es lo mismo que 806) que ha resultado esquiva a los estudiosos desde el principio de los tiempos.

¡Que nadie me malinterprete! Me alegro enormemente del descenso del desempleo de mis conciudadanos. Lo que quiero con esta entrada es que "DESTITUYAN" de una vez y lleven a juicio al sinvergüenza detrás de estas gráficas.

jueves, julio 02, 2015

Mentalidad, ergo país, tercermundista con tiendas de Zara


Éste, mi país, me preocupa y lo hace hasta quitarme el sueño noche tras noche. Me preocupa porque es el mío, porque en él vive la gente que quiero y porque en él se están criando mis hijos (¡ojo! ¡que los tuyos también!). Y el motivo de esa preocupación es la mentalidad tercermundista de muchos de sus habitantes, porque el adjetivo tercermundista no acompaña solo a las economías sino que, con efectos más devastadores, se aplica también a la psique de sus ciudadanos.
Hoy hablo de esa mentalidad tercermundista porque en menos de una semana he vivido tres casos muy elocuentes de cómo el hacer dinero de cualquier manera y a costa de cualquiera prevalece al sentido común de una persona civilizada. Para más vergüenza, estos tres casos han sido a costa de los más indefensos, niños y jóvenes.

  • Sin que el orden importe, empezaré por aquella empresa cuyo único objetivo es obtener la máxima rentabilidad de un albergue. La manera es poner a cargo de todas las tareas del albergue a un conjunto de jóvenes, de unos 20 años, que igual limpian, que hacen la comida o que de monitores, eso sí, en turnos de 24 horas varios días seguidos. Con salarios bajos, mano de obra manifiestamente inferior a la necesaria (de todos es bien sabido que los jóvenes son fuertes y pueden trabajar por tres) y rápida rotación (muchos no aguantan más que un par de semanas a ese ritmo) queda claro que se puede sacar beneficio hasta de la nada y ¿qué podría salir mal?.
  • Otro de los casos, vivido en ese mismo albergue, es el de las empresas de campamentos de verano para colegios que son capaces de llevar a 61 niños de primaria a cargo de un solo monitor, eso sí, joven, con todas las ganas del mundo y ambicioso por ganarse tres perras sin ser consciente de lo que su puesto implica. Los dueños de la empresa han de estar frotándose las manos: monitores como éste generan gran rentabilidad (¡Estamos muy contentos! ¡Contamos contigo para el año que viene!) y ¿qué podría salir mal?.
  • El tercero ocurrió ayer mismo en el colegio del campamento urbano al que van mis hijos. Una contrata que llega a un acuerdo con el ayuntamiento para hacerse cargo de los campamentos a cambio de un dinero mínimo, que posiblemente en un país civilizado difícilmente podría cubrir gastos, quiere sacar beneficios de donde no los hay. El sistema se vuelve a repetir: monitores muy jóvenes (¿tendrán la edad y la formación requerida?), los justos para incumplir los ratios por alumno sin hacerlo descaradamente y un solo coordinador para varios centros, que no tiene información ninguna de las necesidades (alimenticias) de los chavales ni de los teléfonos de los padres. La situación es tan extrema que la empresa de catering se niega a llevar la comida porque no han llegado a ningún acuerdo económico el mismo día que han empezado los campamentos. Aquí sí salen las cosas mal y los niños se quedan sin comer hasta que sus padres les van a recoger a las 4 o 5 de la tarde. Nadie les ha avisado; no hay gente para dar explicaciones. ¿Habrá responsables?
Queridos conciudadanos, esta es la situación que vivimos a diario. El trabajador, joven o viejo, no quiere ir a trabajar porque se sabe explotado, y, en ocasiones, ocurren accidentes que en estos tres casos mencionados afectan a los más pequeños.

Tras dejar hoy a mis hijos de nuevo en el campamento me asaltaban cientos de preguntas. Para nada me tranquilizaba el hecho de que apenas dispusiera de información de la empresa, ni tan siquiera del programa de actividades. La solución empieza por la transparencia: ver la mierda es el mejor remedio para no pisarla. Y por favor, dejemos de ser tercermundistas, al menos con nuestros hijos.