Forum: PC Hard- und Software Fortlaufende Zahlenreihe erkennen


von Sebastian Herbert (Gast)


Lesenswert?

Hallo,

ich bin auf der Suche nach einer Software welche Zahlenreihen erkennen 
kann und die nächste Zahl in der Reihe vorhersagt ähnlich wie bei Excel

1
2
3
4

Das Programm soll dann die nächste Zahl (5) vorhersagen.

Nur eben etwas komplexer

Danke und Grüße
Sebastian

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

viel zu wenig Informationen

: Bearbeitet durch User
von Michael G. (mjgraf)


Lesenswert?

Definiere "etwas komplexer". Konstante Differenzen und Faktoren lassen 
sich leicht erkennen, danach landet man Schritt für Schritt entweder bei 
einer Sammlung priorisierter Regeln (so arbeitet vermutlich Excel) oder 
einem Versuch in künstlicher Intelligenz. Das bekannteste Projekt dazu 
dürfte Seek-Whence sein, das Douglas Hofstadter in Fluid Concepts and 
Creative Analogies 
(https://en.wikipedia.org/wiki/Fluid_Concepts_and_Creative_Analogies) 
beschrieben hat.

von Sebastian Herbert (Gast)


Lesenswert?

@wegstaben: welche Informationen fehlen dir denn?

@michael: hier ein Beispiel aus der der Praxis:

0178913
0280314
0381915
0483716

Hoffe es hilft weiter, hier noch die Auflösung

01 789 13
789+01+13 = 803

02 803 14
803+02+14 = 819

etc

von Udo S. (urschmitt)


Lesenswert?

Sebastian Herbert schrieb:
> Hoffe es hilft weiter, hier noch die Auflösung

Dann programmiere halt die Auflösung.

So ein Programm das auch noch eine Zahl in drei (beliebige?) 
unterschiedliche Spalten aufsplitten soll (ohne jegliche Information 
über eine Semantik zu besitzen) und dann für die einzelnen Spalten 
unterschiedliche verkettete Regeln herzaubern soll wirst du 
wahrscheinlich nicht mal von der NSA bekommen.

von Michael G. (mjgraf)


Lesenswert?

Das ist... hochgradig nichttrivial ;-D

Nein, da gibt es vermutlich nichts von der Stange.

Woher kommt die Problemstellung? Hausaufgabe?

von P. P. (Gast)


Lesenswert?

https://www.wolframalpha.com/input/?i=0178913+0280314+0381915+0483716

siehe unter Continuation.
Ist halt die Frage, ob du dir das selbe gedacht hast ;-)

von Sebastian Herbert (Gast)


Lesenswert?

Hallo zusammen,

Danke für Eure Hilfe, dachte ich mir schon fast

@Michael: dadurch werden temporäre Zugangsdaten zu unseren Anlagen 
generiert, anstelle der 01, 02 kommt die Anlagennummer und anstelle der 
letzten zwei Zahlen das aktuelle Datum.

Beste Grüße

von Cyblord -. (cyblord)


Lesenswert?

Michael G. schrieb:
> Das ist... hochgradig nichttrivial ;-D
>
> Nein, da gibt es vermutlich nichts von der Stange.
>

Ich würde für völlig beliebige Regeln sogar eine NP-Vollständigkeit 
unterstellen.

von foobar (Gast)


Lesenswert?


von DPA (Gast)


Lesenswert?

Ich habe die Aufgaben der form "Setzen sie die Zahlenreihe um die 
nächsten n Zahlen fort." immer gehasst und als komplett unsinnig 
empfunden. Es gibt nämlich für jede beliebige Fortsetzung immer 
unendlich viele Funktionen oder ein Algorithmen, die diese generiert. 
z.B. https://en.wikipedia.org/wiki/Polynomial_interpolation

Ohne zusätzliche Einschränkungen gibt es also weder eine Falsche, noch 
eine Richtige Lösung, aber akzeptiert wird am ende von den Lehrern nur 
eine!!! Und "die Einfachste" ist keine anwendbare Einschränkung, weil 
komplett subjektiv und nicht mathematisch definierbar.

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Sebastian Herbert schrieb:
> @wegstaben: welche Informationen fehlen dir denn?

was brauchst du?

[x] nur eine algorithmische Idee, oder irgendetwas in einer 
Programmiersprache, oder gar als ausführbares Programm?

[x] Wenn Programmiersprache: Welche soll es denn sein?
Kannst du selber den Code auf irgendwas implementieren?

[x] Wenn fertiges Programm: Auf welcher Ziel-Hardware und 
Betriebs-System soll das denn laufen? Mikrocontroller? Windows- oder 
Linux-PC? Android oder Apple-Smartphone/Tablet? Großrechner?

[x] was ist "etwas komplexer"?

[x] Wie vollständig oder unvollständig ist deine Datenbasis? z.B.

a) 1,2,3,4 -> 5 könnte auch so weitergehen:
b) 1,2,3,4 -> 7

zu a): 1 ist Startzahl (s) und vorgegeben. Z2==S+1=2, Z3==2(=Z2)+1=3, 
Z4==3(=Z3)+1=4, Z5==4(=Z4)+1=5
Hier ist die Rechenregel also "immer eins drauf"

zu b): 1 und 2 sind Startzahlen (sa, sb) und vorgegeben.
Z3==sa+sb=3, Z4==sb+Z3(=3)-1=4, Z5==3(=Z3)+4(=Z4)=7
hier ist die Rechenregel also: Zg (grade Zahl) = beide Vorgängerzahlen 
addieren, sowie eins subtrahieren; sowie Zu (ungrade Zahl) = beide 
Vorgängerzahlen addieren.

