I Campeonato de Programación de MV

IS4kO

La aplicación:

En un principio la aplicación consistia en crear un generador de informes, es decir tu le pasas x datos estadísticos y se te genera un informe con gráficas y demás, pero creo que no es excesivamente complicado, así que se me ha ocurrido algo tal vez más complicado, mejor dicho, algo muchísimo más complicado, ya que no he visto nada en el mercado que pueda realizarlo de forma mas o menos fiable.

La aplicación consistirá en que meteremos dos imágenes cuales quiera a la aplicación y esta nos tendrá que decir, que % de igualdad hay entre ellas. Es decir que si meto dos imágenes iwales, la aplicación debería decirme que tienen una semejanza del 100%.

Ale ahí queda eso, para ir dandole vueltas al coco :) impossible ?¿ xd

Lenguajes a utilizar:

No habrá un límite, que cada uno lo haga como mejor crea, pero esto supondrá que no se le pueda meter mano al código para evaluar su limpieza, algoritmos, etc...

Evaluación:

El jurado lo formarán los capitanes de los mismos equipos participantes, que sin poder votarse a si mismos, tendran que asignar un máximo de puntuación de 50 puntos a las demás aplicaciones, teniendo que valorar teniendo en cuenta los siguientes aspectos

- Utilidades de la misma (20 puntos como máximo)

  • Esta sección se valora con 20 puntos ya que creo que es la más importante, debido a que nosotros ponemos unos requisitos mínimos, por ejemplo que a la aplicacion se le meta un parametro y este nos devuelva el parametro multiplicado por dos, pero a partir de ahí, la creatividad tiene vía libre, por ejemplo que se puedan ir metiendo parámetros dinamicamenete en tiempo de ejcucion que dependiendo del parametro suceda una cosa u otra etc..... (cuando se sepa la aplicación veréis con más claridad a que me refiero)

- Diseño gráfico (15 puntos como máximo)

  • El diseño es una de las pasiones más destacadas en este foro y por eso, y pq los proyectos a primera vista entran más a los ojos por su aspecto gráfico que por su calidad real, lo valoramos con 15 puntos

- Usabilidad y accesibilidad de la aplicación (10 puntos como máximo)

  • El acceso a las distintas posibilidades de la aplicación deben de estar claras, debe ser intuitiva, tener los datos bien organizados y ser lo mas portable que se pueda (y con esto quiero decir, que no es lo mismo obtener un dato por ejemplo en una imagen jpg, que tener los datos devueltos en múltiples formatos, por ejemplo html, xml, tipos de datos genéricos...)

- Rendimiento y consumo de recursos (5 puntos como máximo)

  • La aplicación tiene que realizarse atendiendo a que cualquiera de los otros equipos pueda tener acceso a la misma sin tener que hacer un master de la aplicación. Así pues, puede entregarse la aplicación en un instalador, o colgada en algun servidor. Una vez visto esto, es importante los recursos de sistema que pueda o no consumir, ya que si cada vez que ejecuto, el PC se queda tostado, o el servidor se queda colgado cada dos por tres, pues no me va a valer de mucho :)

Inscripción

Los equipos tienen un límite de 4 miembros por equipo, esto quiere decir que una persona puede presentarse de forma individual o juntandose con otros 3 coleguillas más. Es asumido que una aplicación realizada por una sola persona tendrá mucho más mérito que otra hecha por 4 pero esto no se tendrá encuenta a la hora de juzgar, ya que así fomentamos un poquillo el tema de las relaciones personales :D

A partir de la fecha de publicación de este post, teneis un periodo de 4 días para formar los equipos e inscribiros (es decir a partir del jueves de esta semana a las 24:00, ya no se aceptarán solicitudes). Una vez que tengais claro con quien vais a participar, mandadme un mensaje privado, con el nombre del equipo, los miembros que lo forman y el capitán del mismo, el cual será el encargado de de comunicarse con la "organización" (formada por Whose y yo). Tras los 4 días de inscripción se comunicará la fecha en la que se tendrá que entregar la aplicación así como la misma.

Motivación

