Die Suche ergab 11 Treffer

von tian
Freitag 19. Januar 2024, 19:07
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Wenn ich mein Problem mit Hardware erschlagen und mit einer 100 Item Liste umgehen kann wäre das gut genug.

Lt. meinem Mathematiker Kollegen gibt es keine optimale Lösung für das sog. Rucksack Problem, als alles zu probieren.

Python nehme ich, weil ich es einfach nebenbei wieder erlernen wollte ...
von tian
Freitag 19. Januar 2024, 18:05
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Hab heute mal ein paar Graphen mit Cores vs. Chunks gemacht. Folgen noch...

Musste auch in meine Windows Umgebung umziehen Jupyter Notebook war zu instabil.

Wie misst du denn den Speicherbedarf? Ich schaue im Taskmanager bei Details auf maximalen Speicher im Python Prozess.
von tian
Freitag 19. Januar 2024, 08:47
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Ich werte 'res' im nachhinnein aus:


# my little children
def process_index2(data, index):
if sum(int(data[idx][8]) for idx in index) > min_sum and sum(int(data[idx][2]) for idx in index) < max_total_price :
return(index)

# send the children to work
with futures.ProcessPoolExecutor(max_workers ...
von tian
Freitag 19. Januar 2024, 07:42
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Uuuh, mit euren Tipps habe ich im Moment einen lauffähigen parallelen Code. THX , aber dazu später mehr...

Was Parallelisierung und Memory angeht:
Habe gestern eine 50 Elemente-Liste (10.272.278.170 Kombinationen) mit 8 Workern und 100.000er Chunks laufen lassen. Die ist aber nach ein paar Stunden ...
von tian
Mittwoch 17. Januar 2024, 10:22
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

1000000x Danke @Qubit! Das sieht sehr gut aus.

Versuche gerade testweise meinen Datensatz zu integrieren, der ist aber in den Child-Prozessen ja nicht lesbar.


import csv

def read_csv(file_path):
data = []
with open(file_path, 'r') as csvfile:
csvreader = csv.reader(csvfile)
for row in ...
von tian
Dienstag 16. Januar 2024, 14:22
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

sleep: Ich habe das mit meinem abgespeckten Datensatz aus einer Kombinaton 10 aus 30 laufen lassen (30 Mio Varianten). Da verringert sich die Laufzeit von 53s (1 core) auf 28s (4 cores).

Leider bleibt mein Jupyter Notebook bei Datensätzen > 30 schnell hängen. Mir ist unklar warum. Hmmm. Ich tue ...
von tian
Dienstag 16. Januar 2024, 06:49
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Ich 'lerne' mich langsam ran.

Mit multiprocessing konnte ich nun in einem Testcase tatsächlich zeit einsparen. Ich habe Child-Processe mit einem sleep=5. Führe ich alle Combinations von 2 aus 4 Elementen aus (=6), dauert mein Skript 30s. Mit 6 Child-Prozessen nur noch 5. Wahnsinn!

Wichtig: ich ...
von tian
Montag 15. Januar 2024, 11:18
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Vielen Dank für alle eure Tipps!!!! Nur nochmal um es klarzustellen: ich bin blutiger Anfänger, der viele Ressourcen über jupyter Notebook ansteuern kann. In meinen 180 Zeilen Code stecken bestimmt schon 20h Arbeit u.A. mit Hilfe von ChatGPT :-). Noch mehr bzw. andere Tools und Bibliotheken (Fortran ...
von tian
Sonntag 14. Januar 2024, 09:39
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

@blackjack. Okay, berechnen kann ich die Anzahl der Kombinationen natürlich. Dachte ich kann einfach die Anzahl der Elemente in "results" auslesen. Das wäre natürlich einfacher.

Konkret zur Aufgabe:
ich habe eine Liste mit 50-600 Spielern. Jeder davon hat einen Preis, eine Leistung, einen Verein ...
von tian
Freitag 12. Januar 2024, 21:31
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

Re: brute force und Rechenzeitverkürzung

Ihr müsst wissen ich habe seit 10 Jahren nicht programmiert. Ist für mich gerade wie als wenn Mama den Zylinderkopf wechseln muss. Haha

Hab jetzt itertools combinations im Einsatz. Die Combis erstellen geht echt flott, aber mit diesen Indizes meine Daten prüfen ist, was dauert. Das müsste doch ...
von tian
Freitag 12. Januar 2024, 08:57
Forum: Allgemeine Fragen
Thema: brute force und Rechenzeitverkürzung
Antworten: 31
Zugriffe: 7041

brute force und Rechenzeitverkürzung

Hallo.

Allem voran: ICH BIN EIN PY-NEULING! Also bitte verzeiht mir meinen Wissensstand.

Ich möchte aus einer Liste mit n Elementen alle 10-stelligen Kombinationen erstellen. Das wird also hinlänglich zeitaufwändig. Im Moment mache ich das wie folgt:


for i in range(2 ** len(data)):
selected ...