Streckenüberschneidungen < Sonstiges < Lineare Algebra < Hochschule < Mathe < Vorhilfe
|
Hallo, liebe Mathe-Community.
Ich möchte für eine Aufgabenstellung aus der Informatik eine Menge von Zeiträumen analysieren.
Gegeben sind eine beliebige Menge an Zeiträumen, definiert durch Start- und Endpunkt sowie einen von zwei möglichen Typen (Beliebig definierbar, Typ1/Typ2, hoch/niedrig, 0/1, 1/2 o.ä.)
Ganz grundsätzlich versuche ich gerade, diese Zeiträume als Strecken in einem zweidimensionalen Raum zu betrachten und Überschneidungen zu analysieren.
Ein Beispiel:
Zeitraum A: Startpunkt a0=1, Endpunkt a1=5, Typ 1
Zeitraum B: Startpunkt b0=3, Endpunkt b1=7, Typ 2
Hier möchte ich nun herausbekommen, daß ich nur von 5-7 einen Zeitraum habe, der nur von Typ 2 abgedeckt wird.
Es sind jegliche Überlappungen a0 <, >, = b0 etc. möglich. Möglich wäre auch noch
Zeitraum C: Startpunkt c0=6, Endpunkt c1=9, Typ 1
usw usf hinzuzunehmen, so daß nur noch von 5-6 ein Zeitraum von Typ 2 abgedeckt wäre.
Ich habe versucht, mir die Zeiträume als Strecken im karthesischen Koordinatensystem vorzustellen, mit Typ1 y=1 und Typ2 y=-1, aber ich weiss nicht wie ich auf die Strecke [mm] \overrightarrow{a1c0} [/mm] (obiges Beispiel) komme, ohne vorher im Einzelfall nach b0<a1, b1>a1 usw usf zu unterscheiden.
Bin ich ganz auf dem Holzweg oder kann Mathematik mir hier tatsächlich helfen?
Vielen Dank
Stefan
P.S.: Dies ist mein erster Post, sollte ich technisch etwas falsch ausgefüllt haben, sagt mir bitte Bescheid, dann ändere ich es gern ab.
->
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:15 Fr 04.04.2014 | Autor: | Diophant |
Hallo und
Mir ist da einiges klar geworden, anderes bleibt unklar: meiner Ansicht nach ist es ziemlich entscheidend für den mathematischen Ansatz, wie genau das dann abgefragt wird bzw. interessiert. Denkbare Beispiele wären ja:
- ein Zeitpunkt wird angegeben und es soll ermittelt werden, ob dieser Zeitpunkt in einem Intervall liegt, welches überhaupt nicht/durch einen der Typen/durch beide Typen abgedeckt wird
oder
- ausgehend von einem Zeitpunkt soll das nächste Intervall gefunden werden, das (bspw.) durch Typ 1 abgedeckt wird
oder
- zwischen zwei Zeitpunkten sollen alle Intervalle mit einer bestimmten Abdeckung gefunden werden
Die Liste ließe sich vermutlich fortsetzen. Könntest du auf diesen Problemkreis noch näher eingehen? Ich denke, dann kommen auch Ideen zusammen.
Im übrigen betrachtest du oben Strecken in einem eindimensionalen Raum...
Gruß, Diophant
|
|
|
|
|
Hallo Diophant,
danke schonmal für deine Antwort, ich werde versuchen weiter zu erläutern:
Eindimensionaler Raum ist erstmal richtig; ich hatte mir gedacht daß es evt. einfacher zu rechnen ist / vorzustellen wenn man die beiden Typen auf verschiedenen Punkten der Y-Achse ansiedelt.
Zur Abfrage:
Wie gesagt, das Problem ist eigentlich ein datenverarbeitungstechnisches. Ich versuche es genauer zu erklären:
Ich habe in einer Datenbank eine Tabelle mit diesen Zeiträumen, stell es dir (vereinfacht) so vor
id start ende typ
1 00:00 00:05 1
2 00:02 00:07 2
3 00:06 00:09 1
alternativ wäre noch ein Darstellung in dieser Form möglich:
id zeit art typ
1 00:00 start 1
2 00:02 start 2
1 00:05 ende 1
3 00:06 start 1
2 00:07 ende 2
3 00:09 ende 1
Ich muss nun herausfinden, von wann bis wann ich einen Zeitraum vom Typ 2 habe, ABER wenn gleichzeitig ein Zeitraum vom Typ 1 aktiv ist, hebt das den Typ 2 auf
Hilft das weiter?
Gruß
Stefan
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:04 Fr 04.04.2014 | Autor: | Diophant |
Hallo,
> Hallo Diophant,
>
> danke schonmal für deine Antwort, ich werde versuchen
> weiter zu erläutern:
>
> Eindimensionaler Raum ist erstmal richtig; ich hatte mir
> gedacht daß es evt. einfacher zu rechnen ist /
> vorzustellen wenn man die beiden Typen auf verschiedenen
> Punkten der Y-Achse ansiedelt.
>
> Zur Abfrage:
> Wie gesagt, das Problem ist eigentlich ein
> datenverarbeitungstechnisches. Ich versuche es genauer zu
> erklären:
> Ich habe in einer Datenbank eine Tabelle mit diesen
> Zeiträumen, stell es dir (vereinfacht) so vor
>
> id start ende typ
> 1 00:00 00:05 1
> 2 00:02 00:07 2
> 3 00:06 00:09 1
>
> alternativ wäre noch ein Darstellung in dieser Form
> möglich:
> id zeit art typ
> 1 00:00 start 1
> 2 00:02 start 2
> 1 00:05 ende 1
> 3 00:06 start 1
> 2 00:07 ende 2
> 3 00:09 ende 1
>
> Ich muss nun herausfinden, von wann bis wann ich einen
> Zeitraum vom Typ 2 habe, ABER wenn gleichzeitig ein
> Zeitraum vom Typ 1 aktiv ist, hebt das den Typ 2 auf
>
> Hilft das weiter?
Nicht wirklich: so viel war mir vorher schon klar. Mir ging es darum, was man sich unter diesem 'Herausfinden' vorzustellen hat. Sehe ich das dann richtig, dass du ab einem Zeitpunkt t=0 alle in Frage kommenden Intervalle finden möchtest, indem du hintereinander deine (irgendwie geordneten, am besten wohl nach der Anfangszeit) Datensätze durchgehst? Wie hat man sich das dann aber vorzustellen? Betrachtest du nur ganze Zahlen oder irgendwelche anderen diskreten Abstände?
Oder gehst du einfach von Datensatz zu Datensatz, liest diesen aus und erstellst daraus eine neue Datenbank mit den fraglichen Intervallen?
Gruß, Diophant
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 16:07 Fr 04.04.2014 | Autor: | leduart |
Hallo
das wcht 2 d anzuordnen, etwa auf x und y Achse ist nicht sehr sinnvoll. Du musst dann ja graphisch das auf die Winkelhalbierende y=x projizieren, um die überlappung der Intervalle zu sehen.
Graphisch ist es da einfacherm die intervalle auf parallele Geraden aufzutragen, dann mußt du nur senkrecht gehen, um Überlappungen zu sehen.
Wenn ich dich richtig verstanden habe suchst du die Intervalle Typ 2 die nicht in Intervallen Typ 1 liegen? überlappen sich auch Typ 1 und Typ 1 und entsprechend Typ 2 und Typ 2 Intervalle?
Wenn ich das physikalisch sehe, willst du Koinzidenzintervalle wegwerfen und nur Ereignisse 2 zählen die nicht mit 1 koinzidieren?
lass z.B einfach eine Uhr laufen die von Anfang 2 eingeschaltet wird, vom Ende 2 ausgeschaltet vom Beginn von 1 aus, und vom Ende 1 wieder eingeschaltet wird, wenn 2
nicht schon ausgeschaltet hat.
Gruss leduart
|
|
|
|