Ik heb een integer lineair programmeringsprobleem (ILP), omdat probleem op te lossen gebruik ik een heuristiek. Om nu te testen of die heuristiek goed werkt wil ik het gaan toepassen op een klein probleem waarvoor ik gewoon alle mogelijke oplossingen kan nagaan. Mijn probleem is nu hoe ik nu alle mogelijkheden kan afgaan.
Het probleem is als volgt:
-Ik heb X verschillende knikkers
-Ik heb Y zakken
-In elke zak kunnen Z knikkers (voor elke zak kan het anders zijn)
-Het aantal knikkers dat ik heb is gelijk aan het aantal dat in alle zakken past
Ik kan nu op ongelofelijk veel manieren de knikkers verdelen over de zakken. Ik wil al die mogelijkheden nagaan. Voor een klein probleem is dat misschien nog te doen.
Voorbeeldje:
-Ik heb 14 knikkers
-Ik heb 3 zakken
-In zak 1 passen 4 knikkers
-In zak 2 passen 4 knikkers
-In zak 3 passen 6 knikkers
Nu is het aantal mogelijkheden volgens mij een heleboel (misschien kan iemand ff neerzetten hoeveel+berekening, heb nooit WisA gehad, en dat kun je dan wel merken!)
Maar hoe ga ik alle mogelijkheden af? Hoe programmeer ik dat (gewoon in pseudo-taal).
Ik heb de knikkers in een array staan.
De knikker-zakken staan in een array van array's. Dimensie1=aantal zakken, dimensie2=aantal knikkers dat in zak Z past.
Het probleem is als volgt:
-Ik heb X verschillende knikkers
-Ik heb Y zakken
-In elke zak kunnen Z knikkers (voor elke zak kan het anders zijn)
-Het aantal knikkers dat ik heb is gelijk aan het aantal dat in alle zakken past
Ik kan nu op ongelofelijk veel manieren de knikkers verdelen over de zakken. Ik wil al die mogelijkheden nagaan. Voor een klein probleem is dat misschien nog te doen.
Voorbeeldje:
-Ik heb 14 knikkers
-Ik heb 3 zakken
-In zak 1 passen 4 knikkers
-In zak 2 passen 4 knikkers
-In zak 3 passen 6 knikkers
Nu is het aantal mogelijkheden volgens mij een heleboel (misschien kan iemand ff neerzetten hoeveel+berekening, heb nooit WisA gehad, en dat kun je dan wel merken!)
Maar hoe ga ik alle mogelijkheden af? Hoe programmeer ik dat (gewoon in pseudo-taal).
Ik heb de knikkers in een array staan.
De knikker-zakken staan in een array van array's. Dimensie1=aantal zakken, dimensie2=aantal knikkers dat in zak Z past.
[ Voor 10% gewijzigd door Oscar Mopperkont op 10-07-2003 14:15 ]
