La verdad es que ayer, en cuanto vi el ejemplo que había creado Pedro, nuestro tutor, me quedé un tanto desanimado, ya que me pareció genial y no se me ocurría manera alguna de abordar el trabajo (ni siquiera utilizando el ejemplo como base y mucho menos creándolo desde cero)
Primero pensé en esperar a ver qué hacían los compañeros para tener más ideas pero, la verdad, me apetecía afrontar el reto por mí mismo (no tanto el de acertar con la solución propuesta ni mucho menos, sino el de hacer la tarea individualmente sin necesidad de "cotillear" el trabajo de los demás primero) Quizás no haya sido buena idea, no lo sé aún, pero estoy contento con mi decisión.
Total, me fui a trabajar y dejé el ordenador "calculando" la cantidad de gente que cabía con el algoritmo de Pedro. Era media mañana cuando lo dejé funcionando y por la noche aquello seguía sin parar. Ya iba por más de un millón de personas y, la verdad, el espacio sin colorear de verde todavía daba bastante margen a que ese número creciera.
Así que pensé "he aquí el problema". Si queremos un algoritmo que calcule la cantidad de gente que cabe necesitamos algo que nos dé la solución con mayor rapidez, porque no sería muy eficaz dejar el ordenador calculando y tener que esperar dos días a saber el número (independientemente de la veracidad o no del resultado...)
Así que he tirado por lo práctico y he planteado un algoritmo con sencillas operaciones matemáticas que lo único que hacen es calcular la superficie útil de la plaza y multiplicarla por un coeficiente de ocupación determinado.
Son valores asequibles de conocer por cualquiera como la longitud y la anchura de la plaza, la superficie ocupada por mobiliario, terrazas, etc, incluso, si la situación lo requiriese, se podría añadir la superficie de espacio ocupado por un escenario, por obras en la vía, por un cordón policial o por cualquier otra circunstancia típica de los eventos. El interesado también indicaría si cree que la multitud será densa o fluida y, dado que estos valores se introducen por el propio usuario en el momento de calcular la muestra, se pueden ajustar lo mejor posible a la realidad y, una vez introducidos, el programa se encarga de calcular la cantidad de gente utilizando un coeficiente diferente en función de la densidad que hemos descrito anteriormente.
Estos coeficientes están basados en los trabajos de Herbert Jacobs, profesor de periodismo en la Universidad de California, Berkeley, durante los años 60 del pasado siglo, y responsable de la modernización del cálculo de multitudes desde esos años.
La regla básica de densidad de Jacobs indica que una "multitud fluida" contaría con una persona por cada 0,93 metros cuadrados y una "multitud densa" contendría una persona por cada 0,42 metros cuadrados.
Independientemente de la exactitud o no de todos estos datos, y dado que pueden modificarse todos ellos, bien por el usuario bien por el programador de scratch, lo acertado o no del resultado final dependerá de la precisión de los mismos, siendo éstos ajenos al algoritmo en sí, que resulta rápido y sencillo para calcular lo que se nos pide.
Aquí os dejo el enlace al mismo por si queréis echarle un ojo:
http://scratch.mit.edu/projects/37803244/#player
Un saludo a todos!!