Plugin: Personeninseln finden

Plugins, Sprachdateien, Rahmen & Hintergrundgrafiken
Benutzeravatar
Chlodwig
Super Moderator
Beiträge: 1636
Registriert: 20.01.2006, 13:49
Wohnort: Ostbayern

Beitrag von Chlodwig »

bjew hat geschrieben: das Sieb in meinem Kopf .......
...und wenn du das jetzt auch noch aufsägst...
;-)
Gruß, Chlodwig
Benutzeravatar
ThomasG
Beiträge: 298
Registriert: 31.05.2007, 00:28
Wohnort: Preußen (mittlerweile Rheinprovinz)

Beitrag von ThomasG »

Mahlzeit die Herren !

Also doch noch nicht der richtige Algorythmus.
Hab aber schon eine neue Idee. Dürfte rein vom logischen her wesentlich schneller werden.
Leider leide ich hier (nicht daheim) an .... ähm.... eigentlich PC-Verbot :oops: und Programmierumgebung fehlt.

Bis denn: Thomas
Benutzeravatar
Jürgen T.
Beiträge: 1607
Registriert: 29.12.2006, 14:29
Wohnort: Bernkastel-Kues (Mosel)

Beitrag von Jürgen T. »

Hallo,

ich habe die neue Version mit meinen ca. 4000 Personen getestet. Es dauerte nur noch 3 min und 3 sek.
Am Anfang ist der Fortschritt der Verarbeitung zwar langsam, aber gegen Ende der Verarbeitungszeit geht´s um so schneller voran.
Tolle Leistung.
Danke.

Mein System: WIN XP home,

Gruß

Jürgen
Gruß
Jürgen
Benutzeravatar
DirkB
Administrator
Beiträge: 1577
Registriert: 20.01.2006, 20:25
Wohnort: Hamburg
Hat sich bedankt: 14 Mal
Danksagung erhalten: 121 Mal

Beitrag von DirkB »

Hallo, Thomas,

tolle Arbeit!

In der neuesten Beta-Version kann man in der .abp Datei beim CSV-Speichern vorgeben, ob ANSI oder UNICODE ("CSVFile-ANSI" oder "CSVFile-Unicode" - Groß-/Kleinschreibung egal). "CSVFile" bedeutet dann "durch Ahnenblatt bestimmt". Wer mag kann seine abp-Datei manuell anpassen ...

Gruß, Dirk.
Flash
Beiträge: 650
Registriert: 14.05.2007, 12:23
Wohnort: Chemnitz, Sachsen

Beitrag von Flash »

Wie sieht denn dein Algorithmus bisher aus?
Benutzeravatar
Torquatus
Beiträge: 3698
Registriert: 19.01.2006, 22:19
Wohnort: Mannheim

Beitrag von Torquatus »

Hallo Dirk,
DirkB hat geschrieben:In der neuesten Beta-Version kann man in der .abp Datei beim CSV-Speichern vorgeben, ob ANSI oder UNICODE ("CSVFile-ANSI" oder "CSVFile-Unicode" - Groß-/Kleinschreibung egal). "CSVFile" bedeutet dann "durch Ahnenblatt bestimmt". Wer mag kann seine abp-Datei manuell anpassen ...
danke für den Hinweis. Das habe ich doch glatt gemacht. Das erspart mir nun die "Unicode-Erzwingung". Außerdem braucht der BND nun auch nicht mehr rätseln, was ich meinen Kampfgenossen mit diesem arabischen Zeichen sagen will :twisted: :twisted: :twisted:
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato
Benutzeravatar
ThomasG
Beiträge: 298
Registriert: 31.05.2007, 00:28
Wohnort: Preußen (mittlerweile Rheinprovinz)

Beitrag von ThomasG »

Hallo Flash !

Momentan vergleiche ich die Ref-Nummern jeder Person mit jeder, dann auch noch in String-Form. Was massig Zeit kostet.
Das String-Feld wird immer redimensioniert was (glaub ich) massig Zeit kostet mit Speicherzuweisung und -fragmentierung.

Demnächst will ich mir einfach eine Matrix anlegen und mit Long Variablen arbeiten. Das dürfte hoffentlich fixer gehen.
Kostet zwar mehr Speicher, aber das sollte ja bei den heutigen PC's nicht mehr das Problem sein.
Wenn der neue Quellcode dann steht, kann ich dir ja mehr sagen.

Gruß: Thomas
Benutzeravatar
Jürgen T.
Beiträge: 1607
Registriert: 29.12.2006, 14:29
Wohnort: Bernkastel-Kues (Mosel)

Beitrag von Jürgen T. »

Hallo Dirk - oder andere die es wissen,

welche weiteren Befehle gibt es, die man in einer abp-Datei - außer csvfile - aufrufen kann?
Gibt es auch einen Befehl um eine GEDCOM-Datei zu erzeugen?

Gruß

Jürgen
Gruß
Jürgen
Flash
Beiträge: 650
Registriert: 14.05.2007, 12:23
Wohnort: Chemnitz, Sachsen

Beitrag von Flash »

Ich denke es könnte schon helfen, wenn du deine Suche als Tiefensuche implementierst. Die Abgearbeiteten Knoten in einem Vector/Liste hälst. Und ebenso die Suchfront als Queue in einer Liste hälst.

Speicher anfordern und freigeben ist denk ich ne echte bremse. Die Listen haben den vorteil, dass du relativ fix daten ablegen und durchsuchen kannst.
Wenn du mit Java arbeitest, unterstützen die dortigen Vectoren auch "contains()". Damit kann man die Liste fragen, ob ein Objekt schon in der Liste enthalten ist.
Alternativ wäre eine Hashtable nicht schlecht. Damit kannst du schnell prüfen, ob ein Knoten schonmal abgelegt wurde.
Benutzeravatar
ThomasG
Beiträge: 298
Registriert: 31.05.2007, 00:28
Wohnort: Preußen (mittlerweile Rheinprovinz)

Beitrag von ThomasG »

Mahlzeit !

Update im Anhang.
Läuft mit AB 2.50 Beta3
Damit muß kein arabisches Zeichen mehr in die Anmerkungen kopiert werden, sondern es sollte mit jeder Datei funktionieren.
Geschwindigkeit dürfte nun auch passen.
Also bitte probieren :!: und dann "meckern"

Gruß: Thomas

Edit: Anhang entfernt
Zuletzt geändert von ThomasG am 05.05.2008, 22:14, insgesamt 1-mal geändert.
Benutzeravatar
Jürgen T.
Beiträge: 1607
Registriert: 29.12.2006, 14:29
Wohnort: Bernkastel-Kues (Mosel)

Beitrag von Jürgen T. »

Hallo Thomas,

ich bin begeistert - kein Grund zum meckern.
Bei meinen ca. 4000 Personen dauert das Ganze unter 2 sec. wobei das Abspeichern als csv-File noch den größten Zeitanteil hat - sofern ich das überhaupt bei der Geschwindigkeit richtig beurteilen kann.
Wahnsinn.
Tolle Leistung

Gruß

Jürgen
Gruß
Jürgen
Benutzeravatar
ThomasG
Beiträge: 298
Registriert: 31.05.2007, 00:28
Wohnort: Preußen (mittlerweile Rheinprovinz)

Beitrag von ThomasG »

So, noch ein fixes Update um die Tageszeit.
Nun werden auch bei größeren Datenmengen alle Personen angezeigt und die Inseln können einzeln im csv-Format exportiert werden, um sie dann in AB importieren zu können.

Anhang entfernt
Zuletzt geändert von ThomasG am 13.05.2008, 09:07, insgesamt 2-mal geändert.
Benutzeravatar
Jürgen T.
Beiträge: 1607
Registriert: 29.12.2006, 14:29
Wohnort: Bernkastel-Kues (Mosel)

Beitrag von Jürgen T. »

Hallo Thomas,

tolle Idee- funktioniert einwandfrei.

Du kennst Dich doch so gut aus ! - gibt es einen Befehl um aus einer abp-Datei heraus eine GEDCOM-Datei anzulegen?

Ich frage mich immer noch, woher du wußtest, dass der Befehl "csvfile" funktionierte. Du warst ja schließlich der erste, der solche Plugins programmierte. War das irgendwo dokumentiert?

Gruß

Jürgen
Gruß
Jürgen
Benutzeravatar
Torquatus
Beiträge: 3698
Registriert: 19.01.2006, 22:19
Wohnort: Mannheim

Beitrag von Torquatus »

Hallo Thomas,
ThomasG hat geschrieben:Nun werden auch bei größeren Datenmengen alle Personen angezeigt und die Inseln können einzeln im csv-Format exportiert werden, um sie dann in AB importieren zu können.
ich bin erst nach Mitternacht ins Portal gekommen (habe auch noch andere Baustellen) und habe dann gleich Deine neueste Version ausprobiert.

Sensationell, erste Sahne, und nun so schnell wie Ages. Damit hast Du Dir hier ein bleibendes Denkmal gesetzt :D :D :D

Danke für Deine Arbeit Bild

NS. So kann man sich teuschen: Ich schätzte meine Inseln auf über 100, tatsächlich sind es lt. InselFinder 324 :wink:
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato
Antworten