bài tập lớn mô hình hóa mô phỏng trạm xe bus

14 2.1K 27
bài tập lớn mô hình hóa mô phỏng trạm xe bus

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÀI TẬP LỚN HÌNH HÓA HỆ THỐNG NGẪU NHIÊN 1.Tên đề tài. phỏng trạm xe bus : - Sinh viên đi từ ký túc xá đến trường bằng xe bus,mỗi xe chứa được 60 sinh viên .Thời gian đi đến trường bắt đầu từ 6h30 đến 7h30,sinh viên đi đến trạm được tả bằng dòng tối giản với cường độ λ=1sv/s.Cứ sau 15’ thì có một chuyến xe bus đến trường .Nếu số sinh viên chờ xe < 60 sinh viên thì xe vẫn chạy đúng giờ.Nếu số sinh viên chờ xe > 60 thì số sinh viên thừa sẽ phải chờ chuyến sau.Sinh viên than phiền rằng không đủ xe để đi đến trường nên sau 7h30 vẫn còn nhiều sinh viên bị kẹt lại không kịp đến trường đúng giờ. Để đảm bảo không có sinh viên bị chậm giờ học thì thời gian giữa các chuyến xe phải là bao nhiêu? 2.Phân tích đề tài và tóm tắt phương pháp hình hóa. - Đề tài đưa ra trên cơ sở phân tích hoạt động của trạm xe bus. - Xây dựng phương pháp mô hình hóa hệ ngẫu nhiên để tìm ra phương án tối ưu nhất cho hoạt động của các chuyến xe giúp việc vận chuyển sinh viên đạt hiệu quả ,không có sinh viên nào bị kẹt tại trạm xe bus. Ta xây dựng thuật toán phỏng qua các bước : • Xây dựng hình sinh viên đi đến trạm xe bus.Khoảng cách giữa các trạm xe bus là t i =- λ 1 ln(U i ), U i ≈ U(0,1) • Xây dựng hình vận chuyển xe bus.Số chuyến xe phân bố đều đặn,sau T xe thì có một chuyến xe bus • Xếp chồng 2 hình đó với nhau • Đếm số sinh viên chờ ở trạm xe bus • Đếm số sinh viên còn lại tại trạm sau mỗi chuyến xe • Thay đổi các thời gian T xe để được thời gian chu kỳ xe bus hợp lý 1 3.Phân tích các biến ngẫu nhiên. Hệ ngẫu nhiên là hệ trong đó có các biến ngẫu nhiên .Các biến ngẫu nhiên được đặc trưng bởi luật phân phối xác suất. Các sự kiện ngẫu nhiên thường có các tính chất sau: -Dòng dừng vì cường độ xảy ra sự kiện :λ=const -Các sự kiện xảy ra hoàn toàn độc lập với nhau(không hậu quả) -Tại môt thời điểm chỉ có một sự kiện xảy ra Đó chính là dòng poisson dùng hay còn gọi là dòng tối giản.Khoảng cách giữa các sự kiện trong dòng tối giản tuân theo luật phân phối mũ exp(λ) Phân phối poisson có: +)hàm khối lượng: !x e x λ λ − P(x) = !x e x λ λ − nếu x ∈ (0,1) 0 phần còn lại +)Hàm phân phối: 0 nếu x< 0 F(x)= [ ] ∑ = − x i i i e 0 ! λ λ nếu x<=0 +)Thông số λ>0 +)kỳ vọng toán M(x)= λ +)Phương sai: 2 S = λ 4.Phân tích thuật giải: Ta nhận thấy bài toán ở đây có sự kiện ngẫu nhiên tuân theo luật phân phối mũ(dòng poisson dừng) Biến ngẫu nhiên ở đây chính là thời gian giữa các sinh viên đến trạm xe bus(t) 2 5. Lưu đồ tính 3 START Tx=Txe , t=0 , c=0 , dk=0 , a=lamda dk=1 U=RND , t=t+(-1/lamda)ln(U) T<3600 c = c + 1 t>=tx c>60 tx=tx+Txe c=c-60 c=0 dk=0 STOP 1 0 0 0 0 1 1 6.Điều kiện phỏng. Điều kiện đầu:thời gian t=0,c=0,s=0 Điều kiện phỏng : nhập giá trị λ>0 và Txe>0 Điều kiện ngừng phỏng :khi t=3600(s) Ta sẻ sử dụng các biến sau để lập trình phỏng cho hệ: t : tổng thời gian đi đến bến xe bus của sinh viên Txe : chu kỳ thời gian của xe bus Tx : tổng thời gian mà xe bus đã đi(có giá tri đầu là: tx=Txe) a : giá trị cường độ lamda(λ) (sẻ được nhập khi phỏng) dk :để điều khiển dừng khi hết thời gian phỏng (giá trị ban đầu dk=1) c: số sinh viên đang chờ ở bến xe bus s : số chuyến xe bus đã chạy 7.Chương trình phỏng trên VB Option Explicit Dim i, j, k, kh, tx, txe, txe1, phut, times, c, s, dk As Integer Dim t, a, u As Double Dim ast, bst, at, bt As String Dim X(160), Y(160) As Integer '***thu tuc tinh**** '***khai bao bien*** Public Sub tinh() Const e = 2.7182 a = CDbl(txtCDSV.Text * 100) u = Rnd t = t - 100 * Log(u) / (a * Log(e)) If t < 3600 Then c = c + 1 Else: t = 3600 End If 4 End Sub '******thu tuc ve Form 2******** Public Sub hienthi() lbSVCC.Caption = c lbSCX2.Caption = s pt4.Cls pt3.Cls For j = 1 To c pt4.Line ((40 * j - 30), 10)-((40 * j), 365), RGB(0, 250, 50), BF Next For j = 1 To s pt3.Line ((200 * j - 150), 10)-((200 * j), 365), RGB(0, 250, 50), BF Next phut = Int(t / 60) + 30 If phut >= 60 Then phut = phut - 60 txt1.Text = 7 End If txt2.Text = phut End Sub Private Sub cmdchay_Click() t = 0 s = 0 c = 0 If txttxe.Text = "" Then MsgBox "Nhap tg giua cac chuyen xe", vbOK Else txe = CDbl(txttxe.Text) * 60 End If 5 tx = txe dk = 1 End Sub '*******nut lenh hien thi Form2***************** Private Sub cmdDB_Click() txt1.Text = 6 txt2.Text = 30 t = 0 s = 0 c = 0 If txttxe.Text = "" Then MsgBox "Nhap tg giua cac chuyen xe", vbOK Else txe = CDbl(txttxe.Text) * 60 End If tx = txe dk = 1 pt2.Visible = True Timer1.Enabled = True Timer2.Enabled = True End Sub Private Sub cmddung_Click() Timer1.Enabled = False Timer2.Enabled = False pt2.Left = -1920 pt2.Visible = False End Sub '**********nut lenh ket thuc chuong trinh********** 6 Private Sub Command1_Click() Beep End End Sub '*******thu tuc dieu khien chuong trinh bang bo timerl******** Private Sub Timer1_Timer() Timer1.Interval = 50 If (dk = 1) Then tinh Else: pt2.Visible = False Timer1.Enabled = False Timer2.Enabled = False End If If t >= tx Then ' co xe bus den If c > 60 Then c = c - 60 Else: c = 0 End If s = s + 1 pt2.Left = -1850 Timer2.Enabled = True tx = tx + txe End If kh = c If kh <= 135 Then If kh Mod 3 = 1 Then For i = 0 To (kh - 1) / 3 - 1 Picture1(i).Visible = True 7 Pic2(i).Visible = True Pic4(i).Visible = True Next For i = (kh - 1) / 3 To 44 Picture1(i).Visible = False Pic2(i).Visible = False Pic4(i).Visible = False Next Picture1((kh - 1) / 3).Visible = True End If If kh Mod 3 = 0 Then For i = 0 To (kh / 3) - 1 Picture1(i).Visible = True Pic2(i).Visible = True Pic4(i).Visible = True Next For i = (kh - 1) / 3 To 44 Picture1(i).Visible = False Pic2(i).Visible = False Pic4(i).Visible = False Next End If If kh Mod 3 = 2 Then For i = 0 To (kh - 2) / 3 - 1 Picture1(i).Visible = True Pic2(i).Visible = True Pic4(i).Visible = True Next 8 For i = (kh - 1) / 3 To 44 Picture1(i).Visible = False Pic2(i).Visible = False Pic4(i).Visible = False Next Picture1((kh - 2) / 3).Visible = True Pic2((kh - 2) / 3).Visible = True End If Else: For i = 0 To 44 Picture1(i).Visible = True Pic2(i).Visible = True Pic4(i).Visible = True Next End If If t >= 3600 Then dk = 0 End If hienthi End Sub Private Sub lblLabel6_Click() End Sub Private Sub Timer2_Timer() txe1 = CDbl(txttxe.Text) Timer2.Interval = Int(0.5 * txe1 + 1) If pt2.Left >= 7440 Then Timer2.Enabled = False End If pt2.Left = pt2.Left + 30 + 200 / txe1 9 End Sub Private Sub Timer3_Timer() Dim X As String Dim Y As String X = Left(Form1.Caption, 1) Y = Mid(Form1.Caption, 2) Form1.Caption = Y & X End Sub '*************thu tuc dieu khien bang bo timer******************** Private Sub Timer1_timer() Timer1.Interval = 40 If dk = 1 Then If t >= (txe - 10) Then imI.Visible = True imI.Left = imI.Left + 150 End If If imI.Left >= 12000 Then imI.Left = 0 End If If (t < tx) Then tinh veduong 'hien thi thoi gian hien tai h = 7 + Int((t - 1800) / 3600) If t < 1800 Then p = 30 + Int(t / 60) Else: p = Int((t - 1800) / 60) End If List4.Clear 10 [...]... lượt phỏng với các thời gian Txe khác nhau ta có kết quả: Với Txe=15 phút: sau 1 giờ có 4 chuyến xe, và có 128 sinh viên bị kẹt lại 12 Với Tx=7 phút30giây: sau 1 giờ có 8chuyến và không có sinh viên nào kẹt lại 10.Nhận xét Qua kết quả phỏng ta nhận thấy để sinh viên đến trường đúng giờ và ko có sinh viên phải đợi nên chọn chu kỳ chạy của xe bus là : Txe=7 phút 30 giây 13 Tài liêu tham khảo: [1] Bài. .. Qua kết quả phỏng ta nhận thấy để sinh viên đến trường đúng giờ và ko có sinh viên phải đợi nên chọn chu kỳ chạy của xe bus là : Txe=7 phút 30 giây 13 Tài liêu tham khảo: [1] Bài giảng môn mô hình hóa hệ thống [2] Bài giảng Visual Basic Khoa Công Nghệ Thông Tin-Trường Đại Học Hàng Hải-2008 14 ... c = 0 End If s=s+1 tx = tx + txe 'hien thi ket qua List1.Clear List2.Clear List1.AddItem " " & s List2.AddItem " " & c List3.Clear List3.AddItem " " & c veduong 've SV con bi nho chuen End If End If If t = 3600 Then MsgBox "THOI GIAM MO PHONG BAY GIO LA 7:30 AM XIN MOI THUC HIEN LAI", MB_OK dk = 0 11 imI.Left = 0 End If End If End Sub 8.Thiết kế giao diện 9.Kết quả phỏng Giao diện khi chạy : Một . BÀI TẬP LỚN MÔ HÌNH HÓA HỆ THỐNG NGẪU NHIÊN 1.Tên đề tài. Mô phỏng trạm xe bus : - Sinh viên đi từ ký túc xá đến trường bằng xe bus, mỗi xe chứa được 60 sinh viên. giữa các trạm xe bus là t i =- λ 1 ln(U i ), U i ≈ U(0,1) • Xây dựng mô hình vận chuyển xe bus. Số chuyến xe phân bố đều đặn,sau T xe thì có một chuyến xe bus • Xếp chồng 2 mô hình đó với. chuyến xe giúp việc vận chuyển sinh viên đạt hiệu quả ,không có sinh viên nào bị kẹt tại trạm xe bus. Ta xây dựng thuật toán mô phỏng qua các bước : • Xây dựng mô hình sinh viên đi đến trạm xe bus. Khoảng

Ngày đăng: 06/06/2014, 13:37

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan