Startwaardes:
t = 0 (tijd)
A = 1
B = 1000
C = 1
D = 100000
E = 100
F = 5
A = floor(C / 50)
- wordt geupdate als C wordt bijgewerkt
B = B + round(A * Eu * 1000)
- wordt geupdate op een zelf te kiezen moment
- B_max = 50000
- E = E - Eu
C = C + 1
- wordt geupdate op een zelf te kiezen moment
- om + 1 te krijgen moet waar zijn: floor( Eu /(50/F) )=1 en floor(Du/100000)=1 (voor +2 bij beide formules = 2)
- E = E - Eu
- D = D - Du
D = D + B
- wordt geupdate voor iedere keer dat t gebeurt
E = E + 4 (iedere keer dat t gebeurt)
- wordt geupdate voor iedere keer dat t gebeurt
F = F + floor((A * Eu) / 200)
- wordt geupdate op een zelf te kiezen moment
- F_max = 15
- E = E - Eu
G = round(A * Eu)
- E = E - Eu
Ik ben proberen een systeem te beschrijven met de bovenstaande formules. Voor iedere variabelen (A t/m G) staat een formule opgesteld. Sommige hiervan worden automisch op een bepaalde tijd uitgevoerd andere op een zelf te bepalen moment.
Als bepaalde formules wordt uitgevoerd staat daaronder bij welke voorwaardes dat mag en welke andere formules ook uitgevoerd moeten worden.
Nu wil ik graag G op 10000 brengen in zo min mogelijk tijd. Nu kan ik gewoon wachten tot dat E 10000 wordt, want A = 1 in het begin, maar dit is een hele ineffectieve methode.
Ik kan dit versnellen door A te verhogen. Om dit te doen moet C verhoogt worden en daarvoor moeten D en E bepaalde waardes hebben bereikt. De startwaardes van D en E staan toe om dit 1x te doen (op t=0). Nu hoef ik nog maar (ongeveer) 5000 E te hebben.
Op een gegeven moment wordt C moeilijker om te verhogen omdat D eerder tegen een grens aanloopt dan E. Dit kan weer verbeterd worden door B.
Het -KAN- zijn dat E ook een beperkende factor wordt dan is het nuttig om F te gebruiken zodat er minder E nodig is om C te verhogen.
De oplossing hiervoor is niet 1,2,3 te vinden. Wat ik graag zou willen weten hoe ik dit probleem programmeer technisch het beste zou kunnen aanpakken. Ik heb het al zover ZONDER F erbij, maar nu ik deze zou willen toevoegen wordt het me te complex om nog overzicht te houden. Hoe kan ik nou bij zoiets makkelijk variabelen toevoegen en de effecten hiervan bekijken?
Zover ik het had had ik t tegen C uitgezet en dan een tabel gevuld met de bijhorende G waarde en dan maar zoeken in deze matrix wat de optimale oplossing was. Hoewel dit goed werkte weet ik niet of dit de beste oplossing is.
Het liefste zou ik een methode verkregen die me gewoon 1 oplossing uitgeeft die de beste is ipv een heleboel en dan zelf nog zoeken.
Ik denk dat het lastig is om dit systeem op te lossen omdat het niet continue is (bijvoorbeeld a verspringt alleen per 50 C) en de grafisch voorstelling een 4 dimensionaal figuur is ofzo (dat dus niet kan bestaan?).
Ik kan redelijk programmeren maar deze wiskunde gaat me toch de pet iets te boven. Ik zoek dus een aanpak of methode. Misschien weet iemand het hier en anders als je andere bronnen weet is dat ook fijn (programmeer forums of programmeer theorie).
P.S. Ik zet het in het PHP forum neer omdat ik het in PHP wil gaan maken.
t = 0 (tijd)
A = 1
B = 1000
C = 1
D = 100000
E = 100
F = 5
A = floor(C / 50)
- wordt geupdate als C wordt bijgewerkt
B = B + round(A * Eu * 1000)
- wordt geupdate op een zelf te kiezen moment
- B_max = 50000
- E = E - Eu
C = C + 1
- wordt geupdate op een zelf te kiezen moment
- om + 1 te krijgen moet waar zijn: floor( Eu /(50/F) )=1 en floor(Du/100000)=1 (voor +2 bij beide formules = 2)
- E = E - Eu
- D = D - Du
D = D + B
- wordt geupdate voor iedere keer dat t gebeurt
E = E + 4 (iedere keer dat t gebeurt)
- wordt geupdate voor iedere keer dat t gebeurt
F = F + floor((A * Eu) / 200)
- wordt geupdate op een zelf te kiezen moment
- F_max = 15
- E = E - Eu
G = round(A * Eu)
- E = E - Eu
Ik ben proberen een systeem te beschrijven met de bovenstaande formules. Voor iedere variabelen (A t/m G) staat een formule opgesteld. Sommige hiervan worden automisch op een bepaalde tijd uitgevoerd andere op een zelf te bepalen moment.
Als bepaalde formules wordt uitgevoerd staat daaronder bij welke voorwaardes dat mag en welke andere formules ook uitgevoerd moeten worden.
Nu wil ik graag G op 10000 brengen in zo min mogelijk tijd. Nu kan ik gewoon wachten tot dat E 10000 wordt, want A = 1 in het begin, maar dit is een hele ineffectieve methode.
Ik kan dit versnellen door A te verhogen. Om dit te doen moet C verhoogt worden en daarvoor moeten D en E bepaalde waardes hebben bereikt. De startwaardes van D en E staan toe om dit 1x te doen (op t=0). Nu hoef ik nog maar (ongeveer) 5000 E te hebben.
Op een gegeven moment wordt C moeilijker om te verhogen omdat D eerder tegen een grens aanloopt dan E. Dit kan weer verbeterd worden door B.
Het -KAN- zijn dat E ook een beperkende factor wordt dan is het nuttig om F te gebruiken zodat er minder E nodig is om C te verhogen.
De oplossing hiervoor is niet 1,2,3 te vinden. Wat ik graag zou willen weten hoe ik dit probleem programmeer technisch het beste zou kunnen aanpakken. Ik heb het al zover ZONDER F erbij, maar nu ik deze zou willen toevoegen wordt het me te complex om nog overzicht te houden. Hoe kan ik nou bij zoiets makkelijk variabelen toevoegen en de effecten hiervan bekijken?
Zover ik het had had ik t tegen C uitgezet en dan een tabel gevuld met de bijhorende G waarde en dan maar zoeken in deze matrix wat de optimale oplossing was. Hoewel dit goed werkte weet ik niet of dit de beste oplossing is.
Het liefste zou ik een methode verkregen die me gewoon 1 oplossing uitgeeft die de beste is ipv een heleboel en dan zelf nog zoeken.
Ik denk dat het lastig is om dit systeem op te lossen omdat het niet continue is (bijvoorbeeld a verspringt alleen per 50 C) en de grafisch voorstelling een 4 dimensionaal figuur is ofzo (dat dus niet kan bestaan?).
Ik kan redelijk programmeren maar deze wiskunde gaat me toch de pet iets te boven. Ik zoek dus een aanpak of methode. Misschien weet iemand het hier en anders als je andere bronnen weet is dat ook fijn (programmeer forums of programmeer theorie).
P.S. Ik zet het in het PHP forum neer omdat ik het in PHP wil gaan maken.