Sin duda la principal motivación para realizar este campeonato no es más que las ganas de programar y de aprender teniendo un objetivo que alcanzar, la inscripcion es gratuita así que que se abstengan aquellos que busquen beneficio económico de esta propuesta.

Consejos

Yo daría un consejo por encima de todos, y es que la organización es esencial, por lo que el reparto de tareas dentro del equipo puede resultar determinante para obtener el éxito. Así uno puede encargarse del código, otro del diseño gráfico otro de montar un servidor, etc....

Y sin mas INVITAR a toda la gente a que se anime, la aplicación no será complicada, aunque luego cada uno lo pueda complicar a su manera.

Para cualquier consulta msg privado a Whose ó a mi.

PD: Cualquiera de las normas anteriormente comentadas podrán ser modificadas atendiendo a consejos o sugerencias de los participantes, durante estos cuatro días que dura el proceso de inscripción, puede ponerse en este post las posibles sugerencias que tengais, si estas tienen respaldo por el resto de competidores se tendran en cuenta.

EnZo

Espero impaciente...

SeiYa

Busco equipo xD ¿alguien interesado? estudio 3º de ingeniería informática y tal y cual ... lo que sea pues una firma o un mp XD

Supongo que cuando dices logaritmos te refieres a algoritmos...

Un saludo XD

IS4kO

Si, ya está corregido, me refería a algoritmos ;)

ZurIchK

JUZGADO? JURADO :D

yo tb busko ekipo, me ofrezco como animador o conejillo de indias,,

enserio ;)

snoozed21

Esto promete xD , si no tubiera k estar haciendo examenes hasta junio me apuntaria xD

LOc0

Si IS4KO y Whose van a participar en el concurso me parece que sería más justo que se publicara el enunciado del problema YA.

Salu2 ;)

A

Genial !. Si encuentro algo de tiempo disponible (que no será fácil), contad conmigo.

IS4kO

Nosotros, o yo por lo menos, no voy a participar por falta de tiempo :(

Lo justo creo que es dar unos cuantos días hasta el jueves para que toda la gente se de por enterada de que comienza el campeonato y luego todos a pensar a la vez. :)

Hasta el momento no todos los que decís que quereis participar me habeis mandado mensaje, por favor los que esteis interesados, hacedlo para que quede constancia de ello.

LOc0

/\
||
"Cagon to", a ver si al final vamos a ser 4 gatos :(

Lo del tiempo pillado es normal. La mayoría de los que vayamos a participar o bien estamos en la uni o trabajando (o ambas cosas).
Yo en principio este mes estoy más aliviado y aprovecharé para participar.

Salu2 ;)

PD: De momento no te he mandado el privado porque estoy a la espera de que me contesten para formar equipo.

IS4kO

Se me acaba de ocurrir una aplicación a realizar bastante interesante, y tal vez mucho mas complicada de lo que tenía pensado que me ha motivado a inscribirme :), por lo que publico ya la aplicación, para que le vallais dando vueltas al coco

Edito el #1 exponiendo la aplicación

LOc0

La aplicación consistirá en que meteremos dos imágenes cuales quiera a la aplicación y esta nos tendrá que decir, que % de igualdad hay entre ellas. Es decir que si meto dos imágenes iwales, la aplicación debería decirme que tienen una semejanza del 100%.

Lo veo muy complejo, la verdad. Para empezar, ¿según qué escala mediremos ese % de igualdad?

Salu2 ;)

IS4kO

bastante complejo, si, pero sin dificultad no hay emoción, he leido algun articulo en los que existen algoritmos de comparacion de imágenes basadas en datos estadísticos.....

Que cada uno compare, atendiendo a su criterio y capacidad.

Por ejemplo yo llego y me digo que voy a fijarme en 3 criterios para asemejar las dos imagenes

1º El titulo
2º El autor
3º El creador

Luego que cada uno instaure los criterios que considere oportunos.....

Letto

Con el Matlab se pueden hacer cosas de este estilo y de hecho en su día hice una práctica con cierto aire de lo que pides. Foto a un botón y mirar si está dentro de los parámetros aceptables (diametro de los agujeros, distancias entre ellos, etc...

IS4kO

POs ale a hacer nuestro propio matlab :D

0buS

la virgen. exponer los trabajos en este hilo, que yo no tengo ni idea de programación pero quiero ver los progresos que haceis, si no es molestia :D

Sagrath

yo me presento, no digo las herramientas que si no ya pierdo xD

LoRTH

Aixxxx yo me queria apuntar, pero creo que esto esta a otro nivel... 2 trimestre de 1º de ing. electronica, :'( A ver si esto sigue el año que viene, que me cojere programacion 2.. :D

EnZo

yo participaria, pero no conozco un lenguaje capaz de hacer lo que se pide :/

LOc0

#19

Es que esto más que un concurso de programación pasa a convertirse en un concurso de MATEMÁTICAS (Si es que pretendemos hacer algo SERIO).

¡Suerte a to2 y que gane el mejor :)!

Salu2 ;)

A

Complicado, pero creo que lo intentaré. Es un reto curioso.

ChemicalX

yo no me presento pq no se mucho, pero vamos, que podriais hacer el concurso con la practica q tengo q entregar dentro de dos semanas xDD

IS4kO

Enga chavales todo es ponerse :) he propuesto este reto pq creo que no hay muchos programas que consigasn realmente analizar una imagen "desde dentro" por así decirlo....

No creo que haya alguien que lo consiga totalmente, pero iwal si que podemos conseguir acercarnos a algo, y de ahí el reto...

Es bastante complicado si, pero es que sino donde está la motivación para hacerlo??

HASTA EL MOMENTO SOLO UNA PERSONA ME HA MANDADO EL MENSAJE DE INSCRIPCIÓN POR FAVOR TODOS AQUELLOS QUE DECIS QUE LO VAIS A INTENTAR, MANDADME EL MISMO CON EL EQUIPO, NOMBRE, CAPITAN...

0x666

pasandoo.... paso de programar y cear algo para que despues unos niñatos critiquen sin saber apenas programar.
gL

HangmaN

voy a postear una pequeña pista, a ver si asi se anima alguna persona mas (realmente nose si lo que voy a dcir es totalemente cierto, soz si me ekivoco).
Hace nada he empezado una clase : Tecnologia de la Imagen, en el que se decia que una imagen es una matriz nxm pixeles donde se almacena el brillo de la imagen para cada pixel, si es en blanco-engro. Y el RGB si es en color, asi si supiera como hacer que el programa transforme la imagen en una tabla, haciendo una serie de recorridos comparando las dos tablas se podria saber si dos imagenes son iwales o no y demas... aporto esto mas bien como base teorica o algo :P

0x666

y por que no creamos un IDS? algo realmente util y de donde se puede sacar una buena tajada.
O un mod para el hl2 o doom3... o mejor dicho un juego entero aprobechando el motor grafico del doom3.
La idea cambia en vez de hacer un estupido concurso en crear algo juntos.

IS4kO

#24; #26

Tu intención con esos dos posts cual es??

a) Insultar a aquellos que no conoces diciendo que son/somos niñatos que no tienen ni idea?. . . .

b) Intentar buscar amigos que te ayuden a hacer un juego que use el motor gráfico de doom3?

c) Simplemente te aburrías y has puesto la primera de las jilipolleces que te rondan la cabeza?

Bueno, lo de siempre.... /i

gF

#25 Te acercas a lo que sería la solución sencilla del problema, comparar cada pixel de las imágenes, pero esta no es ni mucho menos una solución que vaya a dar muy buenos resultados.
Yo he estudiado la asignatura de Procesamiento Audiovisual y creo que este no es un reto muy adecuado puesto que para que salga algo decente habria que realizar muchos procesos a las imagenes y la verdad creo que eso ya es demasiado "profesional".
Pero vamos que la solución sencilla no creo que sea más larga de 50 lineas en C o C++, aún así, esta solución tendría un problema y es que las imágenes sean de distinto tamaño, entonces se compararían 2 matrices de distinto tamaño lo cual no seria correcto, habria entonces que redimensionar una de las imágenes...
Para "transformar" la imagen en una matriz como tu dices lo unico que hay que hacer es importar una libreria grafica y abrir la imagen con la función de la libreria que se utilice para abrir imagenes, esta ya te devolverá la imagen en una matriz.

Pero vamos, no veo este reto factible para alguien que no haya estudiado "Procesamiento Audiovisual" o alguna asignatura del estilo...

IS4kO

Veo que no tiene muchos adeptos este reto por el número de inscripciones, si preferis se podemos cambiarlo...

gF

PROPONGO UN RETO MAS ADECUADO:

Este reto se propuso el año pasado en la asignatura "Algoritmos y Estructuras de Datos" de la Universidad de Murcia y yo fui el ganador:

PRESENTACION

Un maestro decide aprovechar sus proverbialmente largas vacaciones para hacer turismo por España; tanto que piensa que tendrá tiempo suficiente para visitar por todos los pueblos, ciudades, aldeas, villorios, urbes y caseríos de la península. Pero como no tiene el sueldo de un ministro y el precio del petróleo está por las nubes (antes cúmulos, ahora cirros) tendrá que planificar al milímetro la ruta a seguir para minimizar la distancia total recorrida. Con mucha paciencia se ha creado un mapa con los más de 1000 sitios a visitar, incluyendo las carreteras nacionales y comarcales que los unen. Comoquiera que reside en Murcia, su ruta deberá empezar y acabar en la capital murciana.

EL PROBLEMA

Dado un grafo no dirigido, conexo y etiquetado con pesos enteros, encontrar el ciclo de menor coste que visite todos los nodos por lo menos una vez. Es decir, el ciclo debe pasar por todos los nodos del grafo una o más veces. Se pueden repetir las aristas del ciclo. Además, el ciclo debe empezar y acabar en un nodo fijado de antemano.

imagen de ejemplo: http://dis.um.es/ginesgm/grafopeque.gif

ENTRADA

La descripción del grafo de ciudades y carreteras viene dada en el fichero de texto entrada.txt, que tiene el siguiente formato. La primera línea contiene un único número, N, que indica el número total de nodos del grafo. La siguiente línea contiene otro entero, M, que indica el número de aristas del grafo. La tercera línea también contiene un único entero, F, que indica el nodo que debe ser inicio y fin del ciclo. Los nodos del grafo son numerados desde 1 hasta N.

A continuación vienen N líneas, una por cada nodo. Cada línea i-ésima contiene dos enteros separados por un espacio en blanco: Xi, Yi, que indican las coordenadas relativas de la ciudad i-ésima en el mapa. Esta información se ofrece simplemente a efectos de visualización del grafo.

Finalmente vienen M líneas, una por cada arista del grafo. Cada línea contiene tres enteros separados por espacios en blanco: U, V, C, siendo U y V los nodos unidos por la arista y C el coste de la misma. Recordar que el grafo es no dirigido, por lo que la arista (U, V) y la (V, U) son la misma.

SALIDA

La salida debe ser un fichero de texto con el siguiente formato. La primera línea contendrá un único número entero, P, que indicará el coste total del ciclo encontrado (es decir, la suma de los costes de las aristas por las que pasa). La siguiente línea contendrá otro entero, T, que indicará el número total de nodos del ciclo, contando dos veces el nodo de comienzo y fin del ciclo. A continuación vendrán T líneas, cada una con un entero entre 1 y N, que indicarán los sucesivos nodos del ciclo encontrado. La primera y la última de estas líneas deberán tener necesariamente el valor F, que corresponde al nodo de Murcia.

FICHEROS

fichero de entrada: http://dis.um.es/ginesgm/files/doc/entrada.txt

programa para comprobar la solucion (en C):
http://dis.um.es/ginesgm/files/doc/comprobar.c

El año pasado yo gané consiguiendo un camino de coste 24597, ni que decir tiene que cuanto menor sea el coste, mejor es la solución. Mi solución no es optima y se pueden encontrar caminos de 21xxx (posiblemente tb aún mejores)

Tema cerrado