Archief - [PROG] intersectie berekenen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

dee

Legacy Member
Ik heb 2 vergelijking waarin mijn variable voorkomt. Ik wil die variabele eruit halen maar dat is wiskundig onmogelijk. Ik moet ze dus itereren en met elkaar vergelijken tot ze binnen bepaalde grenzen van elkaar vallen.

De theorie is gemakkelijk. De uitwerking niet. Mijn programma moet iets simuleren en heel veel keren achter elkander. Ik heb een berekeningstijd nodig van miliseconden. Is er iemand die speciale algorithmes heeft daarvoor?

Ik heb de meest primitieve versie al proberen te maken maar ze voldoet niet. Enerzijds mag ik mijn iteratiestappen niet te groot maken want dan kan het zijn dat ik over mijn grenzen spring zonder ertussen te komen (oneindige loop tot gevolg) maar anderzijds mag ik ze niet te klein nemen want dan kost het mij veel te veel tijd.

Ik werk met Labview maar het maakt niet uit met welke taal of methode je afkomt. Ik heb toch maar het principe nodig. Ik kan eventueel wel C code gebruiken in Labview. (dan moet ik wel zien of dat oproepen met vertragingen geeft)

killgore

Legacy Member
bedoel je nu een stelsel oplossen naar 1 van de variabelen ? Dan is het simpelweg matrixrekening he (en gereduceerde vormen).

Of uit die 2 vgln een 'gebied' bepalen waaraan uw variabele voldoet (bv. snijding van 2 vlakken -> krijg een rechte)?

wxphe

Legacy Member
Ik weet niet zeker of het je kan helpen dusja ik post het maar :). Kun je hier geen neurale netwerken op gaan toepassen ? Ik zal voorbeeld geven hoe ik zou proberen (geen succes gegarandeerd) :).

-Bepaal een min en een max (mag extreem groot zijn)
-Laat de pc at random zo'n 100 waarden nemen en vul elke waarde in in beide functies
-Rankschik deze volgens de gezondste oplossingen, hier waarschijnlijk =>(Uitkomst f1 - uitkomst f2) moet naderen naar 0.
-Nu staat de beste random gekozen waarde bovenaan en de zwakste onderaan
-Nu laten we de computer niet meer at random kiezen, maar bepalen we de waarden uit puntje 2 zelf als volgt =>
-Combineer de beste oplossingen met elkaar en gebruik de beste waarden meerdere keren: voorbeeld van combineren in dit geval =>
  • Waarde1: Het gemiddelde van de 1ste en de 2de input uit je klassement
  • Waarde2: De eerste met de 3de
  • Waarde3: De 2de met de 3de
  • ...
Vul deze lijst zo verder aan met zo gezond mogelijke combinaties, tot waarde 97-98 ofzo en laat de laatste 2-3 terug at random (kan zijn dat we een gebied over het hoofd zagen).
-Herhaal deze cyclus tot je vind het heeft lang genoeg geduurd (stel een max aantal cyclussen in) of je kan laten rekenen tot de eerste waarde in je klassement benaderend genoeg is. => Dus je voorwaarde is dan: f1 - f2 <= MijnVoorwaarde

Lijkt me hier toch toepasbaar en anders ik wilde maar helpen :D.

greetz

dee

Legacy Member
Ik zal het proberen.
Ik ben geen IT'er. Ik ben ingenieur en heb nooit zo'n problemen moeten behandelen.

Denk wel dat je wat te ver aan het zoeken bent. Tenzij het gemakkelijk te implementeren is.
Op het moment ben ik dit aan het proberen: Ruwe interpolatie met nauwkeurigheid van 1°C -> terug interpoleren tussen 2 grenswaarden ervoor bepaald maar dan met grotere nauwkeurigheid -> deze waarde invullen in de formule.

killgore

Legacy Member
iteratie duurt altijd lang, je moet eens met hydraulica programma's werken die turbulenties e.d. gaan berekenen, mag je vaak een minuut of 2-3 op een 'eenvoudige' berekening wachten.

Beste dat je kan doen is uw intervallen dynamisch maken, zodra je nadert maak je uw iteratieinterval kleiner ;). Verder kan ik niet echt iets zeggen, als je weet hoe te itereren weet je eigenlijk al exact wat je moet doen.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan