Ik zit met een dilemma met betrekking tot het maken van een automatische groepsindeling.
Het probleem is ongeveer zo:
We hebben een grote groep van ongeveer 400 - 500 personen. Tijdens de inschrijving hebben zij uit 16 interesses er een aantal moeten aankruisen. Het aantal aangekruiste vakjes is niet vastgelegd.
Deze personen moeten vervolgens automatisch geroosterd worden dat ze twee interesses volgen die ze hebben aangegeven en eentje welke ze niet hebben aangegeven. Ze kunnen dezelfde interesse maar een keer volgen. In totaal zijn er drie sessies (ze hebben dus continu iets te doen). Groepen zijn gelimiteerd op een aantal, wat wisselt bij iedere interesse, wel gelijk door tijd. Uit het systeem moet een rooster komen wat per persoon aangeeft welke interesses hij/zij in welke volgorde moet doen.
Per persoon staat in een database wat hij/zij wilt doen. Ook de capaciteit staat in de database. De database is een MySQL database.
Probleem: ik heb geen idee hoe dit te doen. Ik kan wel iedere persoon uit de database halen en aan zoveel mogelijk koppelen, maar mogelijk kunnen dan de laatste personen helemaal niet meer gekoppeld worden. Is hiervoor een handig algoritme om te gebruiken of bieden sommige databases deze functionaliteit direct?
Veel Googlen levert namelijk niet echt iets relevants op en ik zit met de handen in het haar na veel gedoe. Eventueel kan ik ook wel een Java applicatie klussen als PHP totaal ongeschikt blijkt te zijn. Ik wil het in ieder geval wel zelf maken of freeware gebruiken gezien er 0,0 budget is voor een aankoop
In short: wat is de meest efficiënte manier om dit te doen?
Het probleem is ongeveer zo:
We hebben een grote groep van ongeveer 400 - 500 personen. Tijdens de inschrijving hebben zij uit 16 interesses er een aantal moeten aankruisen. Het aantal aangekruiste vakjes is niet vastgelegd.
Deze personen moeten vervolgens automatisch geroosterd worden dat ze twee interesses volgen die ze hebben aangegeven en eentje welke ze niet hebben aangegeven. Ze kunnen dezelfde interesse maar een keer volgen. In totaal zijn er drie sessies (ze hebben dus continu iets te doen). Groepen zijn gelimiteerd op een aantal, wat wisselt bij iedere interesse, wel gelijk door tijd. Uit het systeem moet een rooster komen wat per persoon aangeeft welke interesses hij/zij in welke volgorde moet doen.
Per persoon staat in een database wat hij/zij wilt doen. Ook de capaciteit staat in de database. De database is een MySQL database.
Probleem: ik heb geen idee hoe dit te doen. Ik kan wel iedere persoon uit de database halen en aan zoveel mogelijk koppelen, maar mogelijk kunnen dan de laatste personen helemaal niet meer gekoppeld worden. Is hiervoor een handig algoritme om te gebruiken of bieden sommige databases deze functionaliteit direct?
Veel Googlen levert namelijk niet echt iets relevants op en ik zit met de handen in het haar na veel gedoe. Eventueel kan ik ook wel een Java applicatie klussen als PHP totaal ongeschikt blijkt te zijn. Ik wil het in ieder geval wel zelf maken of freeware gebruiken gezien er 0,0 budget is voor een aankoop
In short: wat is de meest efficiënte manier om dit te doen?