Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

EL PROBLEMA MAS DIFICIL DE RESOLVER EN ESTE FORO(Distribucion Equitativa SQL SERVER)

Estas en el tema de EL PROBLEMA MAS DIFICIL DE RESOLVER EN ESTE FORO(Distribucion Equitativa SQL SERVER) en el foro de SQL Server en Foros del Web. Buenas Tardes, Tengo el siguiente problema, deseo crear en sql server un procedimiento en el cual pueda realizar una insercion equitativa, para una agencia que ...
  #1 (permalink)  
Antiguo 11/09/2011, 00:46
 
Fecha de Ingreso: septiembre-2011
Ubicación: santafe
Mensajes: 1
Antigüedad: 12 años, 7 meses
Puntos: 0
EL PROBLEMA MAS DIFICIL DE RESOLVER EN ESTE FORO(Distribucion Equitativa SQL SERVER)

Buenas Tardes,


Tengo el siguiente problema, deseo crear en sql server un procedimiento en el cual pueda realizar una insercion equitativa, para una agencia que asigna empleos a trabajadores la idea es la siguiente:

tengo tres nombres de trabajadores de servicios:

Pablo Varela(pintor), Jose Cardoza(pintor), Mario Ramirez(pintor), Jose Mejia(Carpintero), Mario Galvez(Carpintero)

tengo las siguientes oportunidades de trabajo con las cantidades a pagar por cumplirlo:

pintor1 (2,000), pintor2 (1,500), pintor3 (5,000), pintor4 (700), pintor5 (1,400), pintor6 (3,450) pintor 7 (5,789) pintor8 (2,454) pintor9 (7,644), carpintero1 (4,034), carpintero2 (3,457), carpintero3 (500), carpintero4 (900), carpintero5 (1,779), carpintero6 (6,543)


De que manera puedo hacer, para lograr distritribuirles de forma mas equitativamente posible (aproximada) el trabajo, es decir que ellos se les puedan asignar los trabajos de manera que la cantidad de dinero que reciban sea lo mas equitativamente posible, se q puedo clasificar los empleos en (Pintor y Carpintero) y asignarselos, ahi no tengo problemas, pero el problema es darselo de forma equitativa de manera que todos reciban la misma cantidad de trabajos disponibles es decir:


hay 9 trabajos de pintor y tengo 3 pintores por lo tanto a cada uno le corresponde 3 trabajo a cada uno, pero como les asigno tomando en cuenta las cantidades de pago como les asigno los empleos lo mas equitativamente posible.

en el caso del carpintero hay 6 empleos disponibles y tengo 2 carpinteros, por lo tanto a cada uno le corresponde 3 empleos a cada carpintero.


existe alguien q me pueda ayudar



Saludos,
  #2 (permalink)  
Antiguo 12/09/2011, 15:33
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: EL PROBLEMA MAS DIFICIL DE RESOLVER EN ESTE FORO(Distribucion Equitativa S

Hola youtvonline...

Tal como lo planteas en el título este podrías ser considerado uno de los problemas más difíciles que se han expuesto en este foro, ya que podría ser considerado un problema NP-completo (como el problema de la mochila o el problema del vendedor viajante), pues entre más elementos tengas en cada uno de los grupos, el número de soluciones posibles crece de manera exponencial, resultando en ocasiones imposible de llegar a la solución óptima del problema.

Por ejemplo, dices en tu post que si tienes 6 trabajos para dos carpinteros das por supuesto que la solución óptima sería asignar tres trabajos para cada carpintero, pero imagina que tienes la siguiente información.

Trabajo 1 (5 días)
Trabajo 2 (1 día)
Trabajo 3 (1 día)
Trabajo 4 (1 día)
Trabajo 5 (1 día)
Trabajo 6 (1 día)

Aquí la solución optima sería asignar el trabajo 1 a un trabajador y los 5 trabajos restantes al otro trabajador, por lo que te podrás dar cuenta que no es una solución trivial.

Aquí valdría la pena preguntarte qué tan crítico es esta operación para tu sistema y si puedes por ejemplo implementar algún tipo de asignación manual de las tareas, para no tener que programar alguna solución informática.

Saludos
Leo.
  #3 (permalink)  
Antiguo 12/09/2011, 17:05
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: EL PROBLEMA MAS DIFICIL DE RESOLVER EN ESTE FORO(Distribucion Equitativa S

Y agregando mas "Posibles variables", podria ser que el trabajo (1) = 3,000 usd (la paga), pero el trabajo 2, sea de 5,000 usd (la paga), entonces, entra en juego el factor SUELDO, ¿cierto?
__________________
MCTS Isaias Islas

Etiquetas: distribuciones, equitativo, server, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:22.