matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenOperations ResearchGreedy für Matroide
Foren für weitere Studienfächer findest Du auf www.vorhilfe.de z.B. Astronomie • Medizin • Elektrotechnik • Maschinenbau • Bauingenieurwesen • Jura • Psychologie • Geowissenschaften
Forum "Operations Research" - Greedy für Matroide
Greedy für Matroide < Operations Research < Diskrete Mathematik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Operations Research"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Greedy für Matroide: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 13:29 Di 29.07.2014
Autor: Morgyr

Aufgabe
Gegeben seien eine Menge von n Aufträgen. Zu jedem Auftrag gehört ein
Schlußtermin [mm] d_{i} \in \IN [/mm] und ein Gewinn [mm] p_{i} \in \IN. [/mm] Diese Aufträge sollen auf einer Maschine
ausgeführt werden. Die Maschine kann jeden der Aufträge in einer Zeiteinheit erledigen.
Eine zulässige Lösung ist eine Auswahl A [mm] \subseteq \{1,\ldots,n\} [/mm] der Aufträge, so dass die Aufträge
in A so angeordnet werden können, dass jeder dieser Aufträge bis zu seinem Schlußtermin
erledigt ist. Gesucht ist eine zulässige Lösung mit maximalem Gewinn.
Zeige, dass dem Problem ein Matroid zugrunde liegt und mit einem Greedy-Algorithmus
gelöst werden kann.

Moin,
ein paar Fragen zum Algorithmus(die sich während des schreibens auch fast wieder erledigt hatten), und bissl Übung zum Sätze formulieren :D

Fange erstmal an:

Sei M=(S,U) ein Matroid.

Die Menge der Aufträge entspreche S.
Für die Lösung des Problems muss jede mögliche Kombination der Aufträge betrachet werden. Diese Kombinationen bilden die Menge U. Da jede Kombination eine Teilmenge von S ist, ist U ein Menge von Teilmengen von S.
Da jede erdenkliche Kombination betrachtet wird, ist auch die leere Menge in U enthalten. Entsprechend ist auch jede Teilmenge einer Teilmenge von S in U enthalten und umgekehrt gibt es für jedes A, B [mm] \in [/mm] U und |B| = |A|+1 ein x [mm] \in [/mm] B \ A für das gilt [mm] A\cup \{x\} \subseteq [/mm] U.
Damit sind alle Bedingungen eines Matroids erfüllt und daher liegt dem Problem ein Matroid zu Grunde.

Der Greedy-Algorithmus findet für Matroide und eine Gewichtsfunktion eine Basis A minimalen Gewichts.
Eine (inklusions)maximale unabhängige Menge A [mm] \in [/mm] U nennt man Basis.
Entsprechend bricht der Algorithmus ab, sobald A eine Basis von M ist. Dies ist genau dann gegeben, wenn für jedes Element x x [mm] \in [/mm] S und x [mm] \in [/mm] A gilt. Da je Schleife das kleinste Element w(y) mit y [mm] \in [/mm] S zu A hinzugefügt wird, und A erst dann Basis ist, wenn jedes Element sortiert enthalten ist, terminiert der Algorithmus immer mit einer Basis und einer aufsteigenden Sortierung der Elemente x entlang w(x).

Da für das Problem ein Matroid zu Grunde liegt und eine Gewichtsfunktion d(x) gegeben ist, liefert der Greedy-Algorithmus eine Menge von allen Aufträgen, aufsteigend nach dem Schlußtermin sortiert. Somit erfüllt der Greedy die Aufgabenstellung nicht.

Ende
p(x) bzw [mm] p_{i} [/mm] wird ja gar nicht betrachtet, und es ist auch nicht gewährleistet, dass jeder Auftrag rechtzeitig abgearbeitet werden kann. Für 3 Aufträge, wobei der 1. Schlußtermin 1 hat und die beiden anderen Schlußtermin 2 haben, habe ich ja nicht unbedingt den maximalen Gewinn.

Nun kann man natürlich sagen, dass die Gewichtsfunktion p(x) ist und dann praktisch die sortierte Menge von hinten ausgelesen wird. Da wird der Schlußtermin gar nicht berücksichtigt, d.h. der erste bearbeitete Auftrag kann auch derjenige sein, der zwar den höchsten Profit hat aber auch die niedrigste Dringlichkeit. Da der ja direkt bearbeitet wird, hat ein Auftrag mit Schlußtermin 1 keine Chance mehr bearbeitet zu werden und somit ist auch der Profit nicht unbedingt der höchste.

Darüber hinaus liefert der Greedy ja eine sortierte Menge und nicht eine "Auswahl A ... die noch sortiert wird"

Oder verstehe ich da was falsch?



        
Bezug
Greedy für Matroide: Antwort
Status: (Antwort) fertig Status 
Datum: 06:48 Fr 01.08.2014
Autor: meili

Hallo,

