Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Programme zur Systemerstellung
#11
Hallo Pronto,
dort hat sich ein kleiner Gedankenfehler eingeschlichen:

P3: auf diese Art ermittelst du nicht 5 aus 5, sondern eben 5 aus 6. :was:

Du ermittelst damit Reihen, die bei 6 getroffenen Zahlen unter deinen 10 eben "einen" der sechs möglichen 5er beinhalten und nicht alle.

Für deine gewünschte 5 aus 5 Abdeckung benötigst du eine Liste aller möglichen 5 aus 5 Kombinationen aus 10 Zahlen (252 Möglichkeiten).
Deine erste 6er Reihe deckt aus dieser 5 aus 5 Liste nun 6 (die maximal mögliche Anzahl) 5er ab.
Diese kannst du streichen. Das wiederholst du so lange, bis alle 5er aus der Liste gestrichen sind.
So wird dann auch deine Kombination 2-3-4-5-8 erfasst.
Je mehr 5er eine gewählte 6er Reihe neu abdecken kann, um so besser ist sie.

Suche also nach einer 6er Kombination, die trotz Streichung möglichst wieder die Maximalanzahl möglicher 5er abdeckt (6 Stück). So lange, bis du keine mehr findest.
Dann beginnst du wieder und suchst nach 6er Kombis die eben keine 6 aber so viele wie möglich noch nicht erfasste 5er abdeckt (5, 4, 3, ...).

Das ist die grobe Umschreibung eines Greedy (gierig) Algorithmus.
Suche nach der ersten 6er Kombination (hier aus 210), die die meisten(!) (gier) noch nicht abgedeckten 5er Kombinationen (hier aus 252) enthält.
Streiche alle durch die gewählte 6er Kombination abgedeckten 5er Möglichkeiten und beginne von vorne.
So lange, bis alle 5er Kombinationen (oder falls gewünscht nur eine bestimmte %-Zahl) abgedeckt bzw. aus der Liste gestrichen sind.

Du erinnerst dich an meinen "Programmiervorschlag" der Vergleichs- bzw. Zählfunktion ? Zwinker

Ein Greedy Algorithmus führt in der Regel schnell zu "einer" Lösung. Diese ist aber nur in ganz seltenen Fällen auch die "Beste".
Für dein Beispiel Greedy 56 Reihen, beste bekannte Lösung 50 Reihen.

Auch die 50 Reihen sind in diesem Fall mit einem modifizierten Greedy erreichbar. In dem du z.B. die Reihenfolge der möglichen 6er Kombis
oder die Auswahl bei gleicher Abdeckung (dort dann eben nicht die erste) zufällig änderst oder umdrehst oder...
Und deine bisherige Auswahl überprüfst, ob dort durch die Mehrfachabdeckung möglicher 5er eine Reihe wieder entfernt werden könnte, die nun weniger 5er abdeckt, als es eine andere noch nicht gewählte kann.

Das Ergebnis kann dann bei einem einmaligen Versuch auch schlechter ausfallen. Es bleibt eben durch die zufällige Anordnung der Startreihen ein Zufallsergebnis.
Und um "zufällig" ein besseres Ergebnis zu erreichen, sind halt mehrere Versuche nötig. Mist

Die meisten Programme arbeiten auf der Basis dieses simplen aber schnellen Greedy. Und probieren dann, durch mehr oder minder erfolgreiche "Versuche"
während der Erstellung oder später durch Austausch ganzer Reihen oder einzelner Zahlen, ein besseres Gesamtergebnis zu erreichen.
Dafür muss natürlich das Ergebnis immer wieder überprüft werden. Für solch eine Sklavenarbeit ist die Rechenpower eines PCs dann sehr nützlich. :top:

Andere Möglichkeiten, z.B. durch logische Zusammenführung bestehender Systeme neue zu erstellten, hat Wilfried gut in seinem Thread beschrieben (Nur zwei Mausklicks entfernt).
Diese Zusammenführung ist aber schon wieder mehr so eine Art Handarbeit oder eine programmgestütze Suche in einer Datenbank mit schon vorhandenen Systemen.

Schau dir aber auch mal die anderen Sachen an, die Wilfried beschrieben hat.
Lösungsansätze, um sich dabei vom Computer helfen zu lassen, werden dir sicherlich einfallen.

Schönes Wochenende.
Gruß Jaera
Ich wollte die Welt verändern, doch Gott gab mir den Quellcode nicht ! :]
Zitieren

#12
Hallo Jaera,

die beschriebene Methode von "Pronto451" für 10 Zahlen, Garantie 5 aus 6 habe ich implementiert und als Ergebnis 18 Reihen erhalten, 1 5-er war garantiert. Als ich diese Methode auch für 12 Zahlen angewandt habe, erhielt ich 68 Reihen: 2 5-er waren garantiert. Leider 1 5-er zuviel, ich wollte ja nur 1 5-er haben. Im Internet findet man für dieses System bereits 38 Reihen. Das theorethische minimum liegt bei 25 Reihen.

Du hattest für die Garantie 5 aus 5 einen Greedy Algorithmus beschrieben.

1) Gibt es einen Greedy Alg. für die Garantie 5 aus 6 oder eine andere Methode ?? Ich will nur 1 5-er haben.

2) Ist es möglich die 132 Reihen aus C(12,6,5,5) zu verwenden und mit einer Methode diese auf z.B 38 Reihen des C(12,6,5,6) zu kürzen ??

Gerade suche ich Informationen über "simulated annealing" um es fürs "Covering Design" einzusetzen. Bin bereits am googlen, aber wenn jemand einen brauchbaren Link hat bin ich dankbar.

Gruss Kosta.
Zitieren

#13
Hallo kosta,

schön, dass auch "Studierte" den Weg hier her finden.

Lang, lang ist es her, dass ich mich mit dem Thema deiner Anfrage auseinander gesetzt habe.

Pronto hat sich leider scheinbar Sang und Klanglos verabschiedet, nachdem ihm niemand direkt
eine Lösung für "sein" Problem in den Schoss geschmießen hat.
Obwohl er ja eigentlich sein "Wissen" teilen wollte ...

Es wäre schön, wenn du deine Erkenntnisse aus Studium und "Forschung" zwischendurch in eigenen Beiträgen
hier im Forum "veröffentlichen" würdest und damit das Forum bereichern könntest.

Damit wäre auch anderen (nicht Studierten) aus dem Forum die Möglichkeit gegeben, dir eventuell zu antworten.
Für eine Antwort besteht natürlich keine Garantie. Vielfach werden die Beiträge auch "nur" gelesen und die Informationen
mehr oder minder dankbar angenommen aber aus Angst vor einer eventuellen "Blamage" nicht geantwortet.
Doch manchmal können sich gerade aus unkonventionelle Antworten oder Fragen neue Erkenntnisse und Blickwinkel ergeben.

Zitat:1) Gibt es einen Greedy Alg. für die Garantie 5 aus 6 oder eine andere Methode ?? Ich will nur 1 5-er haben.

Es gibt nicht "den" Greedy-Algorithmus für 5aus5 oder "den" Greedy-Algorithmus für 5aus6.
"Greedy" beschreibt nur die "globale" Vorgehensweise.

Bei Prontos Weg benutzt du die Erste noch "freie", nicht verwendete Kombination, um weiter zu kommen.
Eigentlich der "schnellste" Weg um zu "einer" Lösung zu kommen.
Keine weiteren Prüfungen, stur die erste "Freie" aus Allen und Hurka.

Der Weg führt eventuell sogar zur "besten" Lösung. In den meisten Fällen aber nicht. Wie du schon festgestellt hast. Mist

Denn es kann sein, dass eine erst später auf der Liste stehende Kombination zum Zeitpunkt der Auswahl mehr "neue"
Kombis abdeckt als eben diese erste freie Kombination.

Wenn der Prozess später komplett durchlaufen ist und du dein System hast, dann sieht das mit den, durch die jeweilig
ausgewählten Reihen alleinig abgedeckten Kombinationen schon wieder ganz anders aus.
Im Laufe des Prozesses führt jede neu ausgewählte Reihe bei den bereits gewählten Reihen zur Veränderung der Anzahl von den,
nur durch diese Reihe alleinig, abgedeckten Kombinationen.

Das ist dir auch bei deinem Vorgehen 5aus6 für 12 Zahlen "passiert". Es kommt, wenn man bereits ausgewählte Kombinationen
zwischenzeitlich nicht überprüft, zur mehrfachen Abdeckung einzelner Möglichkeiten (z.B. in deinem Fall am Ende 2*5er).
Genauso können in dem "System" am Ende Kombinationen sein, die durch ebenfalls erfolgte Abdeckung von späteren Reihen,
gar keine "neuen" bzw. eben gar keine (0 Nummer) alleinige Abdeckung mehr enthalten und somit auch entfernt werden könnten.
Alle Kombinationen, die sie zum Zeitpunkt der Auswahl abgedeckt haben, werden auch von später gewählten nochmals abgedeckt.
Also überflüssig.


Ein Greedy-Algorithmus prüft vor der Auswahl erst mal, welche der noch "freien" Möglichkeiten die meisten(!) "neuen"
Kombinationen abdecken "würde". Er erstellt eine Art Favoriten-Liste neben der Liste aller noch zur Auswahl stehenden Kombinationen.
Er benötigt dafür natürlich auch noch eine aktuelle(!) Liste, welche gewünschten Kombination bereits abgedeckt sind.

Aus diesen momentanen Favoriten nimmt er dann die erste Kombination. Hier kann man später dann Versuchsweise per Random nicht
die Erste sondern Eine aus der Liste auswählen. Vielleicht steht aber zwischenzeitlich auch mal nur 1 Kombi als Favorit auf der Liste.
Da gibt es dann nicht viel zu "wählen". Keine Ahnung

Eine Randomauswahl hat, auch hier nicht immer von Vorteil, Auswirkung auf den weiteren Auswahlprozess.

Nach der Auswahl und der Streichung aller nun neu abgedeckten Kombinationen wird eine neue(!) Favoriten-Liste aus den
verbleibenden "freien" Möglichkeiten für die nächst Auswahl erstellt.


In einer Art Pseudo-Code:
Benötigt:

"Basis"-Kombinationen, aus denen das System erstellt werden soll.
In der Regel das entsprechende Vollsystem, hier 6 aus 10 (210) bzw. 6 aus 12 (924),
"sortiert" Lexikographisch, Colex, Gray, Random oder was einem sonst noch einfällt.
Die gewählte "Sortierung" über den ganzen Prozess beibehalten.

Liste der abzudeckenden Kombinationen,
bei x aus 5 alle 5 aus 10 (252) bzw. 5 aus 12 (792)
für x aus 6 alle 6(!) aus 10 (210) bzw. 6(!) aus 12 (924)

Liste der benutzten Kombinationen, unser System.

Beim Start deckt jede mögliche Kombination gleich viele Möglichkeiten ab.

Die Wahl der ersten Reihe unseres Systems ist also egal.

Aufnahme der gewählten Kombination in unser System.

Kennzeichnung der entsprechenden Basis-Kombination als genutzt.

z.B. bei 5 aus 6 :
Alle abzudeckenden 6er(!) Kombinationen durchlaufen und die als "covered" kennzeichnen, die im Vergleich mit unserer
ausgewählten Kombination mindestens 5 Treffer oder mehr(!) haben.

Alle noch nicht als genutzt gekennzeichneten Basis-Kombinationen durchlaufen und prüfen.
Welche dieser Kombinationen deckt die meisten, noch nicht als covered gekennzeichneten, "neuen" Kombinationen ab ?
Jeweils(!) die Kombinationen aus der Liste der abzudeckenden Kombinationen zählen, die nicht als gecovered gekennzeichnet
sind und mindestens (in unserem Beispiel) in 5 oder mehr(!) Zahlen mit der gerade getesteten Basis-Kombination übereinstimmen.

