4.1 Những đại lƣợng chính dùng trong chƣơng trình
Việc sử dụng Biểu đồ xấp xỉ để kiểm định khả năng lập lịch của một hệ thời gian thực cho ta độ phức tạp chấp nhận đƣợc. Khi sử dụng Biểu đồ xấp xỉ thì độ chính xác và tin cậy ở mức độ nào? Để trả lời những câu hỏi đó, chƣơng trình mô phỏng đƣợc xây dựng để đánh giá các mặt trên. Trong chƣơng trình mô phỏng, các đại lƣợng chính sau đây đƣợc sử dụng:
Tiso: Đại lƣợng này sẽ cho ta thấy sự khác biệt về kết quả giữa Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah) với phƣơng pháp kiểm định chính xác. Đại lƣợng này đƣợc tính bởi tỉ số giữa số nhiệm vụ đƣợc kết luận là lập lịch đƣợc theo Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah) với số nhiệm vụ đƣợc kết luận là lập lịch đƣợc theo phƣơng pháp kiểm định chính xác. Nếu số nhiệm vụ lập lịch đƣợc theo Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah) và số nhiệm vụ lập lịch đƣợc theo phƣơng pháp kiểm định chính xác càng sát nhau thì giá trị này sẽ xấp xỉ = 1.
r_i: Đại lƣợng này sẽ cho ta sai số tƣơng đối giữa thời gian phản ứng xấp xỉ
và thời gian phản ứng chính xác của từng nhiệm vụ và đƣợc tính bởi công thức:
rt _ xx rt r _ i
rt
Trong đó rt_xx là thời gian phản ứng xấp xỉ theo Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah), rt là thời gian phản ứng chính xác của nhiệm vụ.
Saiso: là giá trị trung bình của sai số tƣơng đối của thời gian phản ứng xấp
xỉ theo Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah) với thời gian phản ứng chính xác. Giá trị này đƣợc tính bằng trung bình cộng của tất cả các r_i của tất cả
các nhiệm vụ lập lịch đƣợc theo Biểu đồ xấp xỉ (Phƣơng pháp của Bini and Baruah).
4.2 Kỹ thuật mô phỏng sử dụng trong chƣơng trình [9]
Để đảm bảo các tham số đầu vào của nhiệm vụ là hoàn toàn ngẫu nhiên và khách quan, chƣơng trình đã sử dụng kỹ thuật Ufitting. Trong chƣơng trình thì kỹ thuật Ufitting đƣợc sử dụng để sinh các ui cho các nhiệm vụ vkhi đã biết hệ số U của cả hệ.
Cách thực hiện
Thuật toán đƣợc sử dụng để sinh ra các thành phần ui ngẫu nhiên trong một hệ thời gian thực có hệ số sử dụng U cho trƣớc. Để làm đƣợc việc này trƣớc tiên ta gán biến uplimit = U. Các ui đƣợc sinh ra bằng cách lấy uplimit nhân với một số thực ngẫu nhiên và đảm bảo rằng tổng của các ui chính bằng U.
Thuật toán
- Đầu vào: n, U.
- Đầu ra: Các hệ số ui của các nhiệm vụ trong hệ thống.
- Mã lệnh: uplimit=U; For i= 1; n-1; u[i]= ran*uplimit; uplimit=uplimit-u[i]; End; u[n]=uplimit;
Hàm ran*Uplimit sẽ tạo ra một số thực ngẫu nhiên trong [0, Uplimit].
Độ phức tạp thuật toán
Thuật toán Ufitting đã đƣợc chứng minh là có độ phức tạp đa thức [9].
Ƣu điểm: Thuật toán có ƣu điểm là tạo ra đƣợc các giá trị ngẫu nhiên cho ui và có tổng bằng U và thuật toán có độ phức tạp đa thức.
4.3 Chƣơng trình mô phỏng
Trong chƣơng trình mô phỏng thì các đại lƣợng đƣợc sinh ra ngẫu nhiên [11] để đánh giá Biểu đồ xấp xỉ. Các kỹ thuật mô phỏng đƣợc sử dụng để tạo ra các giá trị ngẫu nhiên.
Tập nhiệm vụ trong trƣờng hợp kỳ hạn ràng buộc với các thông số đƣợc sinh ra hoàn toàn ngẫu nhiên. Giá trị U đƣợc sử dụng để sinh ra các ui rồi từ các ui sinh ra Ci khi đã biết chu kỳ Ti. Giá trị U biến thiên trong khoảng từ 0.1 tới 1 và bƣớc nhảy là 0.1. Tức là U sẽ nhận các giá trị là 0.1, 0.2. . . 1. Chu kỳ đƣợc sinh ngẫu nhiên trong khoảng từ 0 tới MaxT. Kì hạn của nhiệm vụ đƣợc sinh ngẫu nhiên và đảm bảo rằng kì hạn ≤ chu kỳ.
Trong chƣơng trình thì hệ số k cũng biến thiên trong khoảng từ 1 đến MaxK với bƣớc nhảy là 1. Giá trị MaxK này có thể thay đổi để đánh giá Biểu đồ xấp xỉ.
Với các thông số đầu vào đƣợc sinh ngẫu nhiên, chƣơng trình sẽ chạy lặp đi lặp lại 200 lần để cho ta kết quả khách quan.
Các thành phần của chƣơng trình mô phỏng
Đầu vào: Các giá trị U, n, k
Đầu ra:
- Sinh hệ với các nhiệm vụ có kỳ hạn ràng buộc và in ra file Thongso.txt
các tham số đầu vào gồm : He, task, n, U, k, i , u_i, C_i, D_i, T_i
- Tính toán thông tin lập lịch của hệ và in ra file Ketqua.txt với các thông số:
He, task, n, U, k, i, R_i, R_imu, f, fmu, r_i.
- In ra file Loi.txt các nhiệm vụ mà có thời gian phản ứng R_i = 0 với các
thông số: He, task, n, U, i , R_i, f.
- In ra file Gopnhom.txt kết quả gộp nhóm theo các thông số đầu vào. Thông số trong Gopnhom.txt gồm: n (U), Saiso,Tiso. Tùy thuộc vào yêu cầu mà ta có thể nhóm theo n, hoặc theo U.
- In ra file cantren.txt kết quả gộp nhóm theo các thông số đầu vào bao gồm
n (U), Saiso, Tiso. Tùy thuộc vào yêu cầu mà ta có thể nhóm theo n hoặc theo U.
Trong đó:
- He: Cho ta chỉ số của hệ ví dụ nhƣ he 1, he 2. . . - task: Cho ta chỉ số của các nhiệm vụ trong hệ. - u_i, C_i, D_i, T_i:Là các thông số của nhiệm vụ.
- R_i, R_imu: Là thời gian phản ứng chính xác và thời gian phản ứng xấp xỉ.
- f, fmu : Cho biết khả năng lập lịch của nhiệm vụ theo phƣơng pháp chính xác và Biểu đồ xấp xỉ.
- r_i: Sai số tƣơng đối về thời gian phản ứng của từng nhiệm vụ. Các hàm sử dụng trong chƣơng trình
Trong chƣơng trình thì một số hàm chính sau đƣợc xây dựng:
Hàm RBF (Các thông số): Hàm này chính là hàm RBF đã trình bày trong luận văn.
Hàm RBF_mu(Các thông số): Hàm này chính là hàm xấp xỉ đƣợc xây dựng theo hệ số k từ hàm RBF. Trong chƣơng trình thì hàm đƣợc xây dựng theo [7].
Hàm W(Các thông số): Trong hàm W thì có nhận một đối số là con trỏ hàm. Tùy vào hàm nhập vào mà sẽ cho ta giá trị tƣơng ứng là hàm W (trong PDA) hoặc hàm W (trong Biểu đồ xấp xỉ).
Hàm RT(Các thông số): Trả về thời gian phản ứng lớn nhất của nhiệm vụ.
Hàm RT_mu(Các thông số): Trả về cận trên xấp xỉ của thời gian phản ứng của nhiệm vụ theo Biểu đồ xấp xỉ.
Hàm SinhS_mu(Các thông số): Trả về tập các điểm lập lịch theo Biểu đồ xấp xỉ. Trong luận văn thì tập các điểm lập lịch này đƣợc tính theo[7].
Hàm Ufitting(Các thông số ): Hàm này sử dụng để sinh ngẫu nhiên hệ số ui
cho từng nhiệm vụ khi đã biết U.
Hàm SinhC, SinhD, SinhT: Tạo ra các giá trị C, D, T ngẫu nhiên cho nhiệm vụ.
Ngoài ra trong chƣơng trình còn sử dụng các hàm phục vụ cho việc tính
toán và hiệu chỉnh nhƣ các hàm sắp xếp, các hàm tạo số ngẫu nhiên, hàm loại bỏ các phần tử dƣ thừa trong tập S_imu.
Tiến trình thực hiện chƣơng trình
Với các tham số đầu vào n,U, k đƣợc nhập vào thông qua các vòng lặp thì các thông số của nhiệm vụ đƣợc sinh ra hoàn toàn ngẫu nhiên thông qua việc gọi tới các hàm trong chƣơng trình:
- Hàm Ufitting( ). - Hàm SinhT( ). - Hàm SinhC( ). - Hàm SinhD ( ). - Sắp xếp lại các thông số. - Gọi các hàm tính toán.
Các thông số tính toán đƣợc sẽ đƣợc in vào vào file Thongso.txt. Kết quả thu đƣợc đƣợc ghi vào file Ketqua.txt. Việc gộp nhóm kết quả đƣợc ghi vào file Gopnhom.txt. Trong chƣơng trình về phƣơng pháp kiểm định của Bini and Baruah thì việc gộp nhóm kết quả đƣợc ghi vào file cantren.txt
4.4 Kết quả đạt đƣợc
Với các dữ liệu đầu vào và các tham số của nhiệm vụ đƣợc nhập tự động qua các vòng lặp, các thông số của nhiệm vụ đƣợc sinh hoàn toàn ngẫu nhiên, chƣơng trình sẽ tiến hành tính toán và ghi lại các kết quả và tiến hành đánh giá các kết quả
có đƣợc của Biểu đồ xấp xỉ với các kết quả có đƣợc từ phƣơng pháp kiểm định của
Bini and Baruah.
Kết quả gộp nhóm của Biểu đồ xấp xỉ sẽ đƣợc lấy trong file Gopnhom.txt.
Kết quả gộp nhóm của phƣơng pháp kiểm định của Bini and Baruah đƣợc lấy
trong file file cantren.txt. Luận văn sẽ tiến hành đánh giá và so sánh các kết quả trên hai phƣơng diện là sai số tƣơng đối về thời gian phản ứng và độ chính xác của hai phƣơng pháp.
Hình 4.1: Saiso của 2 phƣơng pháp nhóm theo n
Hình 4.1 cho ta giá trị của Saiso tƣơng ứng của Biểu đồ xấp xỉ và phƣơng
pháp kiểm định của Bini and Baruah khi nhóm theo n. Nhìn vào đồ thị ta thấy khi n tăng từ 10 đến 100 thì giá trị của Saiso của Biểu đồ xấp xỉ là thấp hơn so với giá trị có đƣợc theo phƣơng pháp của Bini and Baruah. Giá trị Saiso theo Biểu đồ xấp xỉ có xu hƣớng giảm dần và rất sát với giá trị 0 trong khi giá trị này lại có xu hƣớng tăng theo phƣơng pháp của Bini and Baruah và ở ngƣỡng 20%. Điều này cho thấy việc lựa chọn Biểu đồ xấp xỉ để kiểm định là một giải pháp tốt.
Hình 4.2: Tiso của 2 phƣơng pháp khi nhóm theo n
Hình 4.2 cho ta thấy giá trị của Tiso nhóm theo n của 2 phƣơng pháp. Nhìn vào đồ thị ta thấy giá trị của Tiso theo Biểu đồ xấp xỉ cao hơn so với phƣơng pháp kiểm định của Bini and Baruah. Giá trị của Tiso theo Biểu đồ xấp xỉ là tƣơng đối ổn định và rất sát với 100% trong khi đó giá trị này lại có xu hƣớng giảm dần khi thực hiện theo phƣơng pháp phƣơng pháp kiểm định của Bini and Baruah và ở ngƣỡng khoảng 80%. Kết quả có đƣợc này của Biểu đồ xấp xỉ là tƣơng đối tốt.
Hình 4.3: Saiso của 2 phƣơng pháp khi nhóm theo U
Hình 4.3 cho ta giá trị của Saiso tƣơng ứng của Biểu đồ xấp xỉ và phƣơng
pháp kiểm định của Bini and Baruah khi nhóm theo U. Nhìn vào đồ thị ta thấy giá trị của Saiso theo Biểu đồ xấp xỉ là thấp hơn so với giá trị có đƣợc từ phƣơng pháp kiểm định của Bini and Baruah. Giá trị Saiso của Biểu đồ xấp xỉ có xu hƣớng giảm dần và rất sát với giá trị 0 khi U nhận giá trị từ 0.6 trở đi. Trƣớc đó thì giá trị này của Biểu đồ xấp xỉ cũng chỉ ở mức < 6% trong khi giá trị này theo phƣơng pháp kiểm định của Bini and Baruah có xu hƣớng tăng nhanh khi U nhận giá trị từ 0.1 đến 0.6 và đạt cực đại tại U = 0.6 là 36% sau đó giá trị này có xu hƣớng giảm dần. Với kết quả trên thì Biểu đồ xấp xỉ là một lựa chọn tốt cho kiểm định khả năng lập lịch của một hệ thời gian thực.
Hình 4.4: Tiso của 2 phƣơng pháp nhóm theo U
Hình 4.14 cho ta thấy giá trị của Tiso nhóm theo U của 2 phƣơng pháp. Nhìn vào đồ thị ta thấy khi U nhận giá trị từ 0.1 đến 0.5 thì giá trị của Tiso của 2 phƣơng pháp là gần nhƣ nhau và gần nhƣ = 100%. Khi U nhận giá trị từ 0.5 đến 1 thì có sự
theo Biểu đồ xấp xỉ có xu hƣớng giảm chậm và vẫn > 90%, phƣơng pháp kiểm định của Bini and Baruah lại giảm khá nhanh xuống khoảng 42% tại U = 0.8 và sau đó có xu hƣớng tăng trở lại khi U nhận giá trị từ 0.8 đến 1.
Nhƣ vậy, qua việc đánh giá các kết quả thu đƣợc trong việc sử dụng Biểu đồ xấp xỉ để kiểm định khả năng lập lịch cũng nhƣ tính xấp xỉ hóa thời gian phản ứng cho hệ thời gian thực trƣờng hợp kỳ hạn ràng buộc, luận văn rút ra một số kết luận sau:
Việc sử dụng Biểu đồ xấp xỉ để kiểm định khả năng lập lịch cũng nhƣ tính xấp xỉ thời gian phản ứng cho một hệ thời gian thực trƣờng hợp kỳ hạn ràng buộc là một phƣơng pháp kiểm định có thể áp dụng rộng dãi vì ngoài những ƣu điểm về mặt lí thuyết nhƣ đã trình bày thì Biểu đồ xấp xỉ còn có những ƣu điểm về mặt thực nghiệm thông qua chƣơng trình mô phỏng cụ thể nhƣ sau:
- Sai số tƣơng đối của Biểu đồ xấp xỉ so với phƣơng pháp kiểm định của Bini and Baruah là thấp hơn và giá trị này là tƣơng đối ổn định khi nhóm theo n hoặc theo U.
- Độ chính xác của Biểu đồ xấp xỉ so với phƣơng pháp kiểm định của Bini and Baruah là cao hơn. Giá trị này theo Biểu đồ xấp xỉ cũng là tƣơng đối ổn định khi nhóm theo n hoặc theo U.
CHƢƠNG 5: KẾT LUẬN 5.1 Xuất xứ bài toán 5.1 Xuất xứ bài toán
Bài toán xuất phát từ một thực tế là ngày nay hệ thời gian thực đóng một vai trò quan trọng trong cuộc sống và ứng dụng trong nhiều lĩnh vực nhƣ quan trọng nhƣ Quốc phòng, Viễn thông, Kiểm soát không lƣu. . .Một vấn đề đƣợc đặt ra là phải kiểm tra xem một hệ thống với các nhiệm vụ có lập lịch đƣợc hay không ?
Để giải quyết bài toán trên thì hai phƣơng pháp kiểm định chính xác khả năng lập lịch của một hệ thời gian thực thƣờng đƣợc sử dụng là phƣơng pháp kiểm định dựa vào phân tích yêu cầu bộ vi xử lí (PDA) và kiểm định dựa và phân tích thời gian phản ứng (RTA). Tuy nhiên, cả 2 phƣơng pháp PDA và RTA đều có độ phức tạp giả đa thức và hiện nay chƣa có một phƣơng pháp kiểm định chính xác nào có độ phức tạp đa thức đƣợc tìm thấy. Chính vì vậy, một yêu cầu đƣợc đặt ra là phải tìm ra một phƣơng pháp kiểm định cho ta độ phức tạp chấp nhận đƣợc. Việc giảm độ phức tạp sẽ tiết kiệm đƣợc rất nhiều thời gian, công sức cũng nhƣ chi phí
Trong bối cảnh nhƣ vậy, kiểm định bằng việc sử dụng các phƣơng pháp xấp xỉ cho ta độ phức tạp chấp nhận đƣợc. Trong các phƣơng pháp kiểm định xấp xỉ thì việc sử dụng Biểu đồ xấp xỉ đã đáp ứng đƣợc cả hai yêu cầu đặt ra là cho ta kết quả về khả năng lập lịch đƣợc hay không của một hệ thời gian thực và giảm đƣợc độ phức tạp của thuật toán kiểm định. Tuy nhiên, khi sử dụng biều đồ xấp xỉ để kiểm định ta cũng phải chấp nhận một sự sai khác so với phƣơng pháp kiểm định chính xác. Các mô phỏng đã chứng tỏ sự sai khác này là chấp nhận đƣợc.
5.2 Kết quả đạt đƣợc
Từ việc nghiên cứu các Biểu đồ xấp xỉ cho việc kiểm định khả năng lập lịch của một hệ thời gian thực, luận văn rút ra đƣợc một số kết quả nhƣ sau:
- Về mặt lí thuyết, Biểu đồ xấp xỉ là một phƣơng pháp kiểm định hiệu quả cho hệ thời gian thực và có độ phức tạp đa thức và có độ chính xác cao. Việc sử dụng Biểu đồ xấp xỉ sẽ giảm đƣợc độ phức tạp của thuật toán kiểm định nhƣng bù lại ta phải chấp nhận một sai số so với phƣơng pháp kiểm định chính xác. Tuy nhiên, những sai số đó là chấp nhận đƣợc.
- Về mặt thực nghiệm thì các kết quả có đƣợc từ Biểu đồ xấp xỉ đƣợc so sánh với các kết quả có đƣợc từ một phƣơng pháp kiểm định xấp xỉ hiệu quả đó là phƣơng pháp kiểm định của Bini and Baruah. Việc so sánh cho thấy việc sử dụng Biểu đồ xấp xỉ để kiểm định khả năng lập lịch cho một hệ thời gian thực là tốt hơn so với phƣơng pháp của Bini and Baruah.
5.3 Ý nghĩa và khả năng ứng dụng của Biểu đồ xấp xỉ
Kiểm định tính lập lịch của một hệ thời gian thực bằng Biểu đồ xấp xỉ là một phƣơng pháp kiểm định mà tƣ tƣởng chủ đạo là giảm số lƣợng các điểm cần xét