> Gegeben seien eine Menge von n Aufträgen. Zu jedem Auftrag
> gehört ein
>  Schlußtermin [mm]d_{i} \in \IN[/mm] und ein Gewinn [mm]p_{i} \in \IN.[/mm]
> Diese Aufträge sollen auf einer Maschine
>  ausgeführt werden. Die Maschine kann jeden der Aufträge
> in einer Zeiteinheit erledigen.
>  Eine zulässige Lösung ist eine Auswahl A [mm]\subseteq \{1,\ldots,n\}[/mm]
> der Aufträge, so dass die Aufträge
>  in A so angeordnet werden können, dass jeder dieser
> Aufträge bis zu seinem Schlußtermin
>  erledigt ist. Gesucht ist eine zulässige Lösung mit
> maximalem Gewinn.
>  Zeige, dass dem Problem ein Matroid zugrunde liegt und mit
> einem Greedy-Algorithmus
>  gelöst werden kann.
>  Moin,
>  ein paar Fragen zum Algorithmus(die sich während des
> schreibens auch fast wieder erledigt hatten), und bissl
> Übung zum Sätze formulieren :D
>  
> Fange erstmal an:
>  
> Sei M=(S,U) ein Matroid.
>  
> Die Menge der Aufträge entspreche S.

[ok]

>  Für die Lösung des Problems muss jede mögliche
> Kombination der Aufträge betrachet werden. Diese
> Kombinationen bilden die Menge U. Da jede Kombination eine
> Teilmenge von S ist, ist U eine Menge von Teilmengen von S.
> Da jede erdenkliche Kombination betrachtet wird, ist auch
> die leere Menge in U enthalten.

[ok]

> Entsprechend ist auch jede
> Teilmenge einer Teilmenge von S in U enthalten und

Hier solltest du noch genauer sein. Es ist besser, wenn man als U nicht
die Potenzmenge von S (alle Teilmengen von S) nimmt, sondern nur die
in der Aufgabe als zulässige Lösungen bezeichneten Teilmengen von S.
Und dann zeigen, dass S mit diesem Mengensystem ein Matroid ist.

> umgekehrt gibt es für jedes A, B [mm]\in[/mm] U und |B| = |A|+1 ein
> x [mm]\in[/mm] B \ A für das gilt [mm]A\cup \{x\} \subseteq[/mm] U.
>  Damit sind alle Bedingungen eines Matroids erfüllt und
> daher liegt dem Problem ein Matroid zu Grunde.
>  
> Der Greedy-Algorithmus findet für Matroide und eine
> Gewichtsfunktion eine Basis A minimalen Gewichts.
>  Eine (inklusions)maximale unabhängige Menge A [mm]\in[/mm] U nennt
> man Basis.
>  Entsprechend bricht der Algorithmus ab, sobald A eine
> Basis von M ist. Dies ist genau dann gegeben, wenn für
> jedes Element x x [mm]\in[/mm] S und x [mm]\in[/mm] A gilt. Da je Schleife
> das kleinste Element w(y) mit y [mm]\in[/mm] S zu A hinzugefügt
> wird, und A erst dann Basis ist, wenn jedes Element
> sortiert enthalten ist, terminiert der Algorithmus immer
> mit einer Basis und einer aufsteigenden Sortierung der
> Elemente x entlang w(x).
>
> Da für das Problem ein Matroid zu Grunde liegt und eine
> Gewichtsfunktion d(x) gegeben ist, liefert der
> Greedy-Algorithmus eine Menge von allen Aufträgen,
> aufsteigend nach dem Schlußtermin sortiert. Somit erfüllt
> der Greedy die Aufgabenstellung nicht.

Mit verändertem Matroid und als Gewichtsfunktion p(x) der Gewinn pro
Autrag sollte es gehen.
Wie ist das mit minimal und maximal der Gewichtsfunktion?
Gewinn soll ja maximal werden.

>  
> Ende
>  p(x) bzw [mm]p_{i}[/mm] wird ja gar nicht betrachtet, und es ist
> auch nicht gewährleistet, dass jeder Auftrag rechtzeitig
> abgearbeitet werden kann. Für 3 Aufträge, wobei der 1.
> Schlußtermin 1 hat und die beiden anderen Schlußtermin 2
> haben, habe ich ja nicht unbedingt den maximalen Gewinn.
>  
> Nun kann man natürlich sagen, dass die Gewichtsfunktion
> p(x) ist und dann praktisch die sortierte Menge von hinten
> ausgelesen wird. Da wird der Schlußtermin gar nicht
> berücksichtigt, d.h. der erste bearbeitete Auftrag kann
> auch derjenige sein, der zwar den höchsten Profit hat aber
> auch die niedrigste Dringlichkeit. Da der ja direkt
> bearbeitet wird, hat ein Auftrag mit Schlußtermin 1 keine
> Chance mehr bearbeitet zu werden und somit ist auch der
> Profit nicht unbedingt der höchste.
>  
> Darüber hinaus liefert der Greedy ja eine sortierte Menge
> und nicht eine "Auswahl A ... die noch sortiert wird"
>  
> Oder verstehe ich da was falsch?

Wahrscheinlich muss du U  auf andere weise wie ein Greedy-Algorithmus herstellen.

>  
>  

Gruß
meili

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Operations Research"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.unimatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]