Tài liệu học tập Mô hình hóa và mô phỏng hệ thống điều khiển
Bạn đang xem 20 trang mẫu của tài liệu "Tài liệu học tập Mô hình hóa và mô phỏng hệ thống điều khiển", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- tai_lieu_hoc_tap_mo_hinh_hoa_va_mo_phong_he_thong_dieu_khien.pdf
Nội dung text: Tài liệu học tập Mô hình hóa và mô phỏng hệ thống điều khiển
- BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT CÔNG NGHIỆP KHOA ĐIỆN TÀI LIỆU HỌC TẬP MÔ HÌNH HÓA VÀ MÔ PHỎNG HỆ THỐNG ĐIỀU KHIỂN Lưu hành nội bộ
- LỜI GIỚI THIỆU Mô hình hoá là một phương pháp nghiên cứu khoa học được ứng dụng rất rộng rãi: từ nghiên cứu, thiết kế đến chế tạo, vận hành. Ngày nay nhờ sự trợ giúp của máy tính có tốc độ tính nhanh, bộ nhớ lớn mà phương pháp mô hình hoá được phát triển mạnh mẽ và đưa lại hiệu quả lớn. Mô hình hoá và mô phỏng được ứng dụng không những vào lĩnh vực khoa học, công nghệ mà còn ứng dụng có hiệu quả vào nhiều lĩnh vực khác như quân sự, kinh tế và xã hội v.v Ngày nay mô hình hoá và mô phỏng là một công cụ mạnh của cán bộ nghiên cứu, cán bộ kỹ thuật để giải các bài toán kỹ sư. Giáo trình mô hình hoá và mô phỏng hệ thống điều khiển được giảng dạy cho sinh viên ngành công nghệ kỹ thuật điều khiển và tự động hoá, ngành công nghệ kỹ thuật điện - điện tử, đồng thời cũng có thể làm tài liệu tham khảo cho sinh viên và cán bộ kỹ thuật của các ngành có liên quan Bài giảng được biên soạn theo đúng chương trình đào tạo và các quy định về cách trình bày của Nhà Trường. Nội dung của bài giảng gồm 7 chương trong mỗi chương bao gồm các phần nội dung chủ yếu sau: - Mục tiêu của chương. - Nội dung phần thảo luận. - Tóm tắt nội dung cốt lõi. - Bài tập ứng dụng và liên hệ thực tế. - Hướng dẫn tự học ở nhà. Do thời gian và trình độ có hạn nên bài giảng khó có thể tránh khỏi những thiếu sót nhất định. Chúng tôi luôn mong nhận được sự góp ý của bạn đọc để bài giảng được tái bản hoàn thiện hơn trong những lần sau. Xin chân thành cám ơn! Nhóm biên soạn Võ Thu Hà – Chủ biên Nguyễn Thị Thành Phạm Văn Huy
- CHƯƠNG 1 VAI TRÒ CỦA MÔ HÌNH HOÁ HỆ THỐNG MỤC TIÊU CỦA CHƯƠNG - Hiểu rõ khái niệm và đặc điểm vai trò của mô hình hóa hệ thống và mô phỏng. - Nắm được sự triển vọng phát triển của các phương pháp mô hình hóa hệ thống. - Về thái độ: Học sinh, Sinh viên hiểu rõ khái niệm và đặc điểm vai trò của mô hình hóa hệ thống và mô phỏng và nắm được sự triển vọng phát triển của các phương pháp mô hình hóa hệ thống. 1.1. KHÁI NIỆM CHUNG Ngày nay khó có thể tìm thấy lĩnh vực hoạt động nào của con người mà không sử dụng phương pháp mô hình hoá ở những mức độ khác nhau. Điều này đặc biệt quan trọng đối với lĩnh vực điều khiển các hệ thống (kỹ thuật, xã hội), bởi vì điều kiển chính là quá trình thu nhận thông tin từ hệ thống, nhận dạng hệ thống theo một mô hình nào đó và đưa ra quyết định điều khiển thích hợp. Quá trình này được tiếp diễn liên tục nhằm đưa hệ thống vận động theo một mục tiêu định trước. Quá trình phát triển khoa học kỹ thuật đi theo các bước cơ bản sau: Quan sát → thực nghiệm → nghiên cứu lý thuyết → tổ chức sản xuất. Mô hình hoá là một phương pháp khoa học trợ giúp cho các bước nói trên. Phương pháp mô hình hoá và mô phỏng được phát triển từ đại chiến thế giới lần thứ hai vào những năm 40 của thế kỷ 20. Lúc đó người ta ứng dụng phương pháp mô hình hoá và mô phỏng để nghiên cứu các phản ứng hạt nhân nhằm chế tạo bom nguyên tử. Ngày nay, nhờ có máy tính điện tử mà phương pháp mô hình hoá và mô phỏng phát triển nhanh chóng và được ứng dụng vào nhiều lĩnh vực khoa học kỹ thuật cũng như các ngành khoa học xã hội khác nhau. Nhờ có phương pháp mô hình hoá và mô phỏng, người ta có thể phân tích, nghiên cứu các hệ thống phức tạp, xác định các đặc tính, hành vi hoạt động của hệ thống. Các kết quả mô phỏng được dùng để thiết kế, chế tạo cũng như xác định các chế độ vận hành của hệ thống. Đối với các hệ thống phức tạp, phi tuyến, ngẫu nhiên, các tham số biến đổi theo thời gian, phương pháp giải tích truyền thống không thể cho ta lời giải chính xác được. Lúc này phương pháp mô hình hoá và mô phỏng phát huy sức mạnh của mình và trong nhiều trường hợp nó là giải pháp duy nhất để nghiên cứu các hệ thống phức tạp trên. 1.2. MỘT SỐ ĐỊNH NGHĨA CƠ BẢN: - Đối tượng (object) là tất cả những sự vật, sự kiện mà hoạt động của con người có liên quan tới. 3
- - Hệ thống (System) là tập hợp các đối tượng (con người, máy móc), sự kiện mà giữa chúng có những mối quan hệ nhất định. - Trạng thái của hệ thống (State of system) là tập hợp các tham số, biến số dùng để mô tả hệ thống tại một thời điểm và trong điều kiện nhất định. - Mô hình (Model) là một sơ đồ phản ánh đối tượng, con người dùng sơ đồ đó để nghiên cứu, thực nghiệm nhằm tìm ra quy luật hoạt động của đối tượng hay nói cách khác mô hình là đối tượng thay thế của đối tượng gốc để nghiên cứu về đối tượng gốc. - Mô hình hoá (Modelling) là thay thế đối tượng gốc bằng một mô hình nhằm các thu nhận thông tin quan trọng về đối tượng bằng cách tiến hành các thực nghiệm trên mô hình. Lý thuyết xây dựng mô hình và nghiên cứu mô hình để hiểu biết về đối tượng gốc gọi là lý thuyết mô hình hoá. Nếu các quá trình xảy ra trong mô hình đồng nhất (theo các chỉ tiêu định trước) với các quá trình xảy ra trong đối tượng gốc thì người ta nói rằng mô hình đồng nhất với đối tượng. Lúc này người ta có thể tiến hành các thực nghiệm trên mô hình để thu nhận thông tin về đối tượng. - Mô phỏng (Simulation, Imitation) là phương pháp mô hình hoá dựa trên việc xây dựng mô hình số (Numerical model) và dùng phương pháp số (Numerical method) để tìm các lời giải. Chính vì vậy máy tính số là công cụ hữu hiệu và duy nhất để thực hiện việc mô phỏng hệ thống. Lý thuyết cũng như thực nghiệm đã chứng minh rằng, chỉ có thể xây dựng được mô hình gần đúng với đối tượng mà thôi, vì trong quá trình mô hình hoá bao giờ cũng phải chấp nhận một số giả thiết nhằm giảm bớt độ phức tạp của mô hình, để mô hình có thể ứng dụng thuận tiện trong thực tế. Mặc dù vậy, mô hình hoá luôn luôn là một phương pháp hữu hiệu để con người nghiên cứu đối tượng, nhận biết các quá trình, các quy luật tự nhiên. Đặc biệt, ngày nay với sự trợ giúp đắc lực của khoa học kỹ thuật, nhất là khoa học máy tính và công nghệ thông tin, người ta đã phát triển các phương pháp mô hình hoá cho phép xây dựng các mô hình ngày càng gần với đối tượng nghiên cứu, đồng thời việc thu nhận, lựa chọn, xử lý các thông tin về mô hình rất thuận tiện, nhanh chóng và chính xác. Chính vì vậy, mô hình hoá là một phương pháp nghiên cứu khoa học mà tất cả những người làm khoa học, đặc biệt là các kỹ sư đều phải nghiên cứu và ứng dụng vào thực tiễn hoạt động của mình. 1.3. HỆ THỐNG VÀ MÔ HÌNH HỆ THỐNG Đầu tiên chúng ta xem xét môt số ví dụ về các hệ thống tương đối đơn giản. Hình 1.1 trình bày hệ thống tự động điều khiển tốc độ động cơ. Tín hiệu vào của hệ thống là tốc độ đặt mong muốn nđ(t), tín hiệu ra của hệ thống y(t) là tốc độ thực tế của động cơ. Sai lệch tốc độ e(t) = nđ(t) – y(t) được đưa vào bộ điều khiển để tạo ra tín hiệu điều khiển u(t) tác động vào động cơ nhằm duy trì tốc độ động cơ ở giá trị mong muốn. 4
- Hình 1.2 trình bày sơ đồ nđ(t) e(t) y(t) khối của hệ thống điều khiển quá BĐK ĐC trình sản xuất. Hệ thống sản xuất bao gồm nhiều hệ con chức năng như: cung cấp vật tư, năng lượng, Hình 1.1- Sơ đồ khối hệ điều khiển tự động tốc độ động cơ gia công, chế biến, lắp ráp, hoàn thiện sản phẩm, phân phối, tiêu thụ. Điều khiển quá trình sản xuất là trung tâm điều khiển. Đầu vào của hệ thống là đơn đặt hàng của khách hàng, đầu ra của hệ thống là sản phẩm cuối cùng. Đơn đặt hàng Trung tâm điều khiển Nguyên, nhiên, Cung ứng Gia công, Lắp ráp, hoàn Phân phối SP vật liệu vật tư chế biến thiện SP sản phẩm đầu ra Hình 1.2- Sơ đồ khối hệ thống điều khiển quá trình Từ hình 1.1 và hình 1.2 ta thấy hệ thống gồm nhiều phần tử thường được gọi là các thực thể (Entity), mỗi một thực thể lại có các thuộc tính (attribute) khác nhau. Một quá trình gây ra sự thay đổi trong hệ thống gọi là một hoạt động (activity). Một tác động làm thay đổi trạng thái của hệ thống gọi là một sự kiện (event). Tập hợp các biến trạng thái phản ánh trạng thái của hệ thống tại một thời điểm được gọi là biến trạng thái (state variable). Tuỳ theo mục đích nghiên cứu mà hệ thống được mô tả với mức độ chi tiết khác nhau. Bảng 1 trình bày một số hệ thống cùng với các đặc tính cơ bản của chúng. Bảng 1 Hệ thống Thực thể Thuộc tính Hoạt động Sự kiện Biến trạng thái Tốc độ Số khách chờ ở Giao thông Xe buýt Lái xe Xe đến bến Khoảng cách bến Khách Kiểm tra tài Rút tiền Số khách Số nhân viên phục Ngân hàng hàng khoản gửi hàng vụ Thông tin Thời lượng Thông tin Số người đợi liên Thông tin Truyền tin liên lạc liên lạc truyền đến lạc Khách Danh mục Tính trả Khách hàng Số khách hàng rời Siêu thị hàng mua sắm tiền đến siêu thị siêu thị Trạm lắp ráp Kích thước, Lắp ráp sản Sản phẩm Số sản phẩm hoàn Sản phẩm sản phẩm trọng lượng phẩm hoàn thiện thiện 5
- Có hai con đường để nghiên cứu hệ thống, đó là nghiên cứu trên hệ thực và nghiên cứu trên mô hình thay thế của nó. Rõ ràng nghiên cứu trên hệ thực cho ta kết quả trung thực và khách quan. Tuy nhiên trong nhiều trường hợp, việc tiến hành nghiên cứu trên hệ thực gặp rất nhiều khó khăn, phương pháp tốt nhất là nghiên cứu trên mô hình của nó. Chính vì vậy, phương pháp mô hình hoá và mô phỏng rất được chú ý nghiên cứu và phát triển. 1.4. TRIỂN VỌNG PHÁT TRIỂN CỦA PHƯƠNG PHÁP MÔ HÌNH HOÁ Trước đây, phương pháp giải tích được dùng để mô hình hoá hệ thống. Tuy nhiên, sự xuất hiện của máy tính điện tử đã tạo điều kiện thuận lợi cho quá trình tính toán như tăng khối lượng tính toán, giảm thời gian tính, nhưng bản thân phương pháp giải tích gặp rất nhiều khó khăn khi mô tả hệ thống như thường phải chấp nhận nhiều giả thiết để đơn giản hoá mô hình, do đó các kết quả nghiên cứu có độ chính xác không cao. Ngày nay, bên cạnh phương pháp giải tích nói trên, phương pháp mô phỏng được phát triển mạnh mẽ và ứng dụng rất rộng rãi. Các mô hình được xây dựng dựa trên các phương pháp mô phỏng được gọi là mô hình mô phỏng. Phương pháp mô phỏng cho phép đưa vào mô hình nhiều yếu tố sát gần vơi thực tế. Mặt khác, mô hình được giải trên máy tính có tốc độ tính toán nhanh, dung lượng lớn, do đó kết quả thu được có độ chính xác cao. Vì vậy, phương pháp mô phỏng đã tạo điều kiện để giải các bài toán phức tạp như bài toán mô hình hoá các hệ thống lớn, hệ thống ngẫu nhiên, phi tuyến có các thông số biến thiên theo thời gian. Phương pháp mô phỏng đặc biệt phát huy hiệu quả khi cần mô hình hoá các hệ thống lớn mà đặc điểm của nó là có cấu trúc phân cấp, cấu trúc hệ con, giữa các hệ con và trung tâm điều khiển có sự trao đổi thông tin với nhau. Phương pháp mô phỏng cũng tỏ ra hữu hiệu khi mô phỏng các hệ thống có các yếu tố ngẫu nhiên, có thông tin không đầy đủ, các thông tin sẽ được bổ sung trong quá trình mô phỏng, trong quá trình trao đổi thông tin giữa người điều khiển và đối tượng. Phương pháp mô phỏng được ứng dụng để mô hình hoá trong nhiều lĩnh vực khác nhau như: khoa học kỹ thuật, xã hội, sinh học, Tóm lại, mô hình hoá là một phương pháp nghiên cứu khoa học đang phát triển và rất có triển vọng. Ở giai đoạn thiết kế hệ thống, mô hình hoá giúp người thiết kế lựa chọn cấu trúc, các thông số của hệ thống để tổng hợp hệ thống. Ở giai đoạn vận hành hệ thống mô hình hoá giúp cho người điều khiển giải các bài toán tối ưu, dự đoán các trạng thái của hệ thống. Đặc biệt trong trường hợp kết hợp hệ chuyên gia (Expert system) với mô hình hoá người ta có thể giải được nhiều bài toán điều khiển, tiết kiệm được nhiều thời gian cũng như chi phí về vật chất và tài chính. Phương pháp mô hình hoá thường được dùng trong các trường hợp sau: 6
- a- Khi nghiên cứu trên hệ thống thực gặp nhiều khó khăn do nhiều nguyên nhân gây ra như sau: - Giá thành nghiên cứu trên hệ thống thực quá đắt. Ví dụ: Nghiên cứu kết cấu tối ưu, độ bền, khả năng chống dao động của ô tô, tàu thuỷ, máy bay, người ta phải tác động vào đối tượng nghiên cứu các lực đủ lớn đến mức có thể phá huỷ đối tượng để từ đó đánh giá các chỉ tiêu kỹ thuật đã đề ra. Như vậy, giá thành nghiên cứu sẽ rất đắt. Bằng cách mô hình hoá trên máy tính ta dễ dàng xác định được kết cấu tối ưu của các thiết bị nói trên. - Nghiên cứu trên hệ thống thực đòi hỏi thời gian quá dài. Ví dụ: Nghiên cứu đánh giá độ tin cậy, đánh giá tuổi thọ trung bình của hệ thống kỹ thuật (thông thường tuổi thọ trung bình của hệ thống kỹ thuật khoảng 30 40 năm), hoặc nghiên cứu quá trình phát triển dân số trong khoảng thời gian 20 50 năm, Nếu chờ đợi quãng thời gian dài như vậy mới có kết quả nghiên cứu thì không còn tính thời sự nữa. Bằng cách mô phỏng hệ thống và cho “hệ thống” vận hành tương đương với khoảng thời gian nghiên cứu người ta có thể đánh giá được các chỉ tiêu kỹ thuật cần thiết của hệ thống. - Nghiên cứu trên hệ thực ảnh hưởng đến sản xuất hoặc gây nguy hiểm cho người và thiết bị. Ví dụ: Nghiên cứu quá trình cháy trong lò hơi của nhà máy nhiệt điện, trong lò luyện clanhke của nhà máy xi măng, người ta phải thay đổi chế độ cấp nhiên liệu (than, dầu), tăng giảm lượng gió cấp, thay đổi áp suất trong lò, Việc làm các thí nghiệm như vậy sẽ cản trở việc sản xuất bình thường, trong nhiều trường hợp có thể xảy ra cháy, nổ gây nguy hiểm cho người và thiết bị. Bằng cách mô phỏng hệ thống, người ta có thể cho hệ thống “vận hành” với các bộ thông số, các chế độ vận hành khác nhau để tìm ra lời giải tối ưu. - Trong một số trường hợp không cho phép làm thực nghiệm trên hệ thống thực. Ví dụ: Nghiên cứu các hệ thống làm việc ở môi trường độc hại, nguy hiểm, dưới hầm sâu, dưới đáy biển, hoặc nghiên cứu trên cơ thể người, Trong những trường hợp này dùng phương pháp mô phỏng là giải pháp duy nhất để nghiên cứu hệ thống. b- Phương pháp mô hình hoá cho phép đánh giá độ nhạy của hệ thống khi thay đổi tham số hoặc cấu trúc của hệ thống cũng như đánh giá phản ứng của hệ thống khi thay đổi tín hiệu điều khiển. Những số liệu này dùng để thiết kế hệ thống hoặc lựa chọn thông số tối ưu để vận hành hệ thống. c- Phương pháp mô hình hoá cho phép nghiên cứu hệ thống ngay cả khi chưa có hệ thống thực. Trong trường hợp này, khi chưa có hệ thống thực thì việc nghiên cứu trên mô hình là giải pháp duy nhất để đánh giá các chỉ tiêu kỹ thuật của hệ thống, lựa chọn cấu 7
- trúc và thông số tối ưu của hệ thống, đồng thời mô hình cũng được dùng để đào tạo và huấn luyện. NỘI DUNG THẢO LUẬN 1. Nội dung phần thảo luận 1: Khái niệm chung về hệ thống và mô hình hệ thống 2. Nội dung phần thảo luận 2: Triển vọng phát triển của phương pháp mô hình hoá hệ thống và mô hình hệ thống TÓM TẮT NỘI DUNG CỐT LÕI Hiểu rõ khái niệm và đặc điểm vai trò của mô hình hóa hệ thống và mô phỏng. Nắm được sự triển vọng phát triển của các phương pháp mô hình hóa hệ thống. BÀI TẬP ỨNG DỤNG, LIÊN HỆ THỰC TẾ 1. Bài tập ứng dụng, liên hệ thực tế 1. Hãy xác định các thành phần của hệ thống là thực thể, thuộc tính, hoạt động, sự kiện, biến trạng thái của cảng biển được mô tả như sau: tàu đến cảng sẽ cập bến nếu còn chỗ trống, ngược lại sẽ phải xếp hàng chờ đến lượt. Tàu được các cần cẩu bốc dỡ hàng hoá. Khi hàng bốc xong tàu rời bến ngay. 2. Bài tập ứng dụng, liên hệ thực tế 2. Yêu cầu như câu một nhưng hệ thống là quán cà phê, trạm rửa xe. HƯỚNG DẪN TỰ Ở NHÀ Hãy lấy ví dụ chứng minh những khó khăn gặp phải khi nghiên cứu trên hệ thực và những ưu điểm khi chuyển sang nghiên cứu trên mô hình bằng phương pháp mô phỏng. 8
- CHƯƠNG 2 KHÁI NIỆM CƠ BẢN VỀ MÔ HÌNH HOÁ HỆ THỐNG MỤC TIÊU CỦA CHƯƠNG - Hiểu rõ khái niệm cơ bản về mô hình hóa hệ thống - Nắm được các đặc điểm, phân loại mô hình hệ thống và một số nguyên tắc khi xây dựng mô hình hóa hệ thống. - Về thái độ: Học sinh, Sinh viên hiểu rõ khái niệm cơ bản về mô hình hóa hệ thống và nắm được các đặc điểm, sự phân loại mô hình hệ thống và một số nguyên tắc khi xây dựng mô hình hóa hệ thống. 2.1. KHÁI NIỆM CHUNG Ngày nay để phân tích và tổng hợp các hệ thống lớn, người ta thường sử dụng phương pháp tiếp cận hệ thống. Khác với phương pháp truyền thống trước đây đi phân tích từ phần tử đến hệ thống, phương pháp tiếp cận hệ thống đi từ phân tích chung toàn hệ thống đến cấu tạo từng phần tử, đi từ xác định muc tiêu toàn hệ thống đến chức năng, nhiệm vụ của từng phần tử cụ thể, xác định mối tương quan giữa các phần tử trong hệ thống, giữa hệ thống đang xét với các hệ thống khác và với môi trường xung quanh. Người ta định nghĩa hệ thống (system) S là tập hợp các phần tử có quan hệ với nhau, đó chính là đối tượng cần nghiên cứu. Môi trường (Environment) E là tập hợp các thực thể ngoài hệ thống có tác động qua lại với hệ thống đang xét. Tuỳ thuộc vào mục đích nghiên cứu mà người ta xác định hệ thống S và môi trường E tương ứng. Khi tiến hành mô hình hoá điều quan trọng là xác định mục tiêu mô hình hoá, trên cơ sở đó xác định hệ thống S, môi trường E và mô hình (model) M. Bước tiếp theo là xác định cấu trúc của hệ thống, tức là tập các phần tử và mối quan hệ giữa chúng trong hệ thống. Cấu trúc của hệ thống có thể được xem xét trên hai phương diện: từ phía ngoài và từ phía trong. Từ phía ngoài tức là xem xét các phần tử cấu thành hệ thống và mối quan hệ giữa chúng hay nói cách khác đó là phương pháp tiếp cận cấu trúc. Từ phía trong, tức là phân tích đặc tính chức năng của các phần tử cho phép hệ thống đạt được mục tiêu đã định hay nói cách khác đó là phương pháp tiếp cận chức năng. Khi xem xét sự vận động của hệ thống theo thời gian S(t) có nghĩa là hệ thống chuyển từ trạng thái này sang trạng thái khác trong không gian trạng thái Z, người ta quan tâm đến chức năng hoạt động của hệ thống. Để đánh giá chức năng của hệ thống người ta phải xác định các chỉ tiêu đánh giá, tập các chỉ tiêu riêng hoặc chỉ tiêu tổng hợp cho toàn hệ thống. Tiếp cận hệ thống cho phép ta xây dựng được mô hình hệ 9
- thống lớn có tính đến nhiều yếu tố tác động trong nội bộ hệ thống S cũng như giữa S với môi trường E. Người ta có thể chia quá trình mô hình hoá ra làm hai giai đoạn: Giai đoạn thiết kế tổng thể hay thiết kế ở tầm vĩ mô (Macro Design) và giai đoạn thiết cụ thể hay thiết kế ở mức đọ vi mô (Micro Design). Trong giai đoạn thiết kế tổng thể, trên cơ sở các dữ liệu của hệ thống thực và của môi trường E người ta xây dựng mô hình hệ thống và mô hình môi trường thoả mãn các chỉ tiêu đánh giá định trước. Còn trong giai đoạn thiết kế cụ thể, trên cơ sở mô hình đã được lựa chọn, người ta xác định các điều kiện ràng buộc, xây dựng các chương trình mô phỏng trên máy tính và thực hiện việc mô phỏng để xác định các đặc tính kinh tế kỹ thuật của hệ thống thực. 2.2. ĐẶC ĐIỂM CỦA MÔ HÌNH HOÁ HỆ THỐNG Cùng với sự phát triển của các phương pháp lý thuyết, các phương pháp thực nghiệm để nghiên cứu, phân tích, tổng hợp hệ thống ngày càng được hoàn thiện. Đối với một hệ thống thực nghiệm có hai phương pháp cơ bản để nghiên cứu thực nghiệm: Nghiên cứu trên hệ thực và nghiên cứu trên mô hình của nó. Nghiên cứu thực nghiệm trên hệ thực cho ta số liệu khách quan, trung thực. Ở đây phải giải quyết vấn đề lấy mẫu thống kê, ước lượng tham số, phân tích và xử lý dữ liệu, Tuy nhiên, việc nghiên cứu trên hệ thực trong nhiều trường hợp rất khó khăn, khi đó nghiên cứu trên mô hình là phương pháp có nhiều triển vọng. Nhìn chung các đối tượng thực có cấu trúc phức tạp và thuộc loại hệ thống lớn, vì vậy mô hình của chúng cũng được liệt vào các hệ thống lớn và có những đặc điểm cơ bản sau: a- Tính mục tiêu Tuỳ theo yêu cầu nghiên cứu có thể có mô hình chỉ có một mục tiêu là để nghiên cứu một nhiệm vụ cụ thể nào đó hoặc mô hình đa mục tiều nhằm khảo sát một số chức năng, đặc tính của đối tượng thực tế. b- Độ phức tạp Độ phức tạp thể hiện ở cấu trúc phân cấp của mô hình, các mối quan hệ qua lại giữa các hệ con với nhau và giữa hệ thống S với môi trường E. c- Hành vi của mô hình Hành vi của mô hình là con đường để mô hình đạt được mục tiêu đề ra. Tuỳ thuộc vào việc có yếu tố ngẫu nhiên tác động vào hệ hay không mà ta có mô hình tiền định hay mô hình ngẫu nhiên. Theo hành vi của hệ thống có thể phân ra mô hình liên tục hoặc mô hình gián đoạn. Nghiên cứu hành vi của mô hình có thể biết được xu hướng vận động của đối tượng thực. d- Tính thích nghi 10
- Tính thích nghi là đặc tính của hệ thống có tổ chức cấp cao, hệ thống có thể thích nghi với sự thay đổi của các tác động vào hệ thống. Tính thích nghi của mô hình thể hiện ở khả năng phản ánh được các tác động của môi trường tới hệ thống và khả năng giữ ổn định mô hình khi các tác động đó thay đổi. e- Tính điều khiển được Ngày nay nhiều phương pháp tự động hoá đã được ứng dụng trong mô hình hoá hệ thống. Sử dụng các biện pháp lập trình người ta có thể điều khiển theo mục tiêu đã định trước, thực hiện khả năng đối thoại giữa người và mô hình để thu nhận thông tin và ra quyết định điều khiển. g- Khả năng phát triển của mô hình Khi tiến hành mô hình hoá hệ thống bao giờ cũng xuất hiện bài toán nghiên cứu sự phát triển của hệ thống trong tương lai. Vì vậy, mô hình phải có khả năng mở rộng, thu nạp thêm các hệ con, thay đổi cấu trúc để phù hợp với sự phát triển của hệ thống thực. h- Độ chính xác - Độ tin cậy Mô hình hoá là thay thế đối tượng thực bằng mô hình của nó để thuận tiện cho việc nghiên cứu. Vì vậy, mô hình phải phản ánh trung thực các hiện tượng xảy ra trong đối tượng. Các kết quả thực nghiệm trên mô hình phải có độ chính xác, tin cậy thoả mãn yêu cầu đề ra. Cần phải nhấn mạnh rằng kết quả mô hình hoá phụ thuộc rất nhiều vào khả năng và kinh nghiệm của người lập mô hình hay người nghiên cứu. Một mặt, người nghiên cứu phải am hiểu đối tượng, nắm vững các hiện tượng, quy luật xảy ra trong hệ thống thực. Mặt khác, người nghiên cứu phải biết lựa chọn phương pháp mô hình hoá thích hợp với từng đối tượng cụ thể, đồng thời phải có khả năng thực hiện mô hình trên máy tính – tức khả năng lập trình để giải các bài toán về mô hình hoá. 2.3. PHÂN LOẠI MÔ HÌNH HỆ THỐNG Có thể căn cứ vào nhiều dấu hiệu khác nhau để phân loại mô hình. Mô hình hệ thống Mô hình vật lý Mô hình toán học Mô hình thu nhỏ Mô hình tương tự Mô hình giải tích Mô hình số Mô hình mô phỏng Hình 2.1- Sơ đồ phân loại mô hình 11
- Hình 2.1 biểu diễn một cách phân loại mô hình điển hình. Theo cách này mô hình được chia thành hai nhóm chính: mô hình vật lý và mô hình toán học hay còn gọi là mô hình trừu tượng. - Mô hình vật lý tương tự được cấu tạo bằng các phần tử vật lý không giống với đối tượng thực nhưng các quá trình xảy ra trong mô hình tương đương với quá trình xảy ra trong đối tượng thực. Ví dụ, có thể nghiên cứu quá trình dao động của con lắc đơn bằng mô hình tương tự là mạch dao động R-L-C vì quá trình dao động điều hoà trong mạch R-L-C hoàn toàn tương tự quá trình dao động điều hoà của con lắc đơn, hoặc người ta có thể nghiên cứu đường dây tải điện (có thông số phân bố rải) bằng mô hình tương tự là mạng bốn cực R-L-C (có thông số tập trung). Ưu điểm của loại mô hình này là giá thành rẻ, cho phép chúng ta nghiên cứu một số đặc tính chủ yếu của đối tượng thực. - Mô hình toán học thuộc loại mô hình trừu tượng. Các thuộc tính được phản ánh bằng các biểu thức, phương trình toán học. Mô hình toán học được chia thành mô hình giải tích và mô hình số. Mô hình giải tích được xây dựng bởi các biểu thức giải tích. Ưu điểm của loại mô hình là cho ta kết quả rõ ràng, tổng quát. Nhược điểm của mô hình giải tích là thường phải chấp nhận một số giả thiết đơn giản hoá để có thể biểu diễn đối tượng thực bằng các biểu thức giải tích, vì vậy loại mô hình này chủ yếu được dùng cho các hệ tiền định và tuyến tính. - Mô hình số được xây dựng theo phương pháp số tức là bằng các chương trình chạy trên máy tính số. Ngày nay, nhờ sự phát triển của kỹ thuật máy tính và công nghệ thông tin, người ta đã xây dựng được các mô hình số có thể mô phỏng được quá trình hoạt động của đối tượng thực. Những mô hình loại này được gọi là mô hình mô phỏng này (simulation model). Ưu điểm của mô hình mô phỏng là có thể mô tả các yếu tố ngẫu nhiên và tính phi tuyến của đối tượng thực, do đó mô hình càng gần với đối tượng thực. Ngày nay, mô hình mô phỏng được ứng dụng rất rộng rãi. Có thể căn cứ vào các đặc tính khác nhau để phân loại mô hình như: mô hình tĩnh và mô hình động, mô hình tiền định và mô hình ngẫu nhiên, mô hình tuyến tính và mô hình phi tuyến, mô hình có thông số tập trung, mô hình có thông số rải, mô hình liên tục, mô hình gián đoạn, Mô hình phải đạt được hai tính chất cơ bản sau: Tính đồng nhất: mô hình phải đồng nhất với đối tượng mà nó phản ánh theo những tiêu chuẩn định trước. Tính thực dụng: Có khả năng sử dụng mô hình để nghiên cứu đối tượng. Rõ ràng, để tăng tính đồng nhất trong mô hình phải đưa vào nhiều yếu tố phản ánh đầy đủ các mặt của đối tượng. Nhưng như vậy nhiều khi mô hình trở nên quá phức tạp và cồng kềnh đến nỗi không thể dùng để tính toán được nghĩa là mất đi tính chất thực dụng của mô hình. Nếu quá chú trọng tính thực dụng, xây dựng mô hình quá đơn giản thì sai 12
- lệch giữa mô hình và đối tượng thực sẽ lớn, điều đó sẽ dẫn đến kết quả nghiên cứu không chính xác. Vì vậy, tuỳ thuộc vào mục đích nghiên cứu mà người ta lựa chọn tính đồng nhất và tính thực dụng của mô hình một cách thích hợp. 2.4. MỘT SỐ NGUYÊN TẮC KHI XÂY DỰNG MÔ HÌNH Việc xây dựng mô hình toán học phụ thuộc vào đặc điểm của hệ thống thực, vì vậy, khó có thể đưa ra những nguyên tắc chặt chẽ mà chỉ có thể đưa ra những nguyên tắc có tính định hướng cho việc xây dựng mô hình. a- Nguyên tắc xây dựng sơ đồ khối Nhìn chung hệ thống thực là một hệ thống lớn phức tạp, vì vậy, người ta tìm cách phân chúng ra thành nhiều hệ con, mỗi hệ con đảm nhận một số chức năng của hệ lớn. Như vậy, mỗi hệ con được biểu diễn bằng một khối, tín hiệu ra của khối trước chính là tín hiệu vào của khối sau. b- Nguyên tắc thích hợp Tuỳ theo mục đích nghiên cứu mà người ta lựa chọn một cách thích hợp giữa tính đồng nhất và tính thực dụng của mô hình. Có thể bỏ bớt một số chi tiết không quan trọng để mô hình bớt phức tạp và việc giải các bài toán trên mô hình dễ dàng hơn. c- Nguyên tắc về độ chính xác Yêu cầu về độ chính xác phụ thuộc vào mục đích nghiên cứu. Ở giai đoạn thiết kế tổng thể độ chính xác không đòi hỏi cao nhưng khi nghiên cứu thiết kế chi tiết những bộ phận cụ thể thì độ chính xác của mô hình phải đạt được yêu cầu cần thiết. d- Nguyên tắc tổ hợp Tuỳ theo mục đích nghiên cứu mà người ta có thể phân chia hoặc tổ hợp các bộ phận của mô hình lại với nhau. Ví dụ, khi mô hình hoá một phân xưởng để nghiên cứu quá trình sản xuất sản phẩm thì ta coi các máy móc là thực thể của nó. Nhưng khi nghiên cứu quá trìn điều khiển nhà máy thì ta coi tổ hợp phân xưởng như là một thực thể của nhà máy. NỘI DUNG THẢO LUẬN 1. Nội dung phần thảo luận 1: Khái niệm chung về hệ thống và mô hình hệ thống 2. Nội dung phần thảo luận 2: Triển vọng phát triển của phương pháp mô hình hoá hệ thống và mô hình hệ thống TÓM TẮT NỘI DUNG CỐT LÕI Hiểu rõ khái niệm và đặc điểm vai trò của mô hình hóa hệ thống và mô phỏng. Nắm được sự triển vọng phát triển của các phương pháp mô hình hóa hệ thống. BÀI TẬP ỨNG DỤNG, LIÊN HỆ THỰC TẾ 1. Bài tập ứng dụng, liên hệ thực tế 1. 13
- Hãy nêu những khó khăn gặp phải khi tiến hành nghiên cứu trên các hệ thực sau đây: nghiên cứu quá trình lão hoá của vật liệu điện, nghiên cứu quá trình phát triển dân số của một quốc gia, nghiên cứu quá trình cháy trong lò hơi của nhà máy nhiệt điện, nghiên cứu quá trình biến dạng của cột điện cao thế 2. Bài tập ứng dụng, liên hệ thực tế 2. Yêu cầu như câu một nhưng hệ thống là quán cà phê, trạm rửa xe. HƯỚNG DẪN TỰ Ở NHÀ 1. Hãy lấy ví dụ chứng minh những khó khăn gặp phải khi nghiên cứu trên hệ thực và những ưu điểm khi chuyển sang nghiên cứu trên mô hình bằng phương pháp mô phỏng. 2. Cho các hệ thống sau đây: - Siêu thị. - Đường dây tải điện cao áp. - Trạm lắp ráp linh kiện điện tử. - Mô hình dòng sông. - Cửa hàng ăn. Nếu muốn mô hình hoá các hệ thống nói trên thì nên dùng mô hình loại nào, mô hình giải tích hay mô hình mô phỏng? 14
- CHƯƠNG 3 PHƯƠNG PHÁP MÔ PHỎNG MỤC TIÊU CỦA CHƯƠNG - Hiểu rõ khái niệm chung về phương pháp mô phỏng mô hình hóa hệ thống - Nắm được bản chất của phương pháp mô phỏng, các bước nghiên cứu mô phỏng - Về thái độ: Học sinh, Sinh viên hiểu rõ khái niệm chung về phương pháp mô phỏng mô hình hóa hệ thống, nắm được bản chất của phương pháp mô phỏng, các bước nghiên cứu mô phỏng. 3.1. KHÁI NIỆM CHUNG VỀ PHƯƠNG PHÁP MÔ PHỎNG Khi có một mô hình toán học của hệ thống thực người ta có thể tìm các thông tin về hệ thống bằng nhiều cách. Trong trường hợp mô hình tương đối đơn giản, người ta có thể dùng phương pháp giải tích, ngược lại người ta thường dùng phương pháp số. Phương pháp giải tích cho ta lời giải tổng quát còn phương pháp số cho ta lời giải của từng bước tính với những điều kiện xác định, muốn lời giải đạt độ chính xác cao, số bước tính phải được tăng lên đủ lớn. Đối với các hệ thống lớn, có cấu trúc phức tạp, có quan hệ tác động qua lại giữa các hệ con với trung tâm điều khiển, giữa hệ thống với môi trường xung quanh, có các yếu tố ngẫu nhiên tác động, thì phương pháp giải tích tỏ ra bất lực. Trong trường hợp này người ta phải dùng phương pháp mô phỏng. Bản chất của phương pháp mô phỏng là xây dựng một mô hình số (numerical model) tức là mô hình được thể hiện bằng các chương trình máy tính. Người ta mô hình hoá bản thân hệ thống S với các mối quan hệ nội tại đồng thời mô hình hoá cả môi trường E xung quanh, nơi hệ thống S làm việc, với các quan hệ tác động qua lại giữa S và E. Khi có mô hình số người ta tiến hành các “thực nghiệm” trên mô hình. Các “thực nghiệm” đó được lặp đi lặp lại nhiều lần và kết quả được đánh giá theo xác suất. Kết quả càng chính xác nếu số lần “thực nghiệm” càng lớn. Như vậy, phương pháp mô phỏng đòi hỏi khối lượng tính toán rất lớn, điều này chỉ có thể giải quyết được khi ứng dụng các máy tính tốc độ cao. Nhờ có sự phát triển của máy tính mà phương pháp mô phỏng ngày càng được hoàn thiện. 3.2. BẢN CHẤT CỦA PHƯƠNG PHÁP MÔ PHỎNG Phương pháp mô phỏng có thể định nghĩa như sau: “Mô phỏng là quá trình xây dựng mô hình toán học của hệ thống thực và sau đó tiến hành tính toán thực nghiệm trên mô hình để mô tả, giải thích và dự đoán hành vi của hệ thống thực”. 15
- Theo định nghĩa này, có ba điểm cơ bản mà mô phỏng phải đạt được. Thứ nhất là phải có mô hình toán học tốt tức là mô hình có tính đồng nhất cao với hệ thực đồng thời mô hình được mô tả rõ ràng thuận tiện cho người sử dụng. Thứ hai là mô hình cần phải có khả năng làm thực nghiệm trên mô hình tức là có khả năng thực hiện các chương trình máy tính để xác định các thông tin về hệ thực. Cuối cùng là khả năng dự đoán hành vi của hệ thực tức là có thể mô tả sự phát triển của hệ thực theo thời gian. Phương pháp mô phỏng được đề xuất vào những năm 80 của thế kỷ 20, từ đó đến nay phương pháp mô phỏng đã được nghiên cứu, hoàn thiện, và ứng dụng thành công vào nhiều lĩnh vực khác nhau như lĩnh vực khoa học kỹ thuật, khoa học xã hội, kinh tế, y tế, Sau đây trình bày một số lĩnh vực mà phương pháp mô phỏng đã được ứng dụng và phát huy được ưu thế của mình. - Phân tích và thiết kế hệ thống sản xuất, lập kế hoạch sản xuất. - Đánh giá phần cứng, phần mềm của hệ thống máy tính. - Quản lý và xác dịnh chính sách dự trữ mua sắm vật tư của hệ thống kho vật tư, nguyên liệu. - Phân tích và đánh giá hệ thống phòng thủ quân sự, xác định chiến lược phòng thủ, tấn công. - Phân tích và thiết kế hệ thống thông tin liên lạc, đánh giá khả năng làm việc của mạng thông tin. - Phân tích và thiết kế các hệ thống giao thông như đường sắt, đường bộ, hàng không, cảng biển. - Đánh giá, phân tích và thiết kế các cơ sở dịch vụ như bệnh viện, bưu điện, nhà hàng, siêu thị. - Phân tích hệ thống kinh tế, tài chính. Phương pháp mô phỏng được ứng dụng vào các giai đoạn khác nhau của việc nghiên cứu, thiết kế và vận hành các hệ thống như sau: + Phương pháp mô phỏng được ứng dụng vào giai đoạn nghiên cứu, khảo sát hệ thống trước khi tiến hành thiết kế nhằm xác định độ nhạy của hệ thống đối với sự thay đổi cấu trúc và tham số của hệ thống. + Phương pháp mô phỏng được ứng dụng vào giai đoạn thiết kế hệ thống để phân tích và tổng hợp các phương án thiết kế hệ thống, lựa chọn cấu trúc hệ thống thoả mãn các chỉ tiêu cho trước. + Phương pháp mô phỏng được ứng dụng vào giai đoạn vận hành hệ thống để đánh giá khả năng hoạt động, giải bài toán vận hành tối ưu, chẩn đoán các trạng thái đặc biệt của hệ thống. 16
- Hình 3.1 trình bày quá trình nghiên Hệ thống Mô hình hoá Mô hình cứu bằng phương pháp mô phỏng và quan thực mô phỏng hệ giữa hệ thống thực với kết quả mô Thử nghiệm Hiệu chỉnh phỏng. Nhìn vào hình 3.1 ta thấy rằng để nghiên cứu hệ thống thực ta phải tiến hành mô hình hoá tức là xây dựng mô hình mô Kết luận về Xử lý KQ Kết quả phỏng. Khi có mô hình mô phỏng sẽ tiến hệ thực mô phỏng hành làm các thực nghiệm trên mô hình để thu được các kết quả mô phỏng. Thông Hình 3.1- Quá trình ngiên cứu bằng thường kết quả mô phỏng có tính trừu phương pháp mô phỏng tượng của toán học nên phải thông qua xử lý mới 1. Mục tiêu mô phỏng thu được các thông tin kết luận về hệ thống thực. Sau đó dùng các thông tin và kết luận trên để hiệu 2. Thu thập dữ liệu chỉnh hệ thực theo mục đích nghiên cứu đã đề ra. Xác định MH nguyên lý 3.3. CÁC BƯỚC NGHIÊN CỨU MÔ PHỎNG Khi tiến hành nghiên cứu mô phỏng thông 3. Hợp thức 0 thường phải thực hiện qua 10 bước như được biểu MH nguyên lý diễn bởi lưu đồ như hình 3.2. 1 Bước 1: Xây dựng mục tiêu mô phỏng và kế 4. Mô hình mô phỏng hoạch nghiên cứu. Điều quan trọng trước tiên là phải xác định rõ 5. Chạy thử mục tiêu nghiên cứu mô phỏng. Mục tiêu đó được thể hiện bằng các chỉ tiêu đánh giá, bằng hệ thống 6. Kiểm chứng 0 các câu hỏi cần được trả lời. MH mô phỏng Bước 2: Thu thập dữ liệu và xác định mô hình 1 nguyên lý. 7. Lập kế hoạch thử Tuỳ theo mục tiêu mô phỏng mà người ta thu nghiệm thập các thông tin, các dữ liệu tương ứng của hệ thống S và môi trường E. Trên cơ sở đó xây dựng 8. Thử nghiệm mô phỏng mô hình nguyên lý Mnl, mô hình nguyên lý phản ánh bản chất của hệ thống S. 9. Xử lý kết quả mô Bước 3: Hợp thực hoá mô hình nguyên lý phỏng Mnl. Hợp thức hoá mô hình nguyên lý là kiểm tra 10. Sử dụng và lưu trữ kết quả mô phỏng tính đúng đắn, hợp lý của mô hình. Mô hình nguyên lý phải phản ánh đúng bản chất của hệ Hình 3.2- Các bước nghiên cứu mô phỏng 17
- thống S và môi trường E nhưng đồng thời cũng phải tiện dụng, không quá phức tạp, cồng kềnh. Nếu mô hình nguyên lý Mnl không đạt phải thu thập thêm thông tin, dữ liệu để tiến hành xây dựng lại mô hình. Bước 4: Xây dựng mô hình mô phỏng Mmp trên máy tính. Mô hình mô phỏng Mmp là những chương trình chạy trên máy tính. Các chương trình này được viết bằng các ngôn ngữ thông dụng như FORTRAN, PASCAL, C++, hoặc các ngôn ngữ chuyên dụng để mô phỏng như GPSS, SIMSCRIPT, SIMPLE++, Bước 5: Chạy thử. Sau khi cài đặt chương trình, người ta tiến hành chạy thử xem mô hình mô phỏng có phản ánh đúng các đặc tính của hệ thống S và môi trường E hay không. Ở giai đoạn này cũng tiến hành sửa chữa các lỗi về lập trình. Bước 6: Kiểm chứng mô hình. Sau khi chạy thử người ta có thể kiểm chứng và đánh giá mô hình mô phỏng có đạt yêu cầu hay không, nếu không phải quay lại từ bước 2. Bước 7: Lập kế hoạch thử nghiệm. Ở bước này người ta phải xác định số lần thử nghiệm, thời gian mô phỏng của từng bộ phận hoặc toàn bộ mô hình. Căn cứ vào kết quả mô phỏng (ở bước 9), người ta tiến hành hiệu chỉnh kế hoạch thử nghiệm để đạt được kết quả với độ chính xác theo yêu cầu. Bước 8: Thử nghiệm mô phỏng. Cho chương trình chạy thử nghiệm theo kế hoạch đã được lập ở bước 7. Đây là bước thực hiện việc mô phỏng, các kết quả lấy ra từ bước này. Bước 9: Xử lý kết quả. Thử nghiệm mô phỏng thường cho nhiều dữ liệu có tính thống kê xác suất. Vì vậy, để có kết quả cuối cùng với độ chính xác theo yêu cầu, cần phải thực hiện việc xử lý các kết quả trung gian. Bước xử lý kết quả đóng vai trò quan trọng trong quá trình mô phỏng. Bước 10: Sử dụng và lưu trữ kết quả. Sử dụng kết quả mô phỏng vào mục đích đã định và lưu giữ dưới dạng các tài liệu để có thể sử dụng nhiều lần. 3.4. ƯU NHƯỢC ĐIỂM CỦA PHƯƠNG PHÁP MÔ PHỎNG Như đã trình bày ở trên, phương pháp mô phỏng ngày càng được ứng dụng rộng rãi để nghiên cứu, phân tích và tổng hợp các hệ phức tạp. Phương pháp mô phỏng có các ưu điểm sau đây: - Có khả năng nghiên cứu các hệ thống phức tạp, có các yếu tố ngẫu nhiên, phi tuyến, đối với những hệ thống này phương pháp giải tích thường không có hiệu lực. 18
- - Có thể đánh giá các đặc tính của hệ thống làm việc trong điều kiện dự kiến trước hoặc ngay cả khi hệ thống còn đang trong giai đoạn khảo sát, thiết kế, hệ thống chưa tồn tại. - Có thể so sánh, đánh giá, các phương án khác nhau của hệ thống. - Có thể nghiên cứu các giải pháp điều khiển hệ thống. - Có thể nghiên cứu trong một khoảng thời gian ngắn đối với hệ thống có thời gian hoạt động dài như hệ thống kinh tế, hệ thống xã hội. Các nhược điểm của phương pháp mô phỏng: - Phương pháp đòi hỏi công cụ mô phỏng đắt tiền như máy tính, phần mềm chuyên dụng. - Phương pháp mô phỏng thường sản sinh ra khối lượng lớn các dữ liệu có tính thống kê xác suất, do đó đòi hỏi phải có những chuyên gia thành thạo về phân tích dữ liệu để xử lý kết quả mô phỏng. Khi quyết định dùng phương pháp mô phỏng để nghiên cứu hệ thống phải phân tích kỹ ưu nhược điểm và điều kiện cần thiết để thực hiện phương pháp này, đồng thời so sánh với phương pháp giải tích nếu có thể được. 3.5. SO SÁNH GIỮA PHƯƠNG PHÁP MÔ PHỎNG VÀ PHƯƠNG PHÁP GIẢI TÍCH Khi cho một mô hình toán học, có thể dùng phương pháp giải tích hoặc phương pháp mô phỏng để thu được lời giải (thông tin) về mô hình. Mô hình Phương pháp giải tích Phương pháp mô phỏng - Lời giải tổng quát và chính xác - Lời giải số từng bước là các “đánh - Mô hình giải được khi phải chấp giá”. nhận một số giả thiết để đơn giản hoá - Mô hình vẫn giải được không cần mô hình. các giả thiết để đơn giản hoá mô hình. - Lời giải chính xác chỉ khi được biểu - Lời giải mang tính “đánh giá” sẽ cho diễn bằng các công thức có thể tính đánh giá chính xác nếu bước tính đủ được. lớn. Hình 3.3 trình bày các điểm khác biệt cơ bản giữa phương pháp giải tích và phương pháp mô phỏng. 19
- - Phương pháp giải tích cho một lời giải tổng quát và chính xác với giả thiết là các thông số của mô hình không thay đổi trong suốt quá trình được khảo sát. - Phương pháp mô phỏng chỉ cho lời giải của từng bước tính, mỗi bước ứng với một điều kiện nhất định của mô hình, muốn có kết quả chính xác phải tăng số bước tính lên đủ lớn (theo lý thuyết là vô cùng lớn) và lời giải nhận được cũng chỉ ở dạng các “đánh giá” theo xác suất. Cần phải nhấn mạnh rằng nếu trong mô hình có các yếu tố ngẫu nhiên thì phương pháp giải tích không thể giải được đối với loại mô hình đó. Trong trường hợp này phương pháp mô phỏng là giải pháp duy nhất để nghiên cứu loại mô hình ngẫu nhiên. 3.6. CÁC NGÔN NGỮ VÀ THIẾT BỊ MÔ PHỎNG Khi tiến hành mô phỏng ta phải xây dựng mô hình mô phỏng trên máy tính Mmp. Mô hình Mmp là tập hợp các chương trình chạy trên máy tính được gọi là phần mềm mô phỏng, những chương trình này thường được viết bằng ngôn ngữ cấp cao thông dụng như: FORTRAN, PASCAL, C++, Tuy nhiên đối với các hệ thống phức tạp viết chương trình mô phỏng như vậy gặp rất nhiều khó khăn và mất thời gian. Trong thực tế, người ta đã phát triển nhiều phần mềm mô phỏng chuyên dụng và được gọi là ngôn ngữ mô phỏng (Simulation language) và thiết bị mô phỏng (Simulator). Ngôn ngữ mô phỏng bao gồm nhiều khối chuẩn, người sử dụng chỉ cần nạp các thông số cần thiết, nối các khối theo một logic định trước, cho mô hình chạy trong thời gian mô phỏng và nhận được các kết quả dưới dạng bảng hoặc đồ thị. Ngôn ngữ mô phỏng có rất nhiều ưu điểm như sau: - Thời gian xây dựng mô hình ngắn. - Dễ dàng thay đổi cấu trúc và thông số của mô hình. - Dễ gỡ rối, sửa chữa sai sót. - Các kết quả được xử lý tốt, thuận tiện cho việc sử dụng. Sau đây là một số ngôn ngữ mô phỏng chính hiện đang được sử dụng nhiều: - GPSS (General Purpose Simulation System): do IBM sản xuất năm 1972. Sau đó được cải tiến nhiều lần, GPSS/H năm 1977, GPSS/PC năm 1984. PSS/PC có thể chạy trên máy tính PC. GPSS có trên 60 khối chuẩn. Đây là ngôn ngữ hướng quá trình (Process Oriented Language), có các khối để biểu diễn quá trình, các hình ảnh mô phỏng chuyển động theo quá trình mô phỏng (Concurrent Graphics Animation) rất thuận tiện cho việc theo dõi quá trình mô phỏng. - SIMSCRIPT: được sản xuất năm 1962 sau đó được cải tiến nhiều lần với nhiều phiên bản (version) khác nhau như SIMSCRIPT 1.5, SIMSCRIPT 2.5. Đây là ngôn ngữ hướng quá trình và sự kiện (Process and Event Oriented Language). 20
- - SIMPLE++ (Simulation Production Logistics Engineering Design) là ngôn ngữ hướng đối tượng, hiện nay ngôn ngữ này được dùng rất phổ biến vì có những đặc điểm sau: + Cấu trúc hướng đối tượng (Object Oriented). + Hình ảnh mô phỏng chuyển động (animation). + Kết quả được biểu diễn bằng bảng số và đồ thị nên dễ dàng so sánh. + Dễ dàng mô phỏng các hệ thống kỹ thuật và thương mại phức tạp. + Có thể nối với các phần mềm chuyên dụng khác như MRP (Manufacturing Resource Planning). + Người sử dụng có thể định nghĩa các đối tượng mới và dễ dàng lập trình mô phỏng. Ngoài ra còn nhiều ngôn ngữ mô phỏng khác như SIGMA, SLAM (Simulation Language for Alternative Modelling), MODSIM, AUTOMOD, Thiết bị mô phỏng (Simulator) là một phần mềm chuyên dụng mô phỏng một hệ thống cụ thể. Thiết bị mô phỏng có rất ít hoặc không đòi hỏi phải lập trình như ngôn ngữ mô phỏng ở trên. Thuộc loại này có thiết bị mô phỏng dùng để huấn luyện lái máy bay, tàu thuỷ, ô tô, Ngày nay, những nhà máy lớn như nhà máy lọc dầu, nhà máy xi măng, nhà máy điện, thường đặt thiết bị mô phỏng để huấn luyện cho người vận hành và giải bài toán tìm chế độ vận hành tối ưu. Những thiết bị mô phỏng loại này thường có giá thành tương đối đắt, phạm vi ứng dụng hạn chế vì chỉ dùng để mô phỏng một hệ thống cụ thể nhưng cũng đưa lại hiệu quả to lớn trong huấn luyện cũng như vận hành hệ thống nên được dùng ở những nơi quan trọng. Một số loại thiết bị mô phỏng thường dùng hiện nay là SIMFACTORY, NETWORK, 3.7. CÁC PHƯƠNG PHÁP MÔ PHỎNG Tuỳ theo trạng thái của hệ thống thay đổi liên tục hay gián đoạn theo thời gian mà người ta phân biệt thành hệ thống liên tục hay hệ thống gián đoạn. Đứng về mặt mô hình mà xét, người ta có thể chọn một trong hai mô hình liên tục hoặc gián đoạn để mô hình hoá hệ thống. Vì vậy, không nhất thiết phải có sự tương đương giữa loại hệ thống và loại mô hình. Việc phân biệt mô hình liên tục hay gián đoạn trở nên quan trọng khi tiến hành mô phỏng, đặc biệt là khi lập trình trên máy tính để thực hiện việc mô phỏng bởi vì kỹ thuật tính toán dùng cho các loại mô hình sẽ rất khác nhau. Chính vì vậy, có hai phương pháp mô phỏng chủ yếu là phương pháp mô phỏng liên tục và mô phỏng gián đoạn. - Phương pháp mô phỏng liên tục (Continuous Simulation) thường được dùng cho hệ liên tục mà mô hình của nó được biểu diễn bằng các hệ phương trình vi phân. Nếu phương trình vi phân tương đối đơn giản, nó có thể được giải bằng phương pháp giải tích và cho lời giải tổng quát là một hàm của giá trị của biến trạng thái tại thời 21
- điểm t = 0. Có nhiều trường hợp phương pháp giải tích không giải được. Trong trường hợp này, người ta phải dùng phương pháp số như phương pháp tích phân Runge-Kutta để giải phương trình vi phân và cho lời giải đặc biệt của biến trạng thái tại thời điểm t = 0. - Phương pháp mô phỏng gián đoạn hay còn có tên là phương pháp mô phỏng các sự kiện gián đoạn (Discrete Event Simulation) thường được dùng cho các hệ gián đoạn. Trong những hệ này sự kiện xảy ra tại các thời điểm gián đoạn và làm thay đổi trạng thái của hệ thống. Ngoài hai phương pháp mô phỏng chính kể trên còn có nhiều phương pháp mô phỏng khác như: - Phương pháp mô phỏng hỗn hợp liên tục – gián đoạn (Combined Discrete – Continuous Simulation). - Phương pháp Monte – Carlo (Monte – Carlo Simulation). Các phương pháp mô phỏng này được coi là những trường hợp riêng của hai phương pháp mô phỏng chính nêu trên. NỘI DUNG THẢO LUẬN 1. Nội dung phần thảo luận 1: Khái niệm chung về phương pháp mô phỏng mô hình hóa hệ thống 2. Nội dung phần thảo luận 2: Bản chất của phương pháp mô phỏng, các bước nghiên cứu mô phỏng 3. Nội dung phần thảo luận 3: Các ngôn ngữ và thiết bị mô phỏng TÓM TẮT NỘI DUNG CỐT LÕI Hiểu rõ khái niệm chung về phương pháp mô phỏng mô hình hóa hệ thống và nắm được bản chất của phương pháp mô phỏng, các bước nghiên cứu mô phỏng BÀI TẬP ỨNG DỤNG, LIÊN HỆ THỰC TẾ 1. Bài tập ứng dụng, liên hệ thực tế 1. Hãy kể các lĩnh vực có thể dùng phương pháp mô phỏng để nghiên cứu và phân tích ưu nhược điểm của khi dùng các phương pháp này. 2. Bài tập ứng dụng, liên hệ thực tế 2. Hãy phân tích ưu nhược điểm và phạm vi ứng dụng của phương pháp giải tích và phương pháp mô phỏng. HƯỚNG DẪN TỰ Ở NHÀ Hãy kể ra một vài ngôn ngữ mô phỏng, phân tích ưu nhược điểm và phạm vi ứng dụng của chúng. 22
- CHƯƠNG 4 MÔ PHỎNG HỆ THỐNG LIÊN TỤC MỤC TIÊU CỦA CHƯƠNG - Hiểu rõ khái niệm chung về mô hình hệ thống liên tục. - Có khả năng dùng máy tính tương tự, máy tính số để mô phỏng hệ thống liên tục - Nắm được phương pháp toán tử để tìm phương trình sai phân của hệ điều khiển tự động. - Về thái độ: Học sinh, Sinh viên hiểu rõ khái niệm và đặc điểm vai trò mô phỏng hệ thống liên tục. 4.1. KHÁI NIỆM CHUNG VỀ MÔ HÌNH HỆ THỐNG LIÊN TỤC Hệ thống liên tục là hệ thống mà trong đó các trạng thái và thuộc tính của hệ thay đổi một cách liên tục. Mô hình toán học của hệ thống liên tục thường là phương trình vi phân. Trường hợp đơn giản nhất đó là hệ phương trình vi phân tuyến tính hệ số hằng và được giải một cách dễ dàng bằng phương pháp giải tích. Tuy nhiên, khi mô hình có phần tử phi tuyến như phần tử bão hoà, phần tử trễ, phần tử có vùng chết, thì phương pháp giải tích khó hoặc không thể giải được. Trong trường hợp này hợp lý nhất là dùng phương pháp mô phỏng để giải bài toán. người ta có thể dùng máy tính tương tự hoặc máy tính số để mô phỏng hệ thống liên tục. 4.2. DÙNG MÁY TÍNH TƯƠNG TỰ ĐỂ MÔ PHỎNG HỆ THỐNG LIÊN TỤC Máy tính tương tự đã có quá trình phát triển lâu dài và đã góp phần giải các bài toán của hệ thống liên tục tuyến tính cũng như phi tuyến. Máy tính tương tự được dùng rất rộng rãi nhất là máy tính tương tự điện tử mà phần tử cơ bản của nó là các bộ khuếch đại thuật toán OPAMP (Operational Amplifier). Điện áp của máy tính biểu thị biến số mô hình toán học. Khuếch đại thuật toán có thể làm thành các bộ cộng, tích phân và bộ đảo dấu điện áp do đó nó có thể giải các phương trình vi phân dùng để mô hình hoá hệ thống liên tục. Máy tính tương tự bị hạn chế bởi độ chính xác không cao do nhiều nguyên nhân: do độ chính xác của phép đo điện áp, do hiện tượng trôi điểm không của khuếch đại thuật toán, Nói chung, độ chính xác của máy tính tương tự không vượt quá 0,1%. Một hạn chế quan trọng khác của máy tính tương tự là đối với từng hệ thống cụ thể phải lắp ráp và hiệu chỉnh máy tính, hơn nữa máy tính không có khả năng phát triển mềm dẻo khi muốn thay đổi cấu trúc của hệ thống. Từ khi có máy tính số, máy tính tương tự ít được sử dụng vào mô phỏng. Tuy nhiên máy tính tương tự còn được sử dụng trong một số trường hợp như làm thiết bị mô phỏng của hệ thống 23
- sản xuất hoá chất, sinh học hoặc dùng trong mô phỏng hỗn hợp. Xét một hệ thống liên tục được mô hình hoá bằng phương trình vi phân tuyến tính sau: dxdx2 ++=BxF(t) (4.1) dtdt2 Giả thiết rằng các điều kiện đầu bằng không và các hệ số trong phương trình vi phân đều là hằng số. Với B > 1, có thể viết (4.1) thành phương trình sau: x= − Bx − x + F(t) (4.2) Dựa vào phương trình F(t) x x x (4.2) ta có thể xây dựng được sơ đồ khối của máy tính tương tự như hình 4.1 để giải phương B trình trên. Để nhận được đáp ứng Hình 4.1- Sơ đồ khối của máy tính tương tự để giải của hệ thống người ta phải đặt phương trình vi phân (4.2) tín hiệu F(t) vào bộ cộng. Qua hai khối tích phân ta nhận được tín hiệu ta x, tức là lời giải của phương trình. Hiệu chỉnh hệ số B để được đặc tính ra mong muốn. 4.3. DÙNG MÁY TÍNH SỐ ĐỂ MÔ PHỎNG HỆ THỐNG LIÊN TỤC Từ khi máy tính số ra đời đến nay đã hơn nửa thế kỷ, máy tính số đã phát triển rất nhanh và được ứng dụng vào hầu hết các lĩnh vực hoạt động của con người. Do ngày nay chủ yếu dùng máy tính số nên từ đây về sau thuật ngữ máy tính số được gọi tắt là máy tính MT (computer). Trong lĩnh vực mô hình hoá, máy tính là công cụ chủ yếu để thực hiện việc mô phỏng hệ thống. Sau đây chúng ta sẽ nghiên cứu máy tính làm việc như thế nào trong việc mô hình hoá hệ thống. 4.3.1. Phương trình máy tính [Xk] [Yk] MT Dùng máy tính để mô hình hoá hệ [Xk] [Yk] thống có nghĩa là đưa vào máy tính các dữ liệu ban đầu, máy tính xử lý các dữ liệu đó 0 2 k-1 k t 0 2 k-1 k t theo chức năng hoạt động của hệ thống S, T T đầu ra của máy tính m +1 n +1 Hình 4.2. Quan hệ giữa tín hiệu vào và ra của máy tính 24
- cho ta các trạng thái của hệ thống S theo thời gian. Tín hiệu vào [Xk] và tín hiệu ra [Yk] của máy tính đều là những tín hiệu số (gián đoạn). Sau đây ta sẽ xét quan hệ giữa chúng. Bước gián doạn hoá T (Bước cắt mẫu hay chu kỳ cắt mẫu) là nhịp làm việc của máy tính. Dãy tín hiệu vào [Xk] = [x(0), x(T), x(2T), , x(kT)]. Dãy tín hiệu ra [Yk] = [y(0), y(T), y(2T), , y(kT)]. Khi khảo sát ta chấp nhận giả thiết là thời gian tính toán của máy tính không đáng kể nên có thể bỏ qua, có nghĩa là dãy tín hiệu ra [Yk] hoàn toàn đồng bộ với dãy tín hiệu vào [Xk]. Tín hiệu ra ở thời điểm k tức y(kT) phụ thuộc vào giá trị của n tín hiệu ra và m+1 tín hiệu vào xảy ra trước đó. Các giá trị của m tín hiệu vào và n tín hiệu ra được lưu trữ trong bộ nhớ của máy tính. Như vậy, quan hệ giữa tín hiệu ra và tín hiệu vào của máy tính được viết như sau: mn y(kT)bx(kTiT)ay(kTjT)=−−−minj−− (4.3) i0j0== trong đó an, bm – các hệ số i = 0 m, j = 0 n với m n có nghĩa là tín hiệu ra phụ thuộc cả vào (m – n) tín hiệu vào trong tương lai là điều không xảy ra trong thực tế được. Vì tín hiệu ra [yk] và tín hiệu vào [xk] đều có cùng bước gián đoạn T (chu kỳ cắt mẫu) nên để cho gọn phương trình (4.3) có thể được viết lại như sau: mn y(k)= bm−− i x(k − i) − a n j y(k − j) (4.4) i== 0 j 0 Phương trình (4.4) có thể khai triển thành: any(k)+an-1y(k-1)+ + aoy(k-n) = bmx(k)+bm-1x(k-1)+ + box(k-m) (4.5) Phương trình (4.5) có dạng phương trình sai phân bậc n. Các hệ số an-1, , a0 và bm, , b0 đặc trưng cho đặc tính động của hệ thống. Nếu các hệ số là hằng số thì ta có phương trình sai phân tuyến tính phản ánh hệ dừng (đặc tính không biến đổi theo thời gian), trong trường hợp ngược lại ai (i = 0 n), bj (j = 0 m) biến đổi theo thời gian – hệ không dừng. Trong nội dung giáo trình này, ta chỉ khảo sát các hệ thống tuyến tính dừng. 25
- Bậc của phương trình sai phân là hiệu giữa bậc của số hạng tín hiệu ra lớn nhất và bé nhất. Trong trường hợp phương trình (3.5), bậc của phương trình là: k – (k – n) = n Vậy ta có thể kết luận rằng phương trình máy tính có dạng của phương trình sai phân tuyến tính. Từ phương trình (3.5) ta có thể viết: y(k) = - an-1y(k-1) - - aoy(0) + bmx(k) + + box(0) (4.6) như vậy nếu biết điều kiện đầu x(0), y(0), bằng cách tăng dần bước k ta có thể tính được y(k) ở các thời điểm khác nhau. Các kết quả tính toán được lưu trữ trong bộ nhớ của máy tính và giá trị tín hiệu ra của bước tiếp theo phụ thuộc vào giá trị của tín hiệu vào và tín hiệu ra trong quá khứ. 4.3.2. Phương pháp mô phỏng hệ liên tục tuyến tính bằng máy tính số Từ các phân tích ở trên ta thấy rằng muốn dùng máy tính số để mô phỏng hệ liên tục, cần phải mô tả hệ dưới dạng phương trình sai phân tuyến tính sau đó đưa phương trình sai phân tuyến tính đó vào máy tính để tìm các đặc tính mô phỏng hệ liên tục. Chú ý rằng hệ liên tục thường được biểu diễn bằng phương trình vi tích phân. Để biến đổi phương trình vi tích phân thành phương trình sai phân tương ứng có thể dùng phương pháp số Runge-Kutta. Tuy nhiên, phương pháp này có khối lượng tính toán lớn, đặc biệt là đối với phương trình có bậc 3 trở lên thì tính toán rất phức tạp nhiều khi không thực hiện được. Vì vậy, ở phần tiếp theo sẽ trình bày một phương pháp tiện dụng để tìm phương trình sai phân của hệ liên tục. Từ phương trình Laplace của hệ liên tục, bằng cách biến đổi Z tương ứng rồi tìm ngược lại phương trình sai phân của hệ để giải trên máy tính số. 4.4. BIẾN ĐỔI Z VÀ CÁC TÍNH CHẤT - Mục đích của phép biến đổi Z. Khi giải phương trình sai phân bậc cao người ta thường gặp nhiều khó khăn, vì vậy người ta thường dùng biến đổi Z để biến phương trình sai phân tuyến tính của hệ gián đoạn thành phương trình đại số. Điều này hoàn toàn tương tự như trong trường hợp hệ liên tục dùng biến đổi Laplace để biến phương trình vi tích phân thành phương trình đại số. x(t) x(k) - Một số định nghĩa trong phép biến đổi Z. Giả thiết rằng không có tín hiệu ở phía âm của trục thời gian (hình 4.2). t Đối với tín hiệu dạng liên tục x(t) ta có 0 t 0 T kT định nghĩa về phép biến đổi Laplace như (a) (b) sau: Hình 4.2- Các dạng tín hiệu. (a) Liên tục, (b) Gián đoạn 26
- L[x(t)]X(s)x(t)edt== −st (4.7) 0 Đối với tín hiệu gián đoạn x[k] ta có định nghĩa về phép biến đổi Z như sau: Z[x(k)]= X(Z) = X(0)Zo + X(1)Z− 1 + + x(k)Z − k = x(k)Z − k (4.8) 0 trong đó Z là biến phức. B(s)B(p) Nếu hàm x(t) không tồn tại, biến đổi Laplace có dạng: X(s) == A(s)A(p) Thì chuỗi (4.8) là biến đổi Z của hàm gián đoạn x[k] tương ứng. Bảng 4.1 liệt kê biến đổi Laplace và biến đổi Z của một số hàm thông dụng. - Các tính chất của biến đổi Z. 1. Tính chất tuyến tính Z{a.[v(k)] + b.[w(k)]} = a.V(z) + b.W(z) (4.9) 2. Dịch hàm gốc g(k) về phía trước m bước mj− Z[f (km)]zF(z)f+=− (k)z mj− (4.10) j0= Với điều kiện đầu bằng 0 ta có: Z[f(k+m)]=zmF(z) (4.11) 3. Dịch hàm gốc g(k) về phía sau m bước 0 t Z[f(k - m)]=z-mF(z) m m (4.12) Hình 4.3- Dạng tín hiệu sau phép dịch 4. Biến đổi Z của sai phân tiến f(k) = f(k+1) - f(k) Z[ f(k)]=(1-z-1)F(z) (4.13) 5. Biến đổi Z của sai phân lùi f(k) = f(k) - f(k-1) Z[ f(k)]=(z - 1)F(z) (4.14) 6. Giá trị đầu của hàm gốc rời rạc f(0) f(0)= limF(z) (4.15) z→ 7. Giá trị cuối của hàm gốc rời rạc f(0) f( ) = lim(z − 1)F(z) (4.16) z1→ 27
- 4.5- HÀM TRUYỀN SỐ CỦA HỆ GIÁN ĐOẠN Bảng 4.1- ảnh Laplace và ảnh Z Hàm truyền số của hệ gián đoạn tuyến tính là của các hàm thông dụng tỷ số giữa biến đổi Z của dãy tín hiệu gián đoạn ở Hàm F(s) F(z) đầu ra với biến đổi Z của dãy tín hiệu gián đoạn ở gốc đầu vào với điều kiện đầu bằng không. (t) 1 1 1 z Giả sử một hệ gián đoạn được mô tả bằng 1(t) phương trình sai phân tuyến tính sau: s z1− 1 Tz t 2 2 any(k+n)+ +aoy(k)=bmx(k+m)+ +box(k) s (z 1− ) (4.17) 2 2 2! T z(z 1 )+ t 3 trong đó m n, điều kiện này bảo đảm khả s3 (z 1− ) 32 năng giải phương trình (4.17) trên máy tính. 3 3! T z(z 4z 1++ ) t 4 s4 (z 1− ) Thực hiện biến đổi Z các phần tử của phương 1 z trình (4.16) với điều kiện đầu bằng 0 và tính chất e-et sa+ ze− −aT dịch hàm gốc đi n và m bước như đã nêu ở phương 1 −aT -et T z e te 2 trình (4.11) ta có hàm truyền số sau: (s a)+ (z e− ) −aT2 Y(z) bzbz bmm1+++ − mm1o − zsin(T) W(z) == (4.18) Sin(t) 222 nn1 − s + z2zcos(T)1−+ X(z)azaz ann1o +++− s zz2 cos(T)− Nếu tín hiệu vào x(k) là xung đơn vị → hàm Cos(t) s22+ z2z2 −+ cos(T)1 Dirac thì ta có: X(Z) = Z[(k)] = 1 Lúc này W(Z) = Y(Z) (3.19) Như vậy cũng giống như trong trường hợp biến đổi Laplace, hàm truyền W(s) của hệ liên tục là phản ứng của hệ đối với hàm đơn vị 1(t), hàm truyền số W(z) là phản ứng của hệ thống gián đoạn đối với tín hiệu vào là xung Dirac (k). 4.6. HÀM TRUYỀN SỐ CỦA HỆ LIÊN TỤC Đối với hệ liên tục người ta dùng biến đổi Laplace gián đoạn để tìm hàm truyền số của hệ liên tục, nhưng phép biến đổi này thường dẫn đến hàm siêu việt đối với biến s, do đó rất khó tính toán nên không được dùng trong thực tế. Trong thực tế người ta dùng phương pháp chuyển đổi từ hàm truyền Lapace W(s) sang hàm truyền số qua phép biến đổi Z là W(z) bằng cách thay biến số: z = esT (4.20) Từ biểu thức (4.20) ta có thể giải được: 1 s= ln z (4.21) T trong đó lnz có thể khai triển thành chuỗi: UUU3 5 k ln z= 2(U + + + ) = 2 (4.22) 3 5k1= k 28
- 1zz1−−−1 Trong đó: U == 1zz1++−1 2z1− Bỏ qua các số hạng bậc cao trong (4.22) ta có: lnz2U== Tz1+ Vậy phép biến đổi số tương đương (4.21) có thể viết thành: 2 z 1− s = (4.23) T z 1+ trong đó T là thời gian cắt mẫu. 4.7. TRÌNH TỰ TÌM HÀM TRUYỀN SỐ 1. Từ hàm truyền W(s) ta phân tích thành các biểu thức đơn giản W1(s), W2(s), 2. Tìm biến đổi Z tương ứng của các biểu thức đơn giản kể trên bằng cách đổi biến số theo (4.23) ta được các hàm tương ứng W1(z), W2(z), Rút gọn lại ta được hàm truyền số của hệ liên tục tuyến tính. Khi sử dụng phương pháp này người ta phải chấp nhận những điều kiện sau đây: - Nếu hệ liên tục ổn định có hàm truyền đạt là W(s) = W1(s), W2(s), thì khi chuyển sang hàm truyền đạt số tương đương W(z) cũng sẽ ổn định. - Nếu hàm W(s) có thể phân tích thành W(s) = W1(s), W2(s), thì hàm truyền số vẫn giữ tính nhân như trước có nghĩa là W(z) = W1(z), W2(z), - Khi chuyển từ W(s) sang W(z) thì các hằng số và hệ số khuếch đại vẫn giữ nguyên. K Ví dụ: Cho hàm W(s) = , hãy tìm hàm truyền W(z) tương ứng. s2 ++ as K Giải: 2 z− 1 K Thay s = vào W(s) ta có: W(z) = 2 T z+ 1 2 z12−− z1 ++aK T z1T++ z1 KT2 z2KT 2222+++ z + KTA(zz 1) W(z) == (4−++−+− 2aT KT −++2 )z(2KT8)z 2222 (KT4 2aT)BzCz D trong đó A = KT2; B = 4-2aT+KT2; C = 2KT2 - 8; D = kT2 - 4 - 2aT. 4.8. CÁCH CHỌN BƯỚC CẮT MẪU T Theo lý thuyết lấy mẫu của Shannon, để đảm bảo khả năng khôi phục lại tín hiệu liên tục từ dãy tín hiệu gián đoạn thì tần số lấy mẫu thấp nhất fmin phải lớn hơn hoặc bằng 2fmax trong đó fmax là tần số tín hiệu cao nhất, có nghĩa là fmin 2fmax. Từ đó suy 11 ra bước cắt mẫu T = . Trong thực tế người ta thường chọn tần số fmin lớn fmin 2f max hơn nhiều lần tần số của tín hiệu vào fmax. Do đó bước cắt mẫu thường chọn nhỏ hơn so với giá trị tính được theo công thức trên. Để thuận tiện trong việc tính toán người ta 29
- thường chọn giá trị bước cắt mẫu theo các hằng số thời gian trong hàm truyền của hệ kín. Sau đây ta sẽ xét một số trường hợp cụ thể. 1 + Đối với hệ quán tính bậc nhất W( s) = . Bước cắt mẫu T có quan hệ sau: 1 T+ s o T0 TT, trong đó Tolà hằng số thời gian của hệ. Thời gian để đường đặc tính 4 0 quá độ đạt giá trị lớn nhất được gọi là Tmax, ta có quan hệ giữa bước cắt mẫu T và Tmax như sau: Tmax = (29)T 2 0 + Đối với hệ bậc 2 W(s) = 2 . Bước cắt mẫu được tính như sau: ++002 2ss 0,25 < Trong đó là hệ số tắt dần, 0 là tần số dao động tự nhiên. B¶ng 4.2 cho ta nh÷ng chØ dÉn Bảng 4.2 tham kh¶o ®Ó chän b•íc c¾t mÉu ®èi Loại biến hoặc quá trình Bước cắt mẫu (s) víi c¸c biÕn hoÆc qu¸ tr×nh kh¸c nhau. Lưu lượng 1 3 §èi víi hÖ thèng ®iÒu khiÓn nªn Mức 5 10 T chän b•íc c¾t mÉu nh• sau: T < min , Áp suất 1 5 10 Nhiệt độ 10 45 trong đó Tmin là hằng số thời gian nhỏ nhất trong hàm truyền của hệ thống. Chưng cất 10180 Chọn bước cắt mẫu theo quy tắc này SÊy 20 45 cũng tương đương như chỉ dẫn đối với Hệ thống điều khiển 0,001 0,1 mục hệ thống điều khiển trong bảng 3.2. 4.9. DÙNG PHƯƠNG PHÁP TOÁN TỬ ĐỂ TÌM PHƯƠNG TRÌNH SAI PHÂN CỦA HỆ ĐK TỰ ĐỘNG Chúng ta đã biết rằng phương trình máy tính có dạng phương trình sai phân tuyến tính. Vì vậy để mô phỏng hệ điều khiển tự động người ta phải tìm cách viết được phương trình sai phân của hệ. Có hai cách tìm phương trình sai phân: - Từ phương trình vi tích phân của hệ người ta viết thành phương trình sai phân tương ứng - Đó là phương pháp Runge-Kutta. Phương pháp này chính xác nhưng phức tạp. - Dùng phương pháp toán tử, ta có sơ đồ quan hệ giữa W(s) và W(z) như sau: 30
- Hệ liên tục PT vi phân Biến đổi Laplace PT đại số W(s) Đổi biến Hệ gián đoạn PT sai phân Biến đổi Z PT đại số W(z) Hình 4.4. Sơ đồ quan hệ giữa W(s) và W(z) Như vậy theo sơ đồ trên ta có quá trình tìm phương trình sai phân của một hệ điều khiển tự động có hàm truyền W(s). Từ hàm truyền Laplace W(s) sử dụng phép 2 z 1− đổi biến s = ta được hàm truyền gián đoạn W(z). Từ W(z) tìm ngược lại được T z 1+ phương trình sai phân y(k) để viết phương trình mô phỏng hệ điều khiển tự động trên máy tính. Vì hàm truyền W(s) của hệ điều khiển tự động tương đối dễ tìm nên phương pháp này rất thuận tiện cho việc tìm phương trình sai phân. Phương pháp này được gọi là phương pháp toán tử. 4.10. KHÁI NIỆM VỀ TOÁN TỬ TÍCH PHÂN SỐ Phương pháp toán tử được dùng rất rộng rãi để U(s) 1 Y(s) tìm phương trình sai phân của hệ điều khiển tự động. Tích phân của một quá trình liên tục được (a) u(t) s y(t) biểu diễn như sau: t y(t)u(t)dt= u(t) (4.24) 0 Biến đổi Laplace hai vế của (4.24) với điều kiện đầu bằng không ta có: (b) U(s) T Y(s) = (4.25) s t Vậy ta có hàm truyền của khâu tích phân lý 0 kT (k+1)T tưởng hay còn gọi là toán tử tích phân: Y(s) 1 Hình 4.5- Cách tính toán tử W(s) == (4.26) U(s) s Tustin 31
- Sơ đồ cấu trúc của toán tử tích phân như trên hình 4.5a. Có nhiều phương pháp để chuyển hàm truyền liên tục của toán tử tích phân sang hàm truyền gián đoạn. Sau đây sẽ trình bày phương pháp Tustin hay còn gọi là phương pháp hình thang. Từ (4.24) có thể suy ra đạo hàm của tín hiệu ra chính là tín hiệu vào. Trong trường hợp tín hiệu gián đoạn ta có thể viết: y(k+1) - y(k) = [u(k+1)+y(k)]T/2 (4.25) trong đó vế phải của 4.25 chính là diện tích hình thang có hai cạnh đáy u(k), u(k+1) và chiều cao là T trên hình 4.3b. Biến đổi Z phương trình 4.25 ta có: zY(z) - Y(z) = [zU(z) - U(z)]T/2 (4.26) Y(z)(z-1) = (z+1)U(z)T/2 Vậy hàm truyền số trong trường hợp này chính là toán tử tích phân số: Y(z)Tz1 + I(z) == (4.27) U(z)2z1 + Từ (4.26) và (4.27) ta có tương đương giữa hai toán tử liên tục và số: 1 T z 1 + 2 z 1− = hay s = (4.28) s 2 z 1 − T z 1+ Công thức 4.28 có tên là công thức Tustin. Công thức U(z) T z 1+ Y(z) này chính là công thức (4.23). Hình 4.6 biểu diễn sơ đồ cấu [U(k)] 2 z 1− [Y(k)] trúc của toán tử tích phân số. Như vậy, từ hàm truyền W(s), thay s bằng biểu thức 4.28 Hình 4.6. Sơ đồ cấu trúc của tích phân số ta được W(z). Dùng phương pháp biến đổi ảnh và gốc ta tìm được phương trình sai phân, từ đó viết chương trình mô phỏng hệ liên tục trên máy tính. Thông thường người ta dùng phương pháp Tustin vì nó đơn giản và cho độ chính xác khá cao. 4.11. VÍ DỤ MINH HỌA Cho hệ điều khiển tự động sau có sơ đồ cấu trúc như trên hình4.7 với các tham số như sau: u(t) = 1(t); u(t) 1 K u(t) 1 K1 = 100; T1 = 0,01; s (T12 s1)(T++ s1) K2 = 0,5; T2 = 0,02. Bước cắt mẫu chọn T = 0,001 K2 Hãy mô hình hóa hệ trên máy tính, viết chương trình trên máy tính Hình4.7. Sơ đồ cấu trúc của hệ ĐKTĐ bằng ngôn ngữ Pascal với các yêu cầu cụ thể sau: - Tìm hàm quá độ. In ra 100 kết quả bằng số. - Vẽ đường cong quá độ y(t). 32
- - Dùng phần mềm Matlab để kiểm tra kết quả tính. Giải 1. Tìm phương trình sai phân của hệ Ta có hàm truyền hệ kín như sau: 1 K1 s (T s1)(Ts1)K++ W(s) ==121 1 KK T T s(TT32++++ )ssK K 1+ 12 121212 s (T12 s1)(Ts1)++ 2 z 1− Thay s = ta nhận được hàm truyền gián đoạn của hệ W(z): T z 1+ KT(z3z3z1)Y(z)332 +++ W(z) ==, trong đó: AzBzCzDU(z)32+++ 2 3 A = 8T1T2 + 4T1T + 4T2T + 2T + K1K2T 2 3 B = 24T1T2 - 4T1T - 4T2T + 2T + 3K1K2T 2 3 C = 24T1T2 - 4T1T - 4T2T - 2T + 3K1K2T 2 3 D = 8T1T2 + 4T1T + 4T2T - 2T + 3K1K2T Ta có hàm sai phân sau: 3 2 3 3 2 Az Y(z)+Bz Y(z)+CzY(z)+DY(z) = K1T [z U(z)+3z U(z)+3zU(z)+U(z)] Dùng tính chất dịch gốc của biến đổi Z ta tìm được phương trình sai phân tương ứng với phương trình trên: 3 AY[k+3]+BY[k+2]+CY[k+1]+DY[k]=K1T (U[k+3]+3U[k+2]+3U[k+1]+U[k]) Vì tín hiệu vào là tín hiệu nhảy cấp u(t) = 1(t) nên ta có: U[k+3]=U[k+2]=U[k+1]=U[k]=1 3 Vậy ta có: AY[k+3]+BY[k+2]+CY[k+1]+DY[k] = 8K1T Cuối cùng ta tìm được phương trình sai phân của hệ điều khiển tự động là: 3 Y[k+3] = (-BY[k+2]-CY[k+1]-DY[k] + 8K1T )/A Từ phương trình sai phân ta viết chương trình máy tính để tìm đáp ứng ra y(t) của hệ khi tín hiệu vào là hàm nhảy cấp 1(t). Ở phần sau là chương trình mô hình hóa của hệ đã cho được viết bằng ngôn ngữ Pascal. 2. Chương trình Pascal program MO_HINH_HOA; uses crt,graph;var a,b,c,d,max,k1,k2,t1,t2,t,tm,tod,xicma:real; gd,gm,k,km,ky,i:integer; y:array[0 1000]of real; st:string; BEGIN 33
- clrscr; k1:=100; k2:=0.5; t1:=0.01; t2:=0.02; t:=0.002; y[0]:=0; y[1]:=0; y[2]:=0; a:=8*t1*t2+4*t1*t+4*t2*t+2*t*t+k1*k2*t*t*t; b:=-24*t1*t2-4*t1*t-4*t2*t+2*t*t+3*k1*k2*t*t*t; c:=24*t1*t2-4*t1*t-4*t2*t-2*t*t+3*k1*k2*t*t*t; d:=-8*t1*t2+4*t1*t+4*t2*t-2*t*t+k1*k2*t*t*t; for k:=0 to 997 do begin y[k+3]:=(-b*y[k+2]-c*y[k+1]-d*y[k]+8*k1*t*t*t)/a; {in ra 100 gia tri} end; writeln('100 gia tri cach nhau'); for k:=1 to 100 do begin write('y[',k*10:3,']=',y[k*10]:5:4); if (k mod 6)=0 then writeln; if k=102 then readln; end; writeln; {tim gia tri ymax} max:=y[0]; for k:=0 to 1000 do if y[k]>max then begin max:=y[k]; km:=k; end; {Tim khoang thoi gian on dinh Tod} k:=1000; while abs((y[k]-(1/k2))/(1/k2))<=0.05 do k:=k-1; tod:=k*t; 34
- {in cac gia tri ra man hinh} writeln('Thoi gian on dinh la Tod:',tod:8:4); xicma:=(max-1/k2)*100/(1/k2); writeln('Gia tri cuc dai la ymax=',max:8:4); writeln('Do qua dieu chinh xicma=',xicma:8:4,'%'); writeln('Thoi gian dat cuc dai la tm=',km*t:8:4); {Ve hinh} write('Hay cho he so gian truc y:ky='); readln(ky); gd:=detect; initgraph(gd,gm,'C:\TP\BGI'); setbkcolor(white); setcolor(blue); outtextxy(53,5,'Y'); outtextxy(600,360,'t(s)'); {Ve cac truc toa do} outtextxy(240,390,'KHAO SAT QTQD HE THONG'); str(max:8:4,st); outtextxy(20,410,'GIA TRI CUC DAI LA:Ymax='+st); str(km*t:8:4,st); outtextxy(320,410,'THOI GIAN DE DAT CUC DAI:Tmax='+st); str(xicma:8:4,st); outtextxy(20,430,'DO QUA DIEU CHINH LA: xicma%='+st); str(Tod:8:4,st); outtextxy(320,430,'THOI GIAN ON DINH LA: Tod='+st); setcolor(5); line(50,350,620,350); {Ve truc toa do} line(50,5,50,350); line(50,5,47,15); {Ve mui ten truc y} line(50,5,53,15); line(620,350,615,347); {Ve mui ten truc t} line(620,350,615,353); for k:=1 to 6 do {Khac do truc t} begin str(100*(k-1)*t:2:1,st); outtextxy(k*100-60,357,st); line(k*100-50,347,k*100-50,353); end; for k:=0 to 10 do {khac do truc y} begin str(k/(5*k2):4:2,st); outtextxy(5,345-round(ky*k/(5*k2)),st); 35
- line(47,350-round(ky*k/(5*k2)),53,350-round(ky*k/(5*k2))); end; str(max:6:4,st); outtextxy(round(tm/t)+60,340-round(ky*max),'Ymax='+st); str(1/k2:2:1,st); outtextxy(560,335-round(ky/k2),'Yod='+st); outtextxy(km+50,330,'Tmax'); outtextxy(round(tod/t)+50,330,'Tod'); outtextxy(round(tod/t)+70,315-round(ky/k2),'5%Yod'); moveto(50,350); setlinestyle(Dottedln,0,1); line(round(tod/t)+49,350-round(ky*y[round(tod/t)]),round(tod/t)+49,350); line(50,350-round(ky*max),km+50,350-round(ky*max)); line(km+50,350-round(ky*max),km+50,350); line(50,350-round(1.05*ky/k2),620,350-round(1.05*ky/k2)); {duong sai so} line(50,350-round(0.95*ky/k2),620,350-round(0.95*ky/k2)); setlinestyle(SolidLn,0,1); line(50,350-round(ky/k2),620,350-round(ky/k2)); {duong on dinh} line(round(tod/t)+100,350-round(1.05*ky/k2),round(tod/t)+100,330- round(1.05*ky/k2)); line(round(tod/t)+100,350-round(1.05*ky/k2),round(tod/t)+97,340- round(1.05*ky/k2)); line(round(tod/t)+100,350-round(1.05*ky/k2),round(tod/t)+103,340- round(1.05*ky/k2)); line(round(tod/t)+100,350-round(0.95*ky/k2),round(tod/t)+100,370- round(0.95*ky/k2)); line(round(tod/t)+100,350-round(0.95*ky/k2),round(tod/t)+97,360- round(0.95*ky/k2)); line(round(tod/t)+100,350-round(0.95*ky/k2),round(tod/t)+103,360- round(0.95*ky/k2)); {Ve do thi} for k:=1 to 560 do begin if GraphResult<>grOK then halt(1); setlinestyle(SolidLn,$C3,ThickWidth); setcolor(Blue);lineto(k+50,350-round(ky*y[k])); end; delay(1000); 36
- repeat until keypressed; closegraph; END. Chạy chương trình cho ta kết quả như sau: Các kết quả tính toán được chạy bằng chương trình mô phỏng y[10] = 0.04337 y[20] = 0.29299 y[30] = 0.75050 y[40] = 1.31746 y[50] = 1.87936 y[60] = 2.34186 y[70] =2.64644 y[80] = 2.77405 y[90] = 2.74026 y[100] = 2.58526 y[110] = 2.36174 y[120] = 2.12303 y[130] = 1.91377 y[140] = 1.76399 y[150] = 1.68700 y[160] = 1.68067 y[170] = 1.73107 y[180] = 1.81739 y[190] = 1.91701 y[200] = 2.00984 y[210] = 2.08120 y[220] = 2.12331 y[230] = 2.13507 y[240] = 2.12090 y[250] = 2.08878 y[260] = 2.04810 y[270] = 2.00773 y[280] = 1.97460 y[290] = 1.95293 y[300] = 1.94404 y[310] = 1.94674 y[320] = 1.95810 y[330] = 1.97431 y[340] = 1.99153 y[350] = 2.00656 y[360] = 2.01725 y[370] = 2.02267 y[380] = 2.02301 y[390] = 2.01929 y[400] = 2.01301 y[410] = 2.00581 y[420] = 1.99914 y[430] = 1.99403 y[440] = 1.99105 y[450] = 1.99025 y[460] = 1.99132 y[470] = 1.99366 y[480] = 1.99660 y[490] = 1.99951 y[500] = 2.00188 y[510] = 2.00343 y[520] = 2.00405 y[530] = 2.00383 y[540] = 2.00300 y[550] = 2.00182 y[560] = 2.00058 y[570] = 1.9995 y[580] = 1.99874 y[590] = 1.99836 y[600] = 1.99834 y[610] = 1.99862 y[620] = 1.99907 y[630] = 1.99959 y[640] = 2.00007 y[650] = 2.00044 y[660] = 2.00065 y[670] = 2.00070 y[680] = 2.00062 y[690] = 2.00045 y[700] = 2.00024 y[710] = 2.00003 y[720] = 1.99986 y[730] = 1.99975 y[740] = 1.99971 y[750] = 1.99972 y[760] = 1.99979 y[770] = 1.99987 y[780] = 1.99996 y[790] = 2.00004 y[800] = 2.00009 y[810] = 2.00012 y[820] = 2.00012 y[830] = 2.00010 y[840] = 2.00007 37
- y[850] = 2.00003 y[860] = 1.99999 y[870] = 1.99997 y[880] = 1.99995 y[890] = 1.99995 y[900] = 1.99996 y[910] = 1.99997 y[920] = 1.99998 y[930] = 2.00000 y[940] = 2.00001 y[950] = 2.00002 y[960] = 2.00002 y[970] = 2.00002 y[980] = 2.00002 y[990] = 9.00001 Hình 4.8. Kết quả mô phỏng bằng ngôn ngữ Pascal y[1000] = 2.00000 3. Chương trình Matlab Dùng phần mềm Matlab vẽ đường đặc tính quá độ của hệ điều khiển tự động nhằm đối chứng với kết quả của chương trình mô phỏng. K1 = 100; K2 = 0.5; T1 = 0.01; T2 = 0.02; Num = K1;%Tu so cua ham truyen W(s) Den = [T1*T2,T1+T2,K1*K2]; step(Num,Den) title('Dac tinh qua do cua he DKTD') 38 Hình 4.9. Kết quả mô phỏng bằng Matlab
- xlabel('t (s)') ylabel('y(t)') Kết qủa mô phỏng bằng Matlab như hình 4.9 4. Nhận xét về kết quả mô phỏng Chương trình cho kết quả là tín hiệu ra y(k) dưới dạng số, cứ cách 10 số in ra một số liệu. Chương trình cũng cho kết quả dưới dạng đồ thị đường cong quá độ của hệ điều khiển tự động và tính các đặc tính quá độ như: ymax, yôđ, max, Tmax, Tôđ. Kết quả cho thấy hai đường cong do chương trình mô hình hóa và phần mềm Matlab vẽ ra trùng nhau, điều đó chứng tỏ thuật toán mô hình hóa là đúng. NỘI DUNG THẢO LUẬN 1. Nội dung phần thảo luận 1: Khái niệm chung về hệ thống và mô hình hệ thống 2. Nội dung phần thảo luận 2: Triển vọng phát triển của phương pháp mô hình hoá hệ thống và mô hình hệ thống TÓM TẮT NỘI DUNG CỐT LÕI Hiểu rõ khái niệm và đặc điểm vai trò của mô hình hóa hệ thống và mô phỏng. Nắm được sự triển vọng phát triển của các phương pháp mô hình hóa hệ thống. BÀI TẬP ỨNG DỤNG, LIÊN HỆ THỰC TẾ 1. Bài tập ứng dụng, liên hệ thực tế 1. Tìm hàm sai phân của hệ liên tục có hàm truyền sau: K W(s) = s(s2aKsK)2 ++ 2. Bài tập ứng dụng, liên hệ thực tế 2. Hãy dùng máy tính mô phỏng và khảo sát quá trình quá độ của hệ liên tục có sơ đồ cấu trúc như hình 4.8 với các thông số sau: K1 = 50; K2 = 0,2; T1 = 0,5; T2 = 0,1 u(t) K u(t) 1 Bước cắt mẫu T = 0,01; số bước tính k = (T12 s1)(Ts1)++ 1000 Yêu cầu: - Tính và in ra các chỉ tiêu đánh K2 giá chất lượng sau đây: + Giá trị cực đại của tín hiệu ra: y(k)max. + Độ quá điều chỉnh: max. + Giá trị ổn định của tín hiệu ra: y(k)ôđ. + Thời gian đạt giá trị y(k)max: Tmax. + Thời gian đạt giá trị y(k)ôđ: Tqđ. - Dùng Matlab vẽ đường cong quá trình quá độ của hệ trên. So sánh các kết quả và rút ra các kết luận về phương pháp mô phỏng. 39
- HƯỚNG DẪN TỰ Ở NHÀ u(t) K ( 1 0+ ,5p) K y(t) 1 2 (T12 p 1++ ) (T p 1 ) K3 Tham số của hệ thống: u(t) = 1(t), T - bước cắt mẫu, tự chọn, K1 = 100, K2 = 0,5 , K2 = 0,2 T1 = 0,5, T2 = 0,2 Nhiệm vụ: - Viết phương trình sai phân của hệ điều khiển tự động. - Sử dụng phần mềm Matlab/ Simulink, Tustin, vẽ đường cong quá trình quá độ của hệ thống đã cho. Rút ra kết luận. 40
- CHƯƠNG 5 MÔ HÌNH HÓA CÁC HỆ NGẪU NHIÊN MỤC TIÊU CỦA CHƯƠNG - Hiểu rõ khái niệm chung về phương pháp mô hình hóa các hệ ngẫu nhiên. - Nắm được sự phân bố xác suất của các biến ngẫu nhiên - Vận dụng các phương pháp tạo số ngẫu nhiên có phân bố mong muốn. - Về thái độ: Học sinh, Sinh viên hiểu rõ khái niệm và đặc điểm mô hình hóa các hệ ngẫu nhiên. 5.1. KHÁI NIỆM VỀ MÔ HÌNH HÓA CÁC HỆ 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. Thực chất của phương pháp này xây dựng mô hình xác suất là xây dựng trên máy tính hệ thống S với các quan hệ nội tại của nó trong đó có các biến ngẫu nhiên. Đầu vào của hệ có tác động mang tính ngẫu nhiên như số lượng các sự kiện xảy ra, thời gian giữa các sự kiện hoặc tác động của môi trường xung quanh E. Trên cơ sở đó phân tích các tín hiệu đầu ra người ta nhận được dáng điệu phản ứng của hệ thống. Phương pháp này thường được gọi là phương pháp mô phỏng (Simulation). Mỗi một lần thực hiện phép thử người ta thu được một lời giải chứa đựng những thông tin về dáng điệu của hệ thống S. Nếu số phép thử N đủ lớn thì kết quả thu được bằng cách lấy trung bình theo xác suất sẽ ổn định và đạt độ chính xác cần thiết. Phương pháp mô phỏng thường được dùng để nghiên cứu các hệ ngẫu nhiên nhưng đồng thời trong một số trường hợp cũng có thể dùng để giải các bài toán đối với hệ tiền định. 5.2. CƠ SỞ LÝ THUYẾT XÁC SUẤT 5.2.1. Biến cố ngẫu nhiên và xác suất - Phép thử và biến cố Khi thực hiện một số điều kiện nào đó ta nói rằng đã thực hiện một phép thử. Còn hiện tượng có thể xảy ra trong kết quả của phép thử được gọi là biến cố. Ví dụ: Hành động tung một con súc sắc là thực hiện một phép thử còn việc xuất hiện mặt nào đó được gọi là biến cố. Có 3 loại biến cố: - Biến cố chắc chắn (U): là biến cố nhất định sẽ xảy ra khi thực hiện phép thử. - Biến cố không thể có (V): là biến cố nhất định không xảy ra khi thực hiện phép thử. 41
- - Biến cố ngẫu nhiên: là biến cố có thể xảy ra hoặc không xảy ra khi thực hiện phép thử. - Xác suất của một biến cố Xác suất P(A) của biến cố A là một con số đặc trưng cho khả năng khách quan để xuất hiện biến cố A khi thực hiện phép thử. - Quan hệ giữa các biến cố: - Tích các biến cố: Biến cố A được gọi là tích của các biến cố A1, A2, , An nếu A xảy ra khi cả n biến cố Ai (i = 1 n) cùng đồng thời xảy ra: A = A1, A2, , An. Ví dụ: HS thi tốt nghiệp 6 môn, điều kiện để đỗ tốt nghiệp là không có môn nào bị điểm liệt. - Tổng các biến cố: Biến cố A được gọi là tổng của các biến cố A1, A2, , An nếu A xảy ra khi có ít nhất 1 trong số n biến cố Ai (i = 1 n) xảy ra: A = A1+ A2+ + An. Ví dụ: HS thi tốt nghiệp 6 môn, HS sẽ trượt tốt nghiệp nếu có một môn bị điểm liệt. - Biến cố xung khắc: Hai biến cố A và B được gọi là xung khắc với nhau nếu chúng không cùng xảy ra trong một phép thử. Ví dụ: Biến cố mặt chẵn và mặt lẻ khi tung súc sắc. Các biến cố A1, A2, , An được gọi là xung khắc từng đôi nếu bất kỳ hai biến cố nào trong chúng cũng xung khắc với nhau. Các biến cố A1, A2, , An được gọi là hệ đầy đủ các biến cố nếu chúng xung khắc từng đôi và tổng của chúng là một biến cố chắc chắn. Ví dụ: Gọi A là biến cố xuất hiện mặt có số chấm chẵn, B là biến cố xuất hiện mặt có số chấm lẻ khi tung một con súc sắc thì A, B là hệ đầy đủ. - Biến cố đối lập: A và A được gọi là đối lập với nhau nếu chúng tạo thành hệ đầy đủ các biến cố hay nói cách khác là một và chỉ một trong hai biến cố phải xảy ra sau phép thử. 5.2.2. Định nghĩa xác suất Ví dụ: Tung một con súc sắc. Gọi A là biến cố xuất hiện mặt có số chấm chẵn. Tìm P(A). Khi thực hiện phép thử có 6 trường hợp đồng khả năng xảy ra, tuy nhiên chỉ có một kết quả. Trong đó có 3 trường hợp mà nếu chúng xảy ra sẽ làm cho biến cố xảy ra (đó là các trường hợp 2, 4, 6 chấm). Các trường hợp làm cho biến cố xảy ra được gọi là các trường hợp thuận lợi cho biến cố. P(A) = 3/6 = 0,5 Định nghĩa cổ điển về xác suất: Nếu trong một phép thử có tất cả n trường hợp đồng khả năng xảy ra trong đó có m trường hợp thuận lợi cho biến cố A thì xác suất của biến cố A được định nghĩa là P(A) = m/n. 42
- Các tính chất của xác suất: - Xác suất của biến cố ngẫu nhiên hoặc bất kỳ: 0 < P(A) < 1. - Xác suất của biến cố chắc chắn: P(A) = 1 (m = n). - Xác suất của biến cố không thể có: P(A) = 0 (m = 0). Định nghĩa thống kê về xác suất: Tần suất xuất hiện biến cố A trong n phép thử là tỷ số giữa số phép thử trong đó biến cố xuất hiện và tổng số phép thử được thực hiện. Gọi số lần xuất hiện biến cố A là k và tần số xuất hiện biến cố A là f(A), ta có: f(A)=k/n. Nếu tần số xuất hiện biến cố A luôn luôn dao động xung quanh một số xác định p nào đó khi số phép thử tăng lên khá lớn mà tần suất xuất hiện biến cố A càng tiến gần tới p thì p được gọi là xác suất của biến cố A theo quan điểm thống kê: p(A) f(A). 5.2.3. Các định lý xác suất a- Định lý cộng xác suất: Nếu A và B là hai biến cố xung khắc thì P(A + B) = P(A) + P(B). Trường hợp tổng quát: Nếu A1, A2, , An là xung khắc từng đôi thì xác suất của tổng các biến cố bằng tổng các xác suất: nn p(A)p(A)ii= i1i1== b- Định lý nhân xác suất - Xác suất có điều kiện: Xác suất của biến cố A được tính với điều kiện biến cố B không xảy ra được gọi là xác suất có điều kiện của A và được kí hiệu là p(A/B). - Biến cố độc lập: Biến cố A được gọi là độc lập với biến cố B nếu việc A xuất hiện hay không cũng không ảnh hưởng đến xác suất biểu hiện của B. Các biến cố A1, A2, , An được gọi là độc lập toàn phần với nhau nếu mỗi biến cố trong chúng độc lập với tích của một số bất kỳ biến cố trong các biến cố còn lại. Định lý: Nếu A và B là hai biến cố bất kỳ thì p(AB) = p(A).p(B) = p(B).p(A/B) Tổng quát: Nếu A1, A2, , An các biến cố bất kỳ thì: p(A1A2 An) = p(A1)p(A2/A1) p(An/A1A2 An-1) Hệ quả: Nếu các biến cố A1, A2, , An độc lập toàn phần thì: p(A1A2 An) = p(A1)p(A2) p(An) c- Công thức xác suất đầy đủ, công thức Bayer Giả sử H1, H2, , Hn là hệ đầy đủ các biến cố. Biến cố A có thể xảy ra cùng với một trong những biến cố Hi (i = 1n). Khi đó: n p(A)= p(H)p(A/H)ii i1= 43
- d- Công thức Bernoulli - Dãy phép thử độc lập: các phép thử được gọi là độc lập với nhau nếu xác suất để xảy ra một biến cố nào đó trong từng phép thử sẽ không phụ thuộc vào việc biến cố đó có xảy ra ở các phép thử khác hay không. - Tiến hành n phép thử độc lập. Mỗi phép thử chỉ có hai trường hợp xảy ra: hoặc biến cố A xảy ra hoặc biến cố A không xảy ra. Xác suất để biến cố A xảy ra trong từng phép thử đều bằng p. Xác suất để biến cố A không xảy ra trong từng phép thử đều bằng q = 1 - p. Những bài toán thoả mãn các điều kiện trên được gọi là tuân theo lược đồ Bernoulli. Xác suất để trong n phép thử độc lập biến cố A xảy ra đúng k lần không kể thứ tự: k k n− k pnn (k)= C p q Xác suất để trong n phép thử đó biến cố A xảy ra từ k1 đến k2 lần không kể thứ tự: kk22 kknk − p(k,k)p(k)Cpqn12nn == kkkk==11 Ví dụ: Bắn 5 viên đạn vào một mục tiêu, xác suất trúng đích của mỗi viên đạn là 0,7. Tìm xác suất để có đúng 3 viên đạn trúng mục tiêu. 332 n = 5; k = 3; p = 0,7 p(5)C.p.q0,44155== 5.2.4. Đại lượng ngẫu nhiên và các quy luật phân phối xác suất a- Đại lượng ngẫu nhiên Là đại lượng mà trong kết quả của phép thử sẽ nhận một và chỉ một trong các giá trị có thể có của nó với xác suất tương ứng xác định. Đại lượng ngẫu nhiên được ký hiệu bằng chữ in hoa: X, Y, Z Các giá trị có thể nhận, ký hiệu bằng chữ in thường: x, y, z, Đại lượng ngẫu nhiên được chia thành hai loại: - Đại lượng ngẫu nhiên rời rạc: là đại lượng ngẫu nhiên mà các giá trị có thể có của nó là hữu hạn hoặc vô hạn đếm được (liệt kê được). - Đại lượng ngẫu nhiên liên tục: các giá trị có thể có của nó lấp đầy một khoảng liên tục trên trục số, không thể liệt kê được. b- Quy luật phân phối xác suất của đại lượng ngẫu nhiên Quy luật phân phối xác suất của đại lượng ngẫu nhiên X là hình thức cho phép biểu diễn mối quan hệ giữa các giá trị có thể có của X với các xác suất tương ứng. * Bảng phân phối xác suất: Dùng để thiết lập quy luật phân phối xác suất cho đại lượng ngẫu nhiên rời rạc. X x1 x2 x3 xk p p1 p2 p3 pk 44
- * Hàm phân phối xác suất F(x): của đại lượng ngẫu nhiên X là xác suất để X nhận giá trị nhỏ hơn x với x là một số thực bất kỳ. F(x) = p(X < x) Nếu X là đại lượng ngẫu nhiên rời rạc thì F(x) p= i xxi Tính chất của hàm phân phối: + 0 F(x) 1 với mọi x. + F(x) không giảm nghĩa là x1 < x2 F(x1) < F(x2). + p(x1 X x2) = F(x2) - F(x1) + F(+ ) = 1( lim F(x) 1= ); F(- ) = 0 ( lim F(x) 0= ) x→+ x→− * Hàm mật độ xác suất (chỉ áp dụng cho đại lượng ngẫu nhiên liên tục) f(x): của đại lượng ngẫu nhiên X là đạo hàm bậc nhất của hàm phân bố xác suất của đại lượng ngẫu nhiên đó. Tính chất của hàm mật độ xác suât: + f(x) 0 với mọi x. b + p(a < x < b) = f(x)dx a x + F(x)f(t)dt= − + f(x)dx1= − c- Các thông số đặc trưng của đại lượng ngẫu nhiên * Kỳ vọng toán: kỳ vọng toán của đại lượng ngẫu nhiên đặc trưng cho giá trị trung bình của đại lượng ngẫu nhiên đó. X là đại lượng ngẫu nhiên có bảng phân phối xác suất: X x1 x2 x3 xk p p1 p2 p3 pk k Kỳ vọng toán của X được tính bởi công thức sau: E(x)= xii p i1= Nếu X là đại lượng ngẫu nhiên liên tục với hàm mật độ xác suất f(x): E(x)= xf(x)dx − Tính chất của kỳ vọng toán: + E(C) = C với C = const. + E(Cx) = C.E(x) + E(X+Y) = E(X) + E(Y) 45
- * Phương sai: Phương sai của một đại lượng ngẫu nhiên đặc trưng cho độ phân tán các giá trị có thể có của đại lượng ngẫu nhiên xung quanh kỳ vọng toán của nó. Phương sai là kỳ vọng toán của bình phương sai lệch giữa đại lượng ngẫu nhiên X so với kỳ vọng toán của nó E(X): D(X) = E([X - E(X)]2) = E(X2) - [E(X)]2 k 22 Nếu X là đại lượng ngẫu nhiên rời rạc thì: E ( X ) = x p ii i=1 Nếu X là đại lượng ngẫu nhiên liên tục thì: E(X)22= xf(x)dx − Tính chất của phương sai: + D(C) = 0 + D(CX) = C2.D(X) + Nếu X và Y là các đại lượng ngẫu nhiên độc lập: D(X+Y) = D(X) + D(Y) * Độ lệch tiêu chuẩn của đại lượng ngẫu nhiên là căn bậc hai của phương sai của đại lượng ngẫu nhiên đó. =(X)D(X) , có cùng thứ nguyên với đại lượng ngẫu nhiên. 5.3. PHÂN BỐ XÁC SUẤT CỦA CÁC BIẾN NGẪU NHIÊN Trong hÖ ngÉu nhiªn cã nhiÒu biÕn ngÉu nhiªn kh¸c nhau. B¶ng 5.1 liÖt kª mét sè biÕn ngÉu nhiªn trong c¸c hÖ kh¸c nhau. C¸c ®Æc tr•ng quan träng nhÊt cña biÕn ngÉu nhiªn lµ hµm mËt ®é x¸c suÊt, hµm ph©n bè x¸c suÊt, c¸c th«ng sè, kú väng to¸n, ph•¬ng sai vµ mét sè ®Æc tr•ng kh¸c. Sau ®©y sÏ xem xÐt mét sè ph©n bè liªn tôc vµ gi¸n ®o¹n th•êng dïng nhÊt trong m« pháng c¸c hÖ ngÉu nhiªn. B¶ng 5.1 Lo¹i hÖ thèng C¸c biÕn ngÉu nhiªn Thêi gian vËn hµnh m¸y, ngõng m¸y do háng hãc, thêi gian thao HÖ thèng s¶n xuÊt t¸c, sè lÇn háng hãc, HÖ thèng m¸y tÝnh Thêi gian gi÷a c¸c lÇn lµm viÖc, thêi gian gi¶i c¸c bµi to¸n, HÖ thèng th«ng tin Sè kh¸ch hµng, thêi gian gi÷a c¸c lÇn liªn l¹c, thêi gian liªn l¹c, liªn l¹c thêi gian phôc vô, f(x) A. Phân bố liên tục (Continuous Distribution) 1 a. Phân bố đều (Uniform Distribution) ba− Đại lượng ngẫu nhiên X được gọi là tuân theo luật x phân bố đều liên tục trên đoạn [a,b], ký hiệu là X~U(a,b), a b nếu X có các đặc trưng sau: Hình 5.1. Phân bố đều U(a,b) 46
- 1 nÕu a x b - Hàm mật độ xác suất: f(x) = ba− 0 PhÇn cßn l¹i 0 nÕu a 0 0 1 2 3 4 5 6 - Kỳ vọng toán: M(x) = Hình 5.3- Phân bố mũ - Phương sai: S(x) = 2. - Phạm vi ứng dụng: Thường dùng để biểu diễn thời gian giữa hai sự kiện trong dòng sự kiện tối giản. d. Phân bố chuẩn (Normal) N(,2) (x− )2 e 22 - Hàm mật độ phân bố: f(x) = cho mọi x là số thực. 2 2 47
- - Hàm phân bố F(x): không có công thức biểu diễn. - Thông số: > 0, (- , + ) - Kỳ vọng toán: M(x) = - Phương sai: S(x) = 2 - Phạm vi ứng dụng: Phân bố chuẩn còn có tên là phân bố Gauss, là phân bố có ứng dụng rất rộng rãi trong việc đánh giá các đại lượng ngẫu nhiên. B. Phân bố gián đoạn (Discrete Distribution) a. Phân bố Bernoulli - Phạm vi ứng dụng: là số ngẫu nhiên xảy ra với hai khả năng khác nhau, thường được dùng để tạo ra các biến ngẫu nhiên gián đoạn như: nhị phân, hình học và âm nhị phân. 1p− nÕu x = 0 - Hàm trọng lượng: p(x)p= nÕu x = 1 p(x) 0 phÇn cßn l¹i p 0 nÕu x i). p(x) 1 1 nÕu x [i, j] - Hàm trọng lượng: p(x) = ji1−+ j i−+ 1 0 phÇn cßn l¹i 0 nÕu x < i i i+2 j-2 j x xi−+ 1 Hình 5.5. Ph©n bè ®Òu gi¸n ®o¹n - Hàm phân bố: F(x) = nÕu ixj j−+ i 1 1 nÕu xj - Thông số: i và j là các số nguyên, i<j i là giới hạn đầu j là giới hạn cuối ij+ - Kỳ vọng toán: M(x) = 2 48
- (ji1)1−+− 2 - Phương sai: S(x) = 12 Chú ý: Phân bố Bernoulli(1/2) chính phân bố đều gián đoạn DU(0,1). c. Phân bố Poisson () - Phạm vi ứng dụng: mô tả các sự kiện độc lập xảy ra với cường độ là hằng số. xe− nÕu x(0,1) - Hàm trọng lượng: p(x) = x! 0 phÇn cßn l¹i p(x) 0 nÕu x0 0.8 = 0.5 - Hàm phân bố: F(x) = x i − 0.6 e nÕu x0 i0= i! 0.4 - Thông số: > 0 0.2 0 - Kỳ vọng toán: M(x) = 1 2 3 4 5 x - Phương sai: S(x) = Hình 5.6. Phân bố Poisson với = 0.5 Hình 4.6 biểu diễn hàm trọng lượng Poisson với = 0,5. 5.4. SỐ NGẪU NHIÊN (RANDOM NUMBER) PHÂN BỐ ĐỀU U(0,1) Khi mô phỏng hệ thống người ta thường cần có các số ngẫu nhiên phân bố theo những quy luật phân bố nhất định để mô phỏng các sự kiện ngẫu nhiên xảy ra trong hệ. Số ngẫu nhiên phân bố đều trong khoảng (0,1) thường được dùng làm cơ sở để sản sinh ra số ngẫu nhiên có các phân bố khác nhau. Phân bố đều U(0,1) đóng vai trò quan trọng trong kỹ thuật mô phỏng, vì vậy đã được nhiều người nghiên cứu và có nhiều phương pháp tạo ra nó. Sau đây là một số phương pháp thông dụng để tạo ra phân bố đều U(0,1). a. Dùng máy phát ngẫu nhiên Máy phát số ngẫu nhiên dựa trên nguyên tắc sử dụng nhiễu do các thiết bị điện tử gây ra. Trên hình 5.7 biểu diễn phương pháp tạo nhiễu ngẫu nhiên dùng điện trở trong một mạch khuếch đại điện tử u(t) trong đó điện áp u(t) đóng vai trò là nhiễu ngẫu nhiên. Người ta chọn quãng thời Uc gian lấy mẫu T(a,b) và biên độ điện áp cắt Uc tuỳ ý. Giao a b t điểm giữa u(t) và Uc tạo Hình 5.7. Tạo số ngẫu nhiên dùng máy phát số ngẫu thành dãy số ngẫu nhiên t1, nhiên t2, t3, , tn. Đây là dãy số ngẫu nhiên phân bố đều U(0,1). 49
- Ưu điểm: Nhận được dãy số hoàn toàn ngẫu nhiên với số lượng không hạn chế (bằng cách thay đổi thời gian lấy mẫu T(a,b) và điện áp cắt Uc). Nhược điểm: Phải lắp thêm máy phát số ngẫu nhiên. Khi cần làm lại quá trình mô phỏng thì không tạo được dãy số ngẫu nhiên giống lần trước nên không thể so sánh chính xác kết quả của hai lần thử nghiệm. b. Dùng bảng số ngẫu nhiên Bằng nhiều cách người ta lập được bảng các số ngẫu nhiên (Xem phụ lục). Khi mô phỏng có thể lấy các số ngẫu nhiên trong bảng ra theo một thứ tự nào đó: lấy lần lượt, lấy cách quãng, Ưu điểm: Có thể lặp lại dãy số ngẫu nhiên để dùng cho các lần mô phỏng khác nhau. Nhược điểm: Tốn bộ nhớ để lưu bảng số ngẫu nhiên. c. Dùng thuật toán tạo số giả ngẫu nhiên (Pseudorandom Numbers) Ngày nay người ta thường dùng thuật toán tạo số ngẫu nhiên. Như vậy rất thuận tiện vì khi lập trình chỉ cần lập chương trình con tạo số ngẫu nhiên mà không cần phải ghi số ngẫu nhiên vào bộ nhớ của máy tính. Tuy nhiên người ta cũng chứng minh được rằng bất kỳ thuật toán nào cũng tạo ra số ngẫu nhiên có chu kỳ nên nó không hoàn toàn là số ngẫu nhiên mà nó chỉ là số giả ngẫu nhiên (Pseudorandom Numbers). Tuy nhiên nếu chu kỳ của số giả ngẫu nhiên đủ lớn (khoảng (15).106) thì số ngẫu nhiên đó có thể được xem là số ngẫu nhiên đối với các bài toán mô phỏng thông thường. Có nhiều thuật toán tạo số giả ngẫu nhiên khác nhau. - Thuật toán lấy phần giữa của bình phương: Cho số khởi đầu xo = 0,2152, vậy số ngẫu x1, x2, tiếp theo sẽ được tính như sau: 2 x0,04631104x0.6311o1=→= 2 x0,39828721x0.828712=→= Nhược điểm của phương pháp này là rất dễ xảy ra trường hợp chu kỳ lặp lại của số ngẫu nhiên quá ngắn. Ví dụ: Chọn xo= 0,4500 ta có: 2 (xo) = 0.20250000 → x1 = 0.2500 2 (x1) = 0.06250000 → x2 = 0.2500 2 (x2) = 0.06250000 → x3 = 0.2500 - Thuật toán nhân: Thuật toán: zi+1 = xi; Xi+1 = ]zi+1[, trong đó: xi - là số ngẫu nhiên phân bố đều trong (0,1). ]zi+1[ - là phần lẻ của số zi+1. - Hệ số: = 8t 3 với t là số nguyên dương bất kỳ. Ví dụ: chọn t = 5 → = 8.5 3, chọn = 37. Cho trước xo = 0,37843. Ta có số ngẫu nhiên sau: z1= xo = 37*0,37843 = 14,00191 → x1 =0,00191 50
- z2= x1 = 37*0,00191 = 0,07067 → x2 =0,07067 z3= x2 = 37*0,07067 = 2.61497 → x3 =0,61497 z4= x3 = 37*0,61497 = 22.74723 → x3 =0,74723 Dãy số ngẫu nhiên thu được sẽ phân bố đều trong khoảng (0,1). Người ta chứng minh được chu kỳ lặp lại của dãy số ngẫu nhiên này đủ lớn nên có thể dùng trong phép mô phỏng. 5.5. PHƯƠNG PHÁP TẠO CÁC BIẾN NGẪU NHIÊN CÓ PHÂN BỐ MONG MUỐN Khi mô hình hoá hệ thống thường phải mô phỏng các sự kiện ngẫu có phân bố khác nhau. Để tạo ra các số ngẫu nhiên như vậy người ta thường dùng các số ngẫu nhiên phân bố đều U(0,1) để tạo ra các số ngẫu nhiên mong muốn. Sau đây chúng ta sẽ nghiên cứu phương pháp thường dùng nhất được gọi là phương pháp biến đổi nghịch đảo. a. Thuật toán biến đổi nghịch đảo Giả thiết rằng chúng ta muốn tạo ra số ngẫu nhiên liên tục X có hàm phân bố liên tục tăng trong khoảng 0 < F(x) < 1 có nghĩa là nếu x1 < x2 và 0 < F(x1) F(x2) <1 thì -1 F(x1) < F(x2). Gọi F là nghịch đảo của F, thuật toán để tạo ra biến ngẫu nhiên X có hàm phân bố F(x) như sau: Lấy U có phân bố đều trong khoảng (0,1) và ký hiệu là U ~ U(0,1) (Dấu “~” đọc là “có phân bố chuẩn”). Vậy: X = F-1(U) Hàm F-1luôn luôn xác định trong khoảng (0,1). b. Thuật toán tạo biến ngẫu nhiên có phân bố mũ expo() - Lấy U ~ U(0,1). Vậy: X = -lnU Trong đó là thông số của phân bố mũ expo(). Chứng minh: x − e Ta có hàm mật độ phân bố mũ: f(x) = víi x 0 Gọi Xi là số ngẫu nhiên có phân bố mũ, Ui là số ngẫu nhiên có phân bố đều trong khoảng (0,1): x X XX− xxi ii −− e U= f(x)dx = dx = − e = 1e − → Xi = - ln(1-Ui) i 00 0 Chú ý rằng nếu Ui phân bố đều trong (0,1) thì (1- Ui) cũng phân bố đều trong khoảng (0,1) nên ta có thể viết: Xi = - lnUi 51
- c. Thuật toán tạo biến ngẫu nhiên có phân bố đều U(a,b) Lấy U ~ U(0,1). Vậy: X = a + (b-a)U d. Thuật toán tạo biến ngẫu nhiên có phân bố chuẩn N(,2) Thuật toán tìm phân bố chuẩn khá phức tạp, tuy nhiên có thể áp dụng định lý giới hạn trung tâm sau: Phân bố chuẩn có thể được coi là tổng của một số khá lớn các số ngẫu nhiên có Ui có phân bố đều trong (0,1). Nếu có: U1, U2, , UN. Kỳ vọng toán: 1, 2, , N. Độ lệch trung bình bình phương 1, 2, , N. Vậy ta có kỳ vọng toán của phân bố chuẩn = 1N. Độ lệch trung bình bình phương của phân bố chuẩn = 1N. N Tóm lại khi tổng Ui ta có phân bố gần với phân bố chuẩn. Trong thực tế i1= thường lấy N = 8 12 là đủ. e. Thuật toán tạo biến ngẫu nhiên có phân bố Poisson gián đoạn, Poisson () B1- Lấy a = e-, b = 1 và i = 0. B2- Lấy Ui+1~ U(0,1) và thay b bằng bUi+1. Nếu b < a thì lấy X = i, ngược lại thì chuyển sang bước 3. B3- Thay i = i+1 và quay lại bước 2. ii1 + Chú ý rằng điều kiện X = i chỉ xảy ra khi và chỉ khi có Y1Yjj , trong đó j1j1== ln U 1 Y=− j ~ exp o( ) và là các số ngẫu nhiên độc lập. j g. Thuật toán tạo biến ngẫu nhiên có phân bố đều gián đoan DU(i,j) Lấy U~U(0,1). Vậy: X = i + (j – i + 1)U f. Thuật toán tạo biến ngẫu nhiên có phân bố Bernoulli(p) Lấy U~U(0,1). Nếu U p thì X = 1, ngược lại X = 0. 5.6. MỘT SỐ VÍ DỤ VỀ MÔ PHỎNG CÁC HỆ NGẪU NHIÊN - Các dòng sự kiện có phân bố mũ expo() + Dòng các cuộc gọi của một trạm điện thoại. + Dòng các khách hàng đi vào một cơ sở dịch vụ như siêu thị, khu vui chơi giải trí, quán ăn, hiệu cắt tóc, + Dòng các khách hàng đi ra khỏi các cơ sở dịch vụ sau khi đã được phục vụ. + Dòng các nhiễu ngẫu nhiên tác động vào hệ truyền tin gây ra các sai số. + Dòng các hỏng hóc xảy ra trong các hệ thống kỹ thuật do tác động chủ yếu của các yếu tố bên ngoài như: nhiệt độ, độ ẩm, rung động, 52
- Các dòng sự kiện trê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. + Tại một thời điểm chỉ có một sự kiện xảy ra. Mỗi dòng có tính chất trên là dòng Poisson dừng hay còn gọi là dòng tối giản. Như ta đã biết khoảng cách giữa các sự kiện xảy ra trong dòng tối giản tuân theo luât phân bố mũ expo(). Ví dụ1: Mô phỏng độ tin cậy của thiết bị điện tử. Giả thiết rằng cường độ xảy ra hỏng hóc của một thiết bị điện tử là hằng số (lần/giờ) = const. Hãy xác định độ tin cậy P(t > T) và tuổi thọ trung bình T của thiết bị điện tử. Do = const nên dòng các hỏng hóc là dòng tối giản. Như vậy, khoảng cách giữa các hỏng hóc ti tuân theo luật phân bố mũ expo(). Gọi T là thời gian khảo sát, vậy thiết bị được coi là làm việc tin cậy nếu ti > T. Khi khảo sát một lượng đủ lớn các thiết bị thì độ tin cậy của nó được đánh giá bằng xác suất xảy ra sự kiện ti > T. Như vậy độ tin cậy được định nghĩa là xác suất để thời gian làm việc không hỏng hóc lớn hơn hoặc bằng thời gian khảo sát P(ti >T). - Thuật toán mô phỏng: B1- Lấy Ui ~ U(0,1). Vậy ti = - lnUi/. B2- So sánh ti với T: Nếu ti > T, thiết bị làm việc tin cậy và ngược lại nếu ti < T, thiết bị làm việc không tin cậy. B3- Thực hiện N “thử nghiệm” như vậy từ B1 đến B2. Độ tin cậy của thiết bị được đánh giá như sau: Sè thiÕt bÞ làm viÖc tin cËy P(tT) i Sè thiÕt bÞ thö nghiÖm N Nếu N càng lớn thì đánh giá sẽ càng chính xác. Ví dụ 2: Mô phỏng hệ truyền tin - Mô phỏng nguồn sai: Xét trường hợp kênh truyền tin là nhị phân đối xứng. Nhiễu trong kênh liên lạc là loại nhiễu xung ngẫu nhiên. Các xung nhiễu (dương hoặc âm) có tham số gần bằng xung tín hiệu sẽ gây ra các sai là biến tín hiệu 1 thành 0 hoặc ngược lại biến tín hiệu 0 thành 1. Do kênh nhị phân đối xứng nên có p0→1 = p1→0 = p. Các sai xảy ra trong kênh liên lạc là các sự kiện ngẫu nhiên độc lập. Như vậy dòng sai trong kênh liên lạc có thể được mô phỏng bằng dòng tối giản có cường độ = const. 53
- Thông thường cường độ dòng sai trong kênh liên lạc nằm trong khoảng 10-110-4. E – Nguồn sai Như đã phân tích ở ví dụ 1, khoảng cách giữa các sai được S – Hệ thống tính theo công thức sau: l n U t =− i M = E + S i M Hình 5.8- Mô hình mô phỏng quá trình truyền tin trong đó: Ui là số ngẫu nhiên có phân bố đều U(0,1) Start Chú thích ti là khoảng cách giữa m - số phần tử mang tin các sai (i – 1) và i. n - chiều dài từ mã Nạp dữ liệu m, n, i=0 Vậy, mô hình nguồn - cường độ dòng sai Q0=0; Q1=0; ;a=37 Ti - khoảng cách giữa các sai, tuân sai là dãy các sai có cường x0 =0,37834; S=3000 theo luật phân bố mũ độ , khoảng cách giữa các Xi - số ngẫu nhiên phân bố đều sai tuân theo quy luật phân i = i + 1 [0,1] S - số lần thử nghiệm bố mũ expo(). Q0 - số từ mã đúng Tạo số ngẫu nhiên Xi Q1 - số từ mã sai - Mô phỏng quá trình Z=a*xo;Xi=]Z[; xo=Xi [T /n] - phần nguyên của tỷ số T /n truyền tin i i ]Ti/n[ - phần lẻ của tỷ số Ti/n Tính Ti = - lnxi/, Giả sử truyền đi liên a, x0 - hệ số để tạo số ngẫu nhiên tục các từ mã có chiều dài phân bố 1 Q = Q + [T /n] n, trong đó số phần tử mang Ti n 0 0 i tin là m (m 0 hình hệ thống truyền tin MM Q1 = Q1 + 1 là sự xếp chồng của mô 0 hình hệ thống S và mô hình 1 i < S môi trường E - chính là mô hình nguồn sai như trên 0 hình 4.8. PS=Q0/(Q0 + Q1) PD=1-PS - Thuật toán mô phỏng: được biểu diễn bằng V = m(1-PS)/n lưu đồ hình 4.9. In kết quả B1- Lấy Ui ~ U(0,1). B2- Tính khoảng cách Stop giữa các sai: Hình 5.9. Lưu đồ mô phỏng hệ truyền tin B3- So sánh giữa ti và chiều dài từ mã n: 54
- + Nếu ti > n → số từ mã đúng Q0 (không có sai) sẽ được tăng lên: Q0 = Q0 + [T/N] Kiểm tra phần lẻ của tỷ số [T/N]: nếu ]T/N[ > 0, số từ mã sai Q1 (có sai) sẽ được tăng lên 1 đơn vị Q1 = Q1 +1. + Nếu ti 60 sinh viên thì số sinh viên thừa ra sẽ chờ chuyến xe tiếp theo. Start Sinh viên than phiền rằng không đủ xe để đi đến trường nên tx = Txe, t = 0, c = 0, dk sau 7 giờ vẫn còn nhiều sinh viên bị = 1, a = lamda kẹt lại không kịp đến trường đúng 0 giờ. dk = t của đầu bài và lấy kết quả ra từ màn x hình máy tính. 1 * Thuật toán mô phỏng 0 tx = Txe c > 60 c = 0 a. Xây dựng mô hình dòng sinh 1 viên đi đến trạm xe buýt. Khoảng c = c - 60 Stop cách giữa các sinh viên đi đến trạm 1 xe buýt là tii=− ln(U ); Ui Hình 5.10. Lưu đồ mô phỏng trạm xe buýt sinh viên U(0,1). b. Xây dựng mô hình vận chuyển xe buýt. Số xe phân bố đều đặn, sau Txe = 15 phút có một chuyến xe buýt. 55
- c. Xếp chồng hai mô hình trên với nhau. d. Đếm số sinh viên chờ ở trạm xe buýt. e. Đếm số sinh viên còn lại tại trạm sau mỗi chuyến xe. g. Mô phỏng quá trình vận chuyển sinh viên sau 1 giờ (từ 6h30 đến 7h30). Đếm số sinh viên bị kẹt lại sau 7h30. Lặp lại với Txe khác nhau để tìm Txe max. Nhận xét? * Lưu đồ mô phỏng Lưu đồ mô phỏng như trên hình 5.4. Trong đó đặt các biến như sau: + tx = Txe - thời gian giữa các chuyến xe buýt. + t - thời gian mô phỏng. Đây là thời gian sự kiện, t sẽ được tăng lên khi có sự kiện sinh viên đến trạm xe buýt. Quá trình mô phỏng thực hiện khi t = 0(s) (lúc 6h30) đến t = 3600 (s) (lúc 7h30). Dừng mô phỏng trong trường hợp ngược lại. + c - số sinh viên chờ ở trạm xe buýt. Như vậy khi có một sinh viên đi đến trạm xe buýt thì c = c + 1 t = t + ti, trong đó ti là khoảng cách giữa các sinh viên đi đến trạm xe buýt. + dk - biến trung gian. * Chương trình mô phỏng viết bằng ngôn ngữ Visual Basic // // chương trình viết cho Form 1 // khai báo các biến Dim i, k, txe, times, c, s, dk as Integer Dim as Double Dim ast, bst, at, bt as String Dim x(160), y(160) as Integer // thủ tục tính Public Sub tinh() Const e=2.7182 a=lamda U=RND t=t+(-log(U)/a*log(e) if t<3600 then c=c+1 56
- else: t=3600 end if end Sub // thủ tục vẽ đường đi đến trạm xe của sinh viên Public Sub veduong() Const r=50 pictD.Cls for j=1 to c pictD.DrawWidth=6 pictD.Circle(x(j),y(j),r,RGB(0,0,0)) next end Sub // thủ tục vẽ ôtô chạy Public Sub veoto() Im.Left=i imI.Left=k if i>14000 then i=-4000 end if k=k+45000/txe end Sub // thủ tục vẽ Form2 Public Sub hienthi() Form2.lbSVCC.Caption=c Form2.lbSCX2.Caption=s lbSCX2.Caption=Int(t/60) Form2.pt2.Cls Form2.pt1.Cls For j=1 to c 57