INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Wie kann man eine zufällige Matrix erzeugen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

03.05.2012, 09:20
Beitrag #1

bmtil Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 67
Registriert seit: Sep 2011

2011 (32bit)
2011
DE_EN


Deutschland
Wie kann man eine zufällige Matrix erzeugen
Hallo, ich hab eine kleine Frage für die Mathematik Könner unter euch.
Ich hab eine Matrix, diese besitzt eine 4 stellige Anzahl an Zeilen.
Ich möchte aus dieser Matrix eine weitere erzeugen, indem ich zufällige Zeilen auswähle. Hier liegt das Problem. Ich weiss nicht wie man das bewerkstelligen könnte.
Meine erste Idee ist, ich würfel eine Zahl n, und nehme dann die ersten/letzen n Zeilen, das ist dann meine neue Matrix. Hier ist das Problem, dass bestimmte Zeilen nicht berücksichtigt werden.
Eine weitere Idee wäre, eine Zahl n zu würfeln, diese Zahl definiert die Nummer der gepickten Zeile, und diese wird an die erste Stelle der neuen Matrix geschoben. Dieser Vorgang wird so oft wiederholt, bis die neue Matrix eine genügende Anzahl an Zeilen besitzt. Hier ist das Problem, dass es vorkommen kann, dass eine Zahl mehrmals gewürfelt wird. Lösung dafür wäre einfach eine Wiederholung zu ignorieren und weiter zu würfeln. Ein weiteres Problem ist die Rechenzeit, da es sich hier um 4 stellige Zeilenanzahl handelt (die neue Matrix muss auch 4 stellige Zeilenanzahl besitzen).

Hat jemand vllt. eine Idee, wie so etwas noch funktionieren könnte?

Grueße.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
03.05.2012, 09:29 (Dieser Beitrag wurde zuletzt bearbeitet: 03.05.2012 09:29 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.425
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Wie kann man eine zufällige Matrix erzeugen
Hallo bmtil,

es gibt eine Funktion, die dir ein 1D-Array "verwürfelt" oder "randomized". Leider finde ich dieses jetzt gerade nicht, entweder findet es sich in den Tiefen der vi.lib oder bei OpenG...

Damit kannst du bequem deine Zeilennummern verwürfeln. Mit dem Ergebnis rufst du eine Schleife auf, die aus dem Originalarray die entsprechende Zeile indiziert und in ein Zielarray einträgt. Mit ordentlicher Inplace-Programmierung nimmt das nicht "soviel" Rechenzeit...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2012, 09:38
Beitrag #3

bmtil Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 67
Registriert seit: Sep 2011

2011 (32bit)
2011
DE_EN


Deutschland
RE: Wie kann man eine zufällige Matrix erzeugen
(03.05.2012 09:29 )GerdW schrieb:  Hallo bmtil,

es gibt eine Funktion, die dir ein 1D-Array "verwürfelt" oder "randomized". Leider finde ich dieses jetzt gerade nicht, entweder findet es sich in den Tiefen der vi.lib oder bei OpenG...

Damit kannst du bequem deine Zeilennummern verwürfeln. Mit dem Ergebnis rufst du eine Schleife auf, die aus dem Originalarray die entsprechende Zeile indiziert und in ein Zielarray einträgt. Mit ordentlicher Inplace-Programmierung nimmt das nicht "soviel" Rechenzeit...

Naja, es war jeher eine prinzipielle, als eine Labview Frage ^^ Hab mir eben auch folgendes ausgedacht:

Man wuerfelt zwei Zahlen. Erste Zahl k bestimmt den "Startwert", ab der Zeile mit dieser Nummer, werden die Zeilen gepickt. Die Anzahl der gepickten Zeilen bestimmt die zweite gewürfelte Zahl n. Vorgang wird so oft wiederholt bis die neue Matrix voll ist.

Geht momentan jeher auch um eine prinzipielle Frage, als LabView, ich muss den Kram in Matlab schreiben (was eigentlich ziemlich nervig ist, da LabView=super toll, ok Matlab auch, muss das halt noch lernen).

Aber die Antwort ist aufjedenfall ein ordentlicher Denkanstoß, vielen Dank.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.05.2012, 20:15
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Wie kann man eine zufällige Matrix erzeugen
Also wenn es darum geht, dass jede Zeile der "Vorgabematrix" in der neu gemischten Matrix nur 1x vorkommen darf, hier eine LabVIEW-Umsetzung für die zufällige Reihenfolge der Zeilenindices:
   
Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: