WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Gleichungssystem mit vielen Variablen und Gleichungen

 

protagonist
Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 22.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.04.2016, 08:32     Titel: Gleichungssystem mit vielen Variablen und Gleichungen
  Antworten mit Zitat      
Hallo zusammen,
ich hoffe jemand hat eine Idee:

ich habe ein paar Gleichungen der Form:
x1+x2+x6=4
x2+x12+x15=4
x5=0
x3+x5+x7=4
x7+x8+x9=4
x10+x11+x13+x14=4

wie kann ich am schnellsten alle Lösungen dieser Gleichungen ausgeben? Wichtig dabei wäre noch, dass nur natürliche Zahlen gesucht werden und keine Variable größer als 4 oder kleiner als 0 wird.

Was ich bereits versucht habe: alle Kombinationen der Variablen aussortieren - stößt bereits ab wenigen Variablen an die Grenze.
Mögliche Kombinationen für einzelne Gleichungen miteinander Kombinieren - da stößt mein Algorithmus rechenzeittechnisch an seine Grenzen.

Zuletzt bearbeitet von protagonist am 22.04.2016, 09:04, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.04.2016, 08:58     Titel:
  Antworten mit Zitat      
Hallo,

hast du noch zusätzliche Einschränkungen, z.B. dass x_i ganzzahlig sein sollen?

Die Koppelung der Gleichungen ist ja eher schwach, insofern wird es am besten sein, sie möglichst unabhängig voneinander anzugehen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
protagonist
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 22.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.04.2016, 09:04     Titel:
  Antworten mit Zitat      
danke für deine schnelle Antwort. Durch die schwache Kopplung kommen auch so extrem viele Lösungen zustande. Die Einschränkung der Variablen kurz gefasst: nur die Werte 0,1,2,3,4 sind möglich.

oh. und die zahlen können auch größer sein. Dh.:

x1+x2+x6>4
x2+x12+x15>4
x5>0
x3+x5+x7>4
x7+x8+x9>4
x10+x11+x13+x14>4

wäre die eigentlich richtige schreibweiße. Allerdings sind nur Minimallösungen erwünscht. Dh. es soll keine Lösungen geben, die nur größere Variablen haben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.04.2016, 09:32     Titel:
  Antworten mit Zitat      
Hallo,

selbst mit Gleichungen dürftest du auf über 100 Lösungen kommen. Bei Ungleichungen entsprechend mehr. Was möchtest du denn mit dieser langen Liste machen?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
protagonist
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 22.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.04.2016, 09:39     Titel:
  Antworten mit Zitat      
die lange Liste ist mein Endergebnis. Durch die Voraussetzung "Minimallösungen" hält sich die Lösungsmenge meist in Grenzen. Die Gleichungen sind oft auch stärker vernetzt. bisher habe ich das mit einer Kombination aus Kombinatorik der einzelnen Lösungen der Gleichungen und einer Logik die die Ergebnisse verknüpft. Um wirklich alle Minimallösungen zu erhalten, erhalte ich jedoch extrem viele temporäre Ergebnisse, die später wieder ausgefiltert werden müssen, weil sie eben keine Minimallösungen ergeben. Weil die Rechenzeit jetzt unter umständen mehrere Tage benötigt, wollte ich hier mal fragen, ob jemand an einen anderen Ansatz denkt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.04.2016, 11:44     Titel:
  Antworten mit Zitat      
Hallo,

Minimallösung bedeutet für dich, dass mindestens eine der Ungleichungen zur Gleichung wird?

Kannst du mal deinen bisherigen Ansatz posten?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
protagonist
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 22.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.04.2016, 12:34     Titel:
  Antworten mit Zitat      
Minimallösung heißt, es gibt keine andere Lösung nur gleiche oder kleinere Lösungen hat.

mein Lösungsansatz bisher wäre zunächst Minimallösungen der einzelnen Systeme:

dh. man bekommt hier 14 Matrizen der Form (hier für x1,x2,x6):
Code:
4 0 - - - 0 - - - - - - - -
3 1 - - - 0 - - - - - - - -
3 0 - - - 1 - - - - - - - -
2 2 - - - 0 - - - - - - - -
2 0 - - - 2 - - - - - - - -
...


dann wird zusammengesetzt was zusammen passt. Leider sind die Lösungen nicht so konsistent wie ich mir das wünsche.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.