solucion a problema de asignacion de salas

Horst H. von Brand vonbrand en inf.utfsm.cl
Sab Oct 14 20:30:14 CLT 2006


Rodrigo Fuentealba <darkprox en gmail.com> wrote:
> El 14/10/06, Roberto Bonvallet<rbonvall en alumnos.inf.utfsm.cl> escribi贸:
> > Rodrigo Fuentealba:
> > > El 14/10/06, Horst H. von Brand<vonbrand en inf.utfsm.cl> escribi贸:
> > > >Rodrigo Fuentealba <darkprox en gmail.com> wrote:
> > > >> El 13/10/06, Mauricio Aburto<miruxxx en hotmail.com> escribi贸:
> > > >> > alguien tiene alguna aproximacion a la solucion de asigancion de
> > > >> > salas para horarios disponibles de profesores y alumnos,
> > > >> > algun tipo de algoritmo o heuristicas para encontrar alguina
> > > >> > solucion. de ante mano muchas gracias.

> > > >> Parece un OT, pero... con bases de datos?

> > > >Como lo harias?

> > > Usando muchas, muchas, muchas matrices tridimensionales formadas por
> > > relaciones entre tablas, tablas que se relacionan con relaciones, y
> > > usando tablas temporales para chequear cosas como "el curso tal tiene
> > > ocupadas esas horas".

> > Un PhB te la compra, pero yo soy ingeniero :)

Me adhiero.

> 驴y qu茅? conozco personajes que son psic贸logos y programan mejor que
> muchos ingenieros que conozco.

Y?

> > Teniendo todas tus tablas listas, 隆a煤n falta el algoritmo para resolver el
> > problema!

> pero el algoritmo es de ordenamiento, y no veo que tengamos que usar
> m谩s de seis u ocho condicionales... Perfectamente podemos hacer esa
> l贸gica en PL/PgSQL...

Claro que puedes hacer la logica (al final, es revisar si las condiciones
se cumplen, y probar (sistematicamente) diversas alternativas; el problema
es facil de representar y es sencillo evaluar si tienes o no la solucion,
encontrar una (o la mejor) es otro cuento /muy/ diferente).

Si, lo se por experiencia propia. Es la clase de problemas que en las Ues
lo mira un "ingeniero", lo considera trivial y (tal vez luego de tirarle
dedo y aburrirse pronto) termina en manos de alguna pobre secretaria, a la
que para remate consideran incompetente porque no es capaz de resolverlo en
un par de horas... cuando (con las herramientas a mano de una planilla de
calculo y a dedo) es algo que facilmente toma semanas o meses de trabajo.

Si quieres saber lo que es un problema "trivial de resolver" para el cual
/no/ se conocen algoritmos de rendimiento razonable (y llevan unos 300
an~os de cabeza tratando de encontrar alguno), busca 3SAT.

[...]

> > Ademas, todos sabemos que la solucion optima es usar Web2.0 + Ajax +
> > tres capas.

> je je je je... 驴te hago pebre?

Con que objeto? No reconoces el sarcasmo cuando lo ves?

[...]

> Ante esta breve taza de caf茅 explicando el gran error de usar ajax
> para algo tan simple,

Ve y toma el ramo de Informatica Teorica (o Algoritmos, o Complejidad,
o..., se transa bajo varios nombres), estudia lo que es NP-completo (en una
de esas <http://en.wikipedia.org/wiki/NP_complete> te convence). /No es un
problema simple/. Saber que hay problemas que /no/ pueden resolverse via
programas (en principio, o incluso suponiendo que tienes tiempo y demas
recursos a gusto) es una de las cosas que todo programador /tiene/ que
aprender...

>                        que era totalmente off topic con relaci贸n al
> thread, que continue la m煤sica.

Eso!
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile               Fax:  +56 32 2797513


M醩 informaci髇 sobre la lista de distribuci髇 Linux