Falls mehrere Basis-Kombinationen den gleichen "Bestwert" haben, eine Favoriten-Liste erstellen.
Durch die unterschiedliche "Vorsortierung" der Basis-Kombinationen (Lex, Colex usw.) entstehen Favoriten-Listen
mit unterschiedlichen Reihenfolgen. Dadurch erfolgt eine unterschiedliche Auswahl der "nächsten" Kombination.

Der "normale" "gierige" Greedy-Algorithmus nimmt nur von den "Besten" die erste Möglichkeit.
Auch eine Möglichkeit für eine unterschiedliche Auswahl ist an diesem Punkt eine Zufalls gesteuerte Wahl.
An Stelle der "Vorsortierung". Nicht zusätzlich.

Weiter mit der Aufnahme der gewählten Kombination in unser System.

usw. bis alle abzudeckenden Kombinationen als covered gekennzeichnet sind.


Beispiel zum Vergleich mit Prontos "Auswahlmethode"
für 5 aus 6 bei 10 Zahlen: Greedy 15 Reihen
Angezeigt in den einzelnen Reihen:

Ausgewählte Kombination (Lexikographisch laufende Nummer aller möglichen Kombinationen 6 aus 10 = ings. 210 Möglichkeiten)
gewählte Kombination selber, aus den möglichen 6er Kombinationen (Voll-System)
Anzahl der "neu" abgedeckten und zu streichenden 5 aus 6 Kombinationen zum Zeitpunkt der Auswahl(!), 5 oder mehr Treffer
Anzahl der noch verbleibenden nicht abgedeckten ®eihen bzw. Kombinationen. Gesamtanzahl hier ebenfalls(!) 210 Möglichkeiten (x aus 6)

Entschuldige die "lückenhafte" Darstellung der (8 ), sonst wird daraus = 8)

1 : 1 2 3 4 5 6 (25) R (185)
32 : 1 2 3 7 8 9 (25) R (160)
113 : 1 4 5 7 8 10 (25) R (135)
174 : 2 4 6 7 9 10 (25) R (110)
201 : 3 5 6 8 9 10 (25) R (85)
14 : 1 2 3 4 8 10 (13) R (72)
56 : 1 2 5 6 7 8 (13) R (59)
76 : 1 3 4 5 7 9 (13) R (46)
149 : 2 3 5 6 7 10 (10) R (36)
165 : 2 4 5 6 8 9 (10) R (26)
61 : 1 2 5 6 9 10 (9) R (17)
81 : 1 3 4 6 7 8 (9) R (8 )
104 : 1 3 6 8 9 10 (4) R (4)
132 : 2 3 4 5 7 9 (2) R (2)
161 : 2 3 7 8 9 10 (2) R (0)

Durch "Modifikation" des Algorithmus mit Zufallsauswahl, ständige "Prüfung" bereits ausgewählter Kombinationen auf den "aktuellen" Stand
der noch alleinig abgedeckten Kombis, Streichung von 0-Nummern, Tausch gegen "bessere" Kombinationen - eine noch nicht ausgewählte
Kombination deckt mehr Kombis ab als eine bereits gewählte (Achtung! Es sind nicht unbedingt die selben abgedeckten Kombinationen) ,
kann man nach mehrfachem Durchlauf auch 14 Reihen erreichen. :tanz:

Bei der Entfernung oder Tausch einer Kombination aus dem System die "Berichtigung" der Liste "abgedeckter Kombination" nicht vergessen !!
Ebenso natürlich die Kennzeichnung "genutzt" wieder entfernen.

Für 5aus6 mit 12 Zahlen in 6er Reihen (924 Möglichkeiten) "sollte" dein Ergebnis so aussehen (Greedy einfach = 46 Reihen):

1 : 1 2 3 4 5 6 (37) R (887)
65 : 1 2 3 7 8 9 (37) R (850)
84 : 1 2 3 10 11 12 (37) R (813)
353 : 1 4 5 7 8 10 (37) R (776)
370 : 1 4 5 9 11 12 (37) R (739)
447 : 1 6 7 8 11 12 (37) R (702)
628 : 2 4 6 7 9 10 (37) R (665)
670 : 2 5 6 8 9 11 (37) R (628 )
762 : 3 4 6 8 9 12 (37) R (591)
792 : 3 5 6 7 10 11 (37) R (554)
424 : 1 5 6 9 10 12 (33) R (521)
473 : 2 3 4 5 7 12 (33) R (488 )
512 : 2 3 4 8 10 11 (33) R (455)
924 : 7 8 9 10 11 12 (33) R (422)
252 : 1 3 4 7 9 11 (29) R (393)
673 : 2 5 6 8 10 12 (29) R (364)
133 : 1 2 4 8 9 12 (25) R (339)
163 : 1 2 5 7 10 11 (25) R (314)
292 : 1 3 5 8 9 10 (25) R (289)
385 : 1 4 6 8 10 11 (25) R (264)
572 : 2 3 6 9 11 12 (25) R (239)
255 : 1 3 4 7 10 12 (21) R (218 )
297 : 1 3 5 8 11 12 (21) R (197)
633 : 2 4 6 7 11 12 (21) R (176)
841 : 4 5 6 7 8 9 (21) R (155)
875 : 4 5 9 10 11 12 (19) R (136)
50 : 1 2 3 6 7 8 (17) R (119)
540 : 2 3 5 7 9 12 (17) R (102)
180 : 1 2 6 7 9 10 (11) R (91)
478 : 2 3 4 5 9 10 (11) R (80)
824 : 3 6 7 8 10 12 (11) R (69)
606 : 2 4 5 7 8 11 (10) R (59)
413 : 1 5 6 7 9 12 (9) R (50)
727 : 3 4 5 6 10 11 (9) R (41)
242 : 1 3 4 6 9 11 (6) R (35)
574 : 2 3 7 8 9 10 (6) R (29)
90 : 1 2 4 5 6 12 (5) R (24)
771 : 3 4 7 8 9 11 (5) R (19)
161 : 1 2 5 7 9 11 (4) R (15)
199 : 1 2 7 8 10 11 (4) R (11)
513 : 2 3 4 8 10 12 (3) R (8 )
850 : 4 5 6 7 11 12 (3) R (5)
68 : 1 2 3 7 8 12 (2) R (3)
23 : 1 2 3 4 9 10 (1) R (2)
176 : 1 2 6 7 8 9 (1) R (1)
312 : 1 3 6 8 9 10 (1) R (0)

Mit Modifikation (nur Kontrolle und Entfernung "schlechterer" Kombinationen) sind am Ende 45 Reihen möglich:

1 : 1 2 3 4 5 6 (37) R (887)
.65 : 1 2 3 7 8 9 (37) R (850)
.84 : 1 2 3 10 11 12 (37) R (813)
.353 : 1 4 5 7 8 10 (37) R (776)
370 : 1 4 5 9 11 12 (37) R (739)
.447 : 1 6 7 8 11 12 (37) R (702)
628 : 2 4 6 7 9 10 (37) R (665)
670 : 2 5 6 8 9 11 (37) R (628 )
762 : 3 4 6 8 9 12 (37) R (591)
792 : 3 5 6 7 10 11 (37) R (554)
.424 : 1 5 6 9 10 12 (33) R (521)
.473 : 2 3 4 5 7 12 (33) R (488 )
512 : 2 3 4 8 10 11 (33) R (455)
924 : 7 8 9 10 11 12 (33) R (422)
252 : 1 3 4 7 9 11 (29) R (393)
673 : 2 5 6 8 10 12 (29) R (364)
133 : 1 2 4 8 9 12 (25) R (339)
163 : 1 2 5 7 10 11 (25) R (314)
292 : 1 3 5 8 9 10 (25) R (289)
385 : 1 4 6 8 10 11 (25) R (264)
572 : 2 3 6 9 11 12 (25) R (239)
255 : 1 3 4 7 10 12 (21) R (218 )
297 : 1 3 5 8 11 12 (21) R (197)
84 Aus "System" entfernt
633 : 2 4 6 7 11 12 (21) R (193)
.841 : 4 5 6 7 8 9 (21) R (172)
353 Aus "System" entfernt
551 : 2 3 5 9 10 12 (19) R (170)
865 : 4 5 7 8 10 12 (18 ) R (152)
50 : 1 2 3 6 7 8 (17) R (135)
65 Aus "System" entfernt
413 : 1 5 6 7 9 12 (15) R (133)
447 Aus "System" entfernt
534 : 2 3 5 7 8 9 (16) R (130)
424 Aus "System" entfernt
81 : 1 2 3 9 10 11 (15) R (128 )
841 Aus "System" entfernt
857 : 4 5 6 9 10 11 (17) R (125)
473 Aus "System" entfernt
337 : 1 4 5 6 7 8 (17) R (123)
473 : 2 3 4 5 7 12 (15) R (108 )
190 : 1 2 6 8 10 12 (13) R (95)
443 : 1 6 7 8 9 11 (11) R (84)
245 : 1 3 4 6 10 12 (10) R (74)
327 : 1 3 7 8 11 12 (9) R (65)
606 : 2 4 5 7 8 11 (9) R (56)
820 : 3 6 7 8 9 10 (9) R (47)
100 : 1 2 4 5 9 10 (7) R (40)
518 : 2 3 4 10 11 12 (7) R (33)
198 : 1 2 7 8 9 12 (6) R (27)
722 : 3 4 5 6 8 11 (6) R (21)
195 : 1 2 6 10 11 12 (4) R (17)
735 : 3 4 5 7 9 11 (4) R (13)
824 : 3 6 7 8 10 12 (4) R (9)
60 : 1 2 3 6 9 11 (2) R (7)
121 : 1 2 4 7 8 9 (2) R (5)
610 : 2 4 5 7 9 12 (2) R (3)
661 : 2 5 6 7 8 11 (2) R (1)
5 : 1 2 3 4 5 10 (1) R (0)


Durch Modifikation nur Randomauswahl der jeweiligen Favoriten erreicht man nach vielen Versuchen 40 Reihen.
Zwischenzeitlich aber auch 50, 47, 48, 46, 43 usw. Zufall eben ... Zwinker

Bei Random und Kontrolle mit Tausch und Entfernung am Ende auch 40 Reihen, aber "schneller".
Wenn man das Ganze dann doch lange genug laufen lässt, "schafft" man eventuell auch die schon bekannten 38 Reihen.

Nur selten ist es möglich, das Mathematische Minimum (wie kommst du eigentlich auf Minimal 25 bei 5aus6 mit 12 Zahlen ?)
bei größeren Zahlenmengen und einer höheren Anzahl von Möglichkeiten wirklich zu erreichen.
Die um 19. Hundert irgendwas von Prof. Rudolf Steiner gefundenen Systeme sind so ein seltener Fall.
Die ergeben sich auch nur unter ganz bestimmten Bedingungen. Das wurde eben von diesem Matheprof bewiesen.
:da: Und ohne Computer !!!!
Doch in den meisten Fällen geht die Berechnung eben nicht auf, da es unweigerlich zu Überschneidungen bei der Abdeckung kommt.


Auch mir kam mal vor Ewigkeiten die Idee, selber ein Program zur Systemerstellung zu schreiben.
Wie wohl so jedem, der sich mit dem Thema beschäftigt und ein paar Kenntnisse der Programmierung hat. :D
Einmal um die Vorgehensweisen besser zu verstehen, um mir Schreibarbeit zu ersparen und um meine Programmierkenntnisse zu verbessern.

Fast alle Systeme mit wenig Möglichkeiten und/oder kleinen Zahlenmengen sind schon lange an ihre mathematischen Grenzen gebracht.
Schön bei LaJolla zu sehen. Was nicht weiter "verbessert" werden kann, ist in einer etwas dickeren Schrift in der Tabelle eingetragen.

Da ich aber mein Hauptproblem der Geschwindigkeit (bei der Berechnung bzw. den Vergleichen) in hohen Zahlenbereichen bisher immer
noch nicht lösen konnte, habe ich das Projekt erstmal wieder zurückgestellt. Und "arbeite" selber überwiegend mit Covermaster.

Genauso, wie auch der Platzbedarf der sich zu "merkenden" Tabellen ein, im wahrsten Sinne des Wortes, "großes" Problem werden kann,
ist der Zeitaufwand der immer wieder benötigten Vergleichsfunktion "der" Knackpunkt für einen praktikablen Einsatz. Mist

Vielleicht hast du da als studierter Informatiker ja bessere und schnellere Algorithmen z.B. für einfache Schleifendurchläufe und
Vergleiche. Bei der hohen Anzahl von benötigten Durchläufen summiert sich da schon die kleinste Verbesserung.

Wäre doch auch ein schönes Threadthema für dich. Selber Prof und Lehrer für uns Unwissende.
Aber so beschrieben, dass auch Laien zumindest eine Chance haben, die Ausführungen zu verstehen. Zwinker

Kleine Programmiertricks, Ideen zur Abkürzung der Prozedur (welche Prüfschritte oder Vergleiche könnten entfallen), ...


Zitat:2) Ist es möglich die 132 Reihen aus C(12,6,5,5) zu verwenden und mit einer Methode diese auf z.B 38 Reihen des C(12,6,5,6) zu kürzen ??

Leider ist mir derzeit keine solche Methode bekannt, ich würde sie aber gerne auch selber kennen, falls es sie gibt.
Falls du also bei deinen weiteren Recherchen darauf stößt, ...
.. stelle sie doch bitte in einem eigenen Thread im Forum vor.

Es gibt zwar viele Formeln oder Gesetze in der Kombinatorik, mit deren Hilfe man Untersysteme aus bestehenden Systemen
extrahieren kann, aber 5aus6 aus einem 5aus5 Steiner ???

Doch man könnte ja auch mal eine Greedysuche nur auf diese Zahlenbasis (und eben nicht auf alle Möglichkeiten) loslassen ... :was:

Das ist natürlich das Schöne, wenn man Programme selber schreibt.
Man kann z.B. die Basis der Suche verändern. Schon bei der Grundlage, aus der ein eventuelles System zusammengestellt werden soll,
eine "Vorauswahl" treffen. Ob es dann allerdings "aufgeht" ist die andere Frage.
Wenn ich z.B. schon bei den Basiskombinationen sage, keine Drillinge, so kann ich nie eine Garantie 3aus3 erreichen ...


Zitat:Gerade suche ich Informationen über "simulated annealing" um es fürs "Covering Design" einzusetzen

Zu deinem "Problem" simulated annealing und Beschreibung/Algorithmus/Pseudocode.

Die "Ersten", die meines Wissens nach auf die Idee gekommen sind, das für das Set-Cover Problem einzusetzen waren
Kari J. Nurmela und Patric R.J. Ostergard aus Finnland. :da: 1993

Haben, glaube ich, sogar ihre Abschlussarbeit darüber geschrieben.

Ihr Programm Cover32 ist normalerweise irgendwo im Netz noch mit(!) Quellcode zu finden.
OK habe es schon http://www.tcs.hut.fi/Software/old/cover/cover.zip

Genauso wie verschieden Publikationen z.B. nurmela93constructing.pdf oder "New coverings of t-Sets" und und

Habe nicht mehr alle Titel im Kopf.
Aber in diesen Dokumentationen zu ihrem Programm wird die Vorgehensweise sehr gut beschrieben.

Da das Programm intern mit Integer-Variablen arbeitet, eine komplette Kombination in einer Integer kodiert,
ist die Grenze bei 32 Zahlen im System.

Direkte Links zu den Dokumentationen habe ich zur Zeit keine, da musst du leider doch noch ein wenig suchen ...


Hoffe das "hilft" erst mal ... :bier:

Gruß Jaera
Ich wollte die Welt verändern, doch Gott gab mir den Quellcode nicht ! :]
Zitieren

#14
Die Formel zur Berechnung des theoretischen minimums:

http://forums.anastasios-tampakis.net/vi...?f=11&t=35


BSP:

Stand: 18.08.2009

C(12,6,5,6) = 25 Reihen, praktisch 38 Reihen

C(10,6,5,6) = 9 Reihen, praktisch 14 Reihen

C(10,6,5,5) = 42 Reihen, praktisch 50 Reihen

Wenn jemand für ein Design, das theoretische minimum ausrechnen lassen möchte, könnt ihr mich kontaktieren.
Zitieren

#15
Zitat:Original von Jaera
21 Jan, 2009 15:37 40

Ininuga, ebenfalls kostenfrei, von bringt zum Teil gute Ergebnisse bis 32 Systemzahlen.
Ist aber ein etwas komplizierter zu bedienendes DOS-Programm.
Gruß Jaera

Link aktualisiert... => Ininuga

[Bild: ininuga9nc53.jpg]

Läuft nur auf 32 Bit OS.

BG
Ecart
Zitieren

#16
Moin, ich habe mir mal lotto32 und lotto designer xl installiert. Sind ja beide super, aber eine Kombination daraus gibt es wohl nicht, oder? Ich habe nämlich folgendes Problem: Bei lotto32 kann ich genau die zahlen eingeben die ich auch ankreuzen möchte, aber nur vorgegebene anzahl von reihen erstellen lassen (18 zahlen, 20 reihen geht nicht). Bei LD xl kann ich genau sagen Wieviele reihen ich möchte und Wieviele zahlen, aber ich kann nur platzhalter angeben, nicht meine wunschzahlen. Und jedesmal mit meinen wunschzahlen und den platzhaltern nebendran die tips ausfüllen nervt. Hat jemand eine lösung dafür oder gibt es noch ein anderes Programm welches ich übersehen habe?

Mfg
Oh, wirklich?
Zitieren

#17
Hallo shak0r, Wink

versuche es doch mal mit der Software MELM LINK


Hier kannst Du Systemabwicklungen laden

und diesen dann Deine Wahlzahlen zuweisen.


Das besondere dabei ist die wahlfreie Zuordnung,

also die Zuordnung in der Reihenfolge der Eingabe.


Bis 35 Systemzeilen ist das Programm kostenlos,

für größere Systeme ist dann die Vollversion für EUR 35.64 fällig.


Zusätzlich kannst Du mit dem Programm Deine Systeme auch ONLINE abgeben.


Dann kannst Du Deine Systeme direkt aus dem Programm heraus z.B. an die Lottohelden übertragen.


Das spart das fehlerträchtige Ankreuzen der Zahlen auf dem Onlineschein.


Viel Spaß und viel Erfolg

Peter K.
.
Zitieren

#18
Habs mal überflogen, sieht erstmal gut aus, aber ich glaube nicht ganz was ich meine.
Hilfreich wäre auch, wenn jemand weiß wie ich bei excel eine Formel von einer Zelle kopiere und dann in mehrere NICHT aneinander angrenzende Zellen einfügen kann. So wie ich bisher alles getestet habe kann excel das nicht. Ich versuche den Vorgang warum ich das so machen möchte später zu erklären, dauert ewig mit einem Handy zu schreiben.

Mfg
Oh, wirklich?
Zitieren

#19
Hallo shak0r, Wink

bitte nicht alles durcheinander schreiben, sonst wird es unübersichtlich.

In diesem Thread geht es um "Programme zur Systemerstellung"


Wenn Du jetzt noch Fragen zu Excel hast, solltest Du eine Ebene zurückgehen.

Unter Lotto-Totostrategen.de » Lotto » machst Du dann ein neues Thema auf.

Noch besser bist Du mit diesen grundsätzlichen Excel-Fragen in einem der vielen Excelforen im Netz aufgehoben.

Mit besten Grüßen

Peter K.
.
Zitieren

#20
Ist Lotterfee bekannt? Das Programm bietet über 270 Systeme.

Gruß

Gagga
Es ist nie zu spät für eine glückliche Kindheit!
Meine freeware Toto13Tool, Toto45Tool, Zufall 2.0
Zitieren



Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste

Deutsche Übersetzung: MyBB.de, Powered by MyBB 1.8.36, © 2002-2024 Melroy van den Berg.