Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
M/M/C Warteschlangenmodell in VBA
zurück: Hyperlinks auf Dateien weiter: Range markieren/kopieren HELP! Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Neville
Im Profil kannst Du frei den Rang ändern


Verfasst am:
19. März 2011, 19:56
Rufname:

M/M/C Warteschlangenmodell in VBA - M/M/C Warteschlangenmodell in VBA

Nach oben
       Version: Office 2003

Hallo Freunde,

ich habe leider ein Problem mit VBA und blicke auch nihct mehr durch:(
Ich versuche seit Tagen die folgende Formel in VBA umzusetzen damit ich ein M/M/C Warteschlangenmodell-Simulationstool bauen kann! Leider komme ich nicht zum Ergebnis!

Die Formel lautet:

P0 = 1 / ∑ von n=0(unter Summenzeichen) bis c-1(Über Summenzeichen) + a ^ n / n! + a^c / c!*(1-p);

wobei a= lambda /Muj und p= Lambda/(Muj*c) !

Muj: Bearbeitungsrate
Lambda: Ankünfte
c= Bedienstellen
n=Kunden im System
p= Auslastung der Bedienstelle
a=Verkehrsintensität

Ich habe in Excel eine Formular in der man die Größe: Muj, Lamda, c und n angeben kann. Es soll nur im VBA die Größe P0, die die Wahrscheinlichkeit aussagt ob sich ein Kunde im System befindet oder nicht berechnet werden.
Ich habe bisher folgenden Code geschrieben, der nicht richtig sein kann, da alle Ergebnisse gleich sind!

Code:

Private Sub cmdStart_Click()


lambda = UserForm1.TextBox1.Value 'Ankunftsrate
mju = UserForm1.TextBox2.Value   'Bearbeitumg
VarC = UserForm1.TextBox3.Value 'Anzahl Stellen
VarN = UserForm1.TextBox4.Value 'Anzahl Kunden
VarA = lambda / mju

If VarN > 30 Then VarN = 30
If VarN < 1 Then VarN = 1
If VarC < 1 Then MsgBox " The value you have entered is not correct!"


For i = 1 To VarC

   
    p = lambda / VarC / mju
   
    'Rechenschritt zu P0
    Px = 0
    Px1 = VarA ^ VarC / (Application.WorksheetFunction.Fact(VarC) * (1 - p))
    For j = 0 To VarC - 1
        Px = Px + (VarA ^ j / Application.WorksheetFunction.Fact(j) + Px1)
    Next j
    P0 = 1 / Px
    ActiveSheet.Range("d" & i + 1) = P0
   
    'Rechenschritt zu Pn
    Pn = Cn * P0
    ActiveSheet.Range("e" & i + 1) = Pn
   
    'Rechenschritt zu LQ
    LQ = VarA ^ (VarC + 1) / (Application.WorksheetFunction.Fact(VarC - 1) * (VarC - VarA) ^ 2) * P0
    ActiveSheet.Range("f" & i + 1) = LQ
    ActiveSheet.Range("a" & i + 1) = i
Next i


End Sub



Im weiteren Verlauf soll auch Pn (Wahrscheinlichkeit ob sich ein oder mehrere Kunden im System befinden) sowie LQ die Länge der Schlange berechnet werden.

Ich würde mich auf eure Vorschläge sehr freuen!

Viele Grüße,

Neville
Gast



Verfasst am:
20. März 2011, 13:33
Rufname:

AW: M/M/C Warteschlangenmodell in VBA - AW: M/M/C Warteschlangenmodell in VBA

Nach oben
       Version: Office 2003

Hi,

ich gehe dann immer an die nächste Kasse Razz

Nun mal im Ernst.

Wenn ich deinen Code richtig verstehe, frage ich mich, weshalb du 2 Schleifen hast? Du veränderst mit der ersten Schleife permanent den 2. Summanden sowohl in den Bedienstellen als auch über die Variable p. Ist das denn richtig?

Geht es in der Formel nicht vielmehr um die Wahrscheinlichkeit der Schlangenbildung bei konstanter Zahl der Bedienstellen und steigender Kundenzahl??

Also nur eine Schleife von n=0 bis n= c-1 für den 1. Summanden a^n/n! und dann erst die Gesamtsumme?

Code:
For n = 0 To varC -1

    summe = summe + (a ^ n) / WorksheetFunction.Fact(n)
next

PO = 1 / summe + (a ^ varC) / (WorksheetFunction.Fact(varC) * (1 - p)) 



Grüßli
Phelan XLPH
Fortgeschritten


Verfasst am:
20. März 2011, 14:04
Rufname: Phelan


AW: M/M/C Warteschlangenmodell in VBA - AW: M/M/C Warteschlangenmodell in VBA

Nach oben
       Version: Office 2003

Vielleicht so:

Code:
Sub MMC()
    Dim n As Integer
    Dim c As Integer
    Dim Muj As Double
    Dim Lambda As Double
    Dim a As Double
    Dim p As Double
    Dim P0 As Double
   
    'P0 = 1 / ? von n=0(unter Summenzeichen) bis c-1(Über Summenzeichen) + a ^ n / n! + a^c / c!*(1-p);
    'wobei a= lambda /Muj und p= Lambda/(Muj*c) !

    Lambda = 10
    Muj = 2
    c = 3
    n = 1
   
    For n = n - 1 To c - 1
        a = Lambda / Muj
        p = Lambda / (Muj * c)
        P0 = P0 + a ^ n / WorksheetFunction.Fact(n) + a ^ c / WorksheetFunction.Fact(c) * (1 - p)
    Next
    P0 = 1 / P0
    MsgBox P0
End Sub

_________________
Was vorstellbar ist, ist auch machbar. - Albert Einstein
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
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 nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Wenn A1=M bis M99 dann "1" 7 penance 97 03. Feb 2014, 18:57
Gast Wenn A1=M bis M99 dann "1"
Keine neuen Beiträge Excel Hilfe: *T*n zu m beziehung in Excel darstellen und auswerten 1 cmeckler 70 23. Okt 2013, 10:02
RPP63 *T*n zu m beziehung in Excel darstellen und auswerten
Keine neuen Beiträge Excel VBA (Makros): Warteschlangenmodell Post oder Standard 5 Daniel! 323 27. Mai 2013, 14:53
StudX Warteschlangenmodell Post oder Standard
Keine neuen Beiträge Excel Formeln: Formel, um Tageswechsel im Format TT.M.JJ hh:mm anzuzeigen? 1 timbaland315 385 26. Apr 2012, 16:18
Gast Formel, um Tageswechsel im Format TT.M.JJ hh:mm anzuzeigen?
Keine neuen Beiträge Excel Formate: 1 d 1 h 1 m in eine Gesamtstundenzahl umrechnen 9 klausGast 480 22. März 2012, 19:31
Thomas Ramel 1 d 1 h 1 m in eine Gesamtstundenzahl umrechnen
Keine neuen Beiträge Excel VBA (Makros): Bereich mit Range(Cells(i,j),Cells(k,m)) ansprechen 2 freeone 717 10. Aug 2011, 15:03
freeone Bereich mit Range(Cells(i,j),Cells(k,m)) ansprechen
Keine neuen Beiträge Excel Formeln: erste N Werte ab M einer Matrix 7 Hubschrauber 264 26. Mai 2011, 11:22
Gast erste N Werte ab M einer Matrix
Keine neuen Beiträge Excel Formeln: Rechnen mit besonderem Zahlenformat (hh:mm:ss.m) 1 biodiff 1670 01. Apr 2011, 13:05
< Peter > Rechnen mit besonderem Zahlenformat (hh:mm:ss.m)
Keine neuen Beiträge Excel Formate: Bedingte Formatierung einer Zelle aus Matrix a wenn Wert i M 3 RodeoTheo 1197 21. Dez 2010, 19:34
Muffel Bedingte Formatierung einer Zelle aus Matrix a wenn Wert i M
Keine neuen Beiträge Excel Formeln: wenn in feld x=a dann feld y=m 13 Lordi0815 816 02. Dez 2010, 08:17
Ellesmitt wenn in feld x=a dann feld y=m
Keine neuen Beiträge Excel VBA (Makros): Spalte ausblenden bei n Bedingungen in m Zellen 4 Mia87 620 28. Sep 2010, 11:47
Mia87 Spalte ausblenden bei n Bedingungen in m Zellen
Keine neuen Beiträge Excel Formeln: n:m Beziehungen (mittels Hilfsspalte lösen) 3 DaMarv 1175 16. Sep 2010, 17:27
DaMarv n:m Beziehungen (mittels Hilfsspalte lösen)
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Excel Tipps