Wenn also deine Zahlenbasis zu klein ist (hier also: nur 4 Zahlen), dann 
ist das Ergebnis "beliebig".

: Bearbeitet durch User
von DPA (Gast)


Lesenswert?

Wegstaben V. schrieb:
> Wenn also deine Zahlenbasis zu klein ist (hier also: nur 4 Zahlen), dann
> ist das Ergebnis "beliebig".

Nein, das ist es immer. Das ist ja gerade das Problem an solchen 
Aufgaben.

von Εrnst B. (ernst)


Lesenswert?

Sebastian Herbert schrieb:
> dadurch werden temporäre Zugangsdaten zu unseren Anlagen
> generiert, anstelle der 01, 02 kommt die Anlagennummer und anstelle der
> letzten zwei Zahlen das aktuelle Datum.

Vorschlag: Erzeuge die Zugangsdaten mit bekanntem Algorithmus, dann 
musst du den nicht zurück-"raten"...
z.B. OATH-TOTP / https://tools.ietf.org/html/rfc6238

Da kannst du mit der Anlagen-Doku einen QR-Code mitliefern, den kann man 
einfach in die "Google Authenticator"-App (oder andOTP, wenn man's 
lieber OpenSource mag) laden, und hat ständig wechselnde 
Einmalpasswörter.

Statt Anlagennummer hast du ein (beliebig langes) shared secret. Dann 
ist auch nicht nach 99 verkauften Anlagen Schluss.

: Bearbeitet durch User
von K. S. (the_yrr)


Lesenswert?

Sebastian Herbert schrieb:
> @Michael: dadurch werden temporäre Zugangsdaten zu unseren Anlagen
> generiert, anstelle der 01, 02 kommt die Anlagennummer und anstelle der
> letzten zwei Zahlen das aktuelle Datum.
musst du den Algorithmus neu erfinden oder willst du einen bestehenden 
knacken?

wenn du einen neuen brauchst, wie "sicher" soll der sein? sind das eure 
offline Anlagen die der Azubi nicht ungefragt nutzen soll oder euer 
Kernreaktor der am Internet hängt?

wenn man nur über ein Keypad 4 Zahlen eintippen soll, reicht es 
eventuell Datum + Anlagennummer zu hashen/ in ein LFSR zu jagen.

Wenn es etwas mehr sein sollte eventuell mit shared secret (TOTP wäre da 
ein Verfahren), wenn es irgendwie ans Internet angebunden ist wäre das 
ber vllt. zu gefährlich (wenn das shared secret rauskommt hast du ein 
Problem).

Wenn du einen bestehenden Algorithmus knacken willst, poste mal ein paar 
Beispieldaten, damit man eine Vorstellung von dem Ganzen bekommen kann. 
das wird dann aber sehr wahrscheinlich mindestend gehasht sein, also 
nicht wie du es dir vorstellst zu lösen sein.

von Axel S. (a-za-z0-9)


Lesenswert?

Sebastian Herbert schrieb:
> Das Programm soll dann die nächste Zahl (5) vorhersagen

Die nächste Zahl ist aber nicht 5, sondern 0. Es ist immer 0.

Disclaimer: das Thema hatten wir hier (mindestens) schon einmal. Diese 
Art "Denksport" Aufgabe ist sinnlos. Es gibt immer unendlich viele 
Möglichkeiten, eine Folge fortzusetzen und sich für die gewählte 
Fortsetzung eine Erklärung aus dem Ar*** zu ziehen. Die einfachste 
Variante ist die, daß alle solche Folgen mit Nullen fortgesetzt werden. 
Dazu muß man sich nichts - quasi "Null" - merken ;)

von Alugiesser (Gast)


Lesenswert?

Sebastian Herbert schrieb:
> Hallo,
>
> ich bin auf der Suche nach einer Software welche Zahlenreihen erkennen
> kann und die nächste Zahl in der Reihe vorhersagt

KI für Dummies? IQ-Test-Löser? MENSA-Crack?

von Nano (Gast)


Lesenswert?

Sebastian Herbert schrieb:
> Hallo zusammen,
>
> Danke für Eure Hilfe, dachte ich mir schon fast
>
> @Michael: dadurch werden temporäre Zugangsdaten zu unseren Anlagen
> generiert, anstelle der 01, 02 kommt die Anlagennummer und anstelle der
> letzten zwei Zahlen das aktuelle Datum.
>
> Beste Grüße

Wenn die Formel bzw. der Algorithmus dafür nicht erraten werden muss, 
sondern feststeht, dann sollte das leicht implementiert werden können.

Für dein obiges Beispiel:
0178913
0280314
0381915
0483716
usw.

einen Algorithmus zu erstellen, der dann die nächsten Zahlen ausrechnet 
ist jetzt nicht so schwer.

Schwer wird es dann, wenn der Algorithmus sich beliebig ändert und 
ermittelt werden soll.

von Nano (Gast)


Lesenswert?

April, April.

Alugiesser schrieb:
> Sebastian Herbert schrieb:
> Hallo,
> ich bin auf der Suche nach einer Software welche Zahlenreihen erkennen
> kann und die nächste Zahl in der Reihe vorhersagt
>
> KI für Dummies? IQ-Test-Löser? MENSA-Crack?

Danke fürs ausgraben eines April Scherzes. Ich hätte vorher aufs Datum 
schauen sollen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.