AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Nextgen - Kompressionsverfahren

Nextgen - Kompressionsverfahren

Ein Thema von Aphton · begonnen am 22. Jun 2011 · letzter Beitrag vom 29. Jun 2011
Antwort Antwort
Seite 3 von 6     123 45     Letzte » 
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#21

AW: Nextgen - Kompressionsverfahren

  Alt 22. Jun 2011, 16:29
Die Zukunft wird vieles bringen, und vieles vernichten, Aber Mathematik ist in unserer Welt konstant.
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#22

AW: Nextgen - Kompressionsverfahren

  Alt 22. Jun 2011, 16:30
LOL xDDD

Die einzige Konstante, die ich kenne, ist der ewige Fluss der Veränderung!

Nun gut, es halten nicht viele Viel von dem hier. Wie dem auch sei Danke für die Beteiligung
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#23

AW: Nextgen - Kompressionsverfahren

  Alt 22. Jun 2011, 16:35
Selbst wenn du das was du mit PI machen willst tatsächlich erreichen kannst, Die zu Benötigte PI-Größe wird immer um ein gigantisches größer sein, als die daten die wir komprimieren wollwn. Dementsprechend wird das wohl (meiner meinung nach) niemals in moderater geschwindigkeit möglich sein.

Stell dir vor du kannst in 10 Jahren 12GB damit komfortable in sagen wir mal 1h berechnen(mal sehr großzügig), dan sind die speichermengen die man in 10 jahren aber komprimieren möchte ebenso angewachsen. Das wird ein ziemlich mieser Kreislauf.


MFG
Memnarch
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#24

AW: Nextgen - Kompressionsverfahren

  Alt 22. Jun 2011, 16:37
Auch wahr..

Man kann da höchstens den Datenstrom in kleinere Blöcke aufteilen, da ja dadurch die Wahrscheinlichkeit gesteigert wird, dass die Folge gefunden wird...
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (22. Jun 2011 um 16:40 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#25

AW: Nextgen - Kompressionsverfahren

  Alt 22. Jun 2011, 16:47
Das stimmt wohl.

Es fragt sich nur: wenn ich eine zeichenkette von XByte länge suche, wie groß muss dann der indexspeicher sein wenn ich vom worstcase ausgehen?


Also wenn ich das gerade im Kopf richtig überschlagen habe ist der benötigte Indexspeicher größer wie der gesuchte speicher im worstcase szenario.

EDIT: das kommt dahei weil du für den gesuchten speicher die anzahl der möglichen kombinationen berechnen musst

Also:

2^(ByteZahl * 8) und das mit der Bytezahl des gesuchten speichers multiplizieren musst.
Dan hasst du den Maximalwert für den Index wen jede Kombination auf der strecke ein unicat ist.
Und dieser Wert passt nicht in dieselbe länge wie der gesuchte Bytestream.


MFG
Memnarch
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden

Geändert von Memnarch (22. Jun 2011 um 16:55 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#26

AW: Nextgen - Kompressionsverfahren

  Alt 24. Jun 2011, 16:23
Unabhängig von der Sinnhaftigkeit des Vorhabens an sich, wollte ich der Vollständigkeit halber noch mal kurz auf die BBP-Formel hinweisen
Zitat:
Algorithmus [...] der eine beliebige Ziffer der Darstellung von Pi im Hexadezimalsystem bestimmen kann, ohne die vorherigen Ziffern zu benötigen.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#27

AW: Nextgen - Kompressionsverfahren

  Alt 24. Jun 2011, 17:16
o_O
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#28

AW: Nextgen - Kompressionsverfahren

  Alt 25. Jun 2011, 07:06
Memnarch stellt einfach einen Webservice bereit, wo er die ersten paar Zentilliarden Stellen von Pi, als eine Art vorberechnete Rainbowtable, bereitstellt.
Dann kann der "Algorithmus" den ja nutzen, um ganz schnell komprimieren zu können.

Notfalls muß man ja nicht unbedingt die 12 GB als ein Stück suchen, sondern könnte es auch aufteilen und man muß dann nicht so rießige Teile finden.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
FredlFesl

Registriert seit: 19. Apr 2011
293 Beiträge
 
Delphi 2009 Enterprise
 
#29

AW: Nextgen - Kompressionsverfahren

  Alt 25. Jun 2011, 08:46
Wer sagt denn, das der Index immer weniger Stellen hat, als die zu packende Information?
Wenn ich z.B. einen 20 Byte langen String erst an einer Stelle finde, die > 2^(160) ist, hab ich auch nichts gewonnen.

Interessant wäre eine Berechnung, wie hoch die Wahrscheinlichkeit ist, in einer zufälligen Folge von Zahlen eine bestimmte Ziffernfolge zu finden, deren Position mit weniger Bits dargestellt werden kann, also die Ziffernfolge selbst.
Das Bild hängt schief.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#30

AW: Nextgen - Kompressionsverfahren

  Alt 25. Jun 2011, 09:18
Je größer der Wert/die Daten, um so kleiner die Wahrscheinlichkeit.

Du brauchst ja nur mal prüfen, wie lang PI sein muß, damit z.B. alle möglichen Kombinationen eines 1 MB-Blocksdrin vorkommen,
dann kannst'e für alle Blöcke bis 1 MB die minimale Wahrscheinlichkeit ausrechnen.


Ein Byte wirst'e wohl schon in den ersten 1000 Nachkommastellen finden können.
Falls du PI Hexadezimal darstellst, bzw. im Zweierkomplement (kommt wohl auf's Selbe raus, wenn die Bitreihenfolge die Gleiche ist),
und man den Index nicht auf die Dezimalstellem oder ganze byte, sondern Bit festlegt, dann reichen wohl auch schon knapp 100-200 dezimalstellen aus.



Du könntest die gefundenen Indize in PI ja noch so umsortieren, daß es oftmals einen kleineren Index ergibt, als Daten gesucht werden.
Dann brauchst'e nur noch eine klitzekleine Umrechnungstabelle, neben PI.

Wo ist eigentlich Hagen?
Der hätte bestimmt schon einen Algo dafür.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz