Tải bản đầy đủ (.pdf) (67 trang)

Ứng dụng xử lý mù trong tiền xử lý tiếng việt nói

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.2 MB, 67 trang )

Mục lục
Lời cam đoan i
Danh mục hình vẽ iv
Danh sách viết tắt vi
Lời cảm ơn vii
Tóm tắt ix
MỞ ĐẦU 2
1 TIẾNG NÓI VÀ XỬ LÝ TIẾNG NÓI 7
1.1 Đặc trưng và mô hình tín hiệu tiếng nói . . . . . . . . . . . . . . . . . 8
1.2 Xử lý tiếng nói . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Môi trường âm thanh và tiền xử lý tiếng nói . . . . . . . . . . . . . . 16
1.4 Ứng dụng nhiều micro trong xử lý tiếng nói . . . . . . . . . . . . . . . 19
2 LÝ THUYẾT TIẾP CẬN 23
2.1 Bài toán tách nguồn mù . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Bộ lọc Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3 Mô hình trộn Gauss và Thuật toán EM . . . . . . . . . . . . . . . . . 37
3 THUẬT TOÁN XỬ LÝ MÙ ĐỂ TÁCH TÍN HIỆU TIẾNG NÓI TRONG
MÔI TRƯỜNG TUYẾN TÍNH BẤT BIẾN 41
3.1 Mô hình bài toán tổng quát. . . . . . . . . . . . . . . . . . . . . . . . 42
3.2 Xác định những khoảng đơn nguồn . . . . . . . . . . . . . . . . . . . 44
3.3 Ước lượng hàm truyền. . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.4 Tóm tắt thuật toán . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
ii
Lời cam đoan iii
4 KẾT QUẢ MÔ PHỎNG VÀ THẢO LUẬN 50
4.1 Bài toán mô phỏng . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Kết quả mô phỏng các bước thực hiện thuật toán và tách tín hiệu . . . 53
4.3 Đánh giá và so sánh thuật toán . . . . . . . . . . . . . . . . . . . . . 58
5 KẾT LUẬN 61
Tài liệu tham khảo 64
Phụ lục 67


Thank you for evaluating AnyBizSoft PDF Splitter.
A watermark is added at the end of each output PDF file.
To remove the watermark, you need to purchase the software from
/>-4-
DANH MỤC CÁC HÌNH

Hình 1.1. Sự di chuyển của tác tử di động giữa các máy tính 9
Hình 1.2. Tác tử di động cho phép thao tác ngắt kết nối 11
Hình 1.3. Tác tử di động giúp giảm tải mạng 11
Hình 1.4. Các thuộc tính của tác tử di động 27
Hình 1.5. Một hệ thống tác tử 28
Hình 1.6. Sự truyền tải tác tử 30
Hình 2.1. Mô hình Aglet 35
Hình 2.2. Mối quan hệ giữa Proxy và Aglet 36
Hình 2.3. Sự gửi đi của một Aglet 37
Hình 2.4. Gửi một thông báo đơn giản 38
Hình 2.5. Mô hình vòng đời của Aglet 38
Hình 2.6. Mối quan hệ giữa Aglet và các bộ phận lắng nghe 39
Hình 2.7. Aglet API 40
Hình 2.8. Sự chuyển giao của Aglet 41
Hình 2.9. Một màn hình kết xuất của Tahiti 43
Hình 3.1. Mô hình đào tạo từ xa qua mạng 50
Hình 3.2. Các mối quan hệ trong hệ thống đào tạo từ xa qua mạng 51
Hình 3.3. Màn hình đăng nhập Tahiti Server 57
Hình 3.4. Màn hình Tahiti Server 57
Hình 3.5. Màn hình Tahiti Server bên gửi 58
Hình 3.6. Màn hình Master bên gửi 59
Hình 3.7. Màn hình Tahiti Server bên nhận 59
Hình 3.8. Màn hình thông báo bên nhận 59
Hình 3.9. Màn hình Tahiti Server bên quan sát 60

Hình 3.10. Màn hình trƣớc khi gửi tác tử cập nhật file 60
Hình 3.11. Màn hình Tahiti Server bên đƣợc quan sát 61
Hình 3.12. Màn hình bên gửi sau khi file đã cập nhật 61
Hình 3.13. Màn hình Tahiti Server bên cần tìm kiếm và chuyển file 62
Hình 3.14. Màn hình bên tìm kiếm và chuyển một file 62



-5-
DANH MỤC CÁC TỪ VIẾT TẮT

ADSK
Aglets Software Development Kit
API
Application Programming Interface
ATP
Agent Transfer Protocol
FIPA
Foundation for Intelligent Physical Agent
HTTP
Hypertext Transfer Protocol
JVM
Java Virtual Machine
MASIF
Mobile Agent System Interoperability Facility
OMG
Object Management Group
TCP/IP
Transfer Control Protocol/Internet Protocol













-6-
MỞ ĐẦU

Khi xã hội phát triển nhu cầu học tập của con ngƣời cũng tăng, ngày càng
có nhiều ngƣời ngƣời hƣớng tới một trình độ giáo dục và đào tạo cao hơn để
phục vụ cho nhu cầu công việc và nhu cầu xã hội của mình, nhiều mô hình mới
cho sự phổ biến giáo dục, đào tạo đã ra đời và phát triển nổi bật. Sự phát triển
của hệ thống phân tán, đặc biệt là với sự thâm nhập của Internet đã làm cho sự
phổ biến giáo dục và đào tạo đạt một tỷ lệ lớn hơn. Với sự bùng nổ thông tin
trên Internet, thông tin về giáo dục và đào tạo cũng tăng nhanh chóng, môi
trƣờng học trên Internet đã và đang trở thành một xu hƣớng và ngày càng thu
hút nhiều ngƣời quan tâm. Tuy nhiên bên cạnh những thuận lợi còn có những
hạn chế nhƣ hạn chế về băng thông, truy cập chậm, giới hạn về khoảng cách địa
lý, hạn chế về thời gian, ngôn ngữ, không thích hợp đối với từng cá nhân sinh
viên riêng lẻ, …
Công nghệ tác tử di động đang đƣợc thu hút sự chú ý, quan tâm của các nhà
nghiên cứu cũng nhƣ ngƣời sử dụng trong những năm gần đây, tác tử di động
chuyển xử lý đến gần nguồn dữ liệu nhờ đó có khả năng làm giảm tải mạng,
khắc phục tình trạng trễ mạng, nó thay mặt cho con ngƣời để thực hiện những

công việc thích hợp với nhu cầu của từng cá nhân vì vậy tiết kiệm đƣợc thời
gian và sức lao động của con ngƣời. Với những tính chất và khả năng đặc trƣng
của mình, tác tử di động có khả năng đáp ứng đƣợc những hạn chế của môi
trƣờng giáo dục và đào tạo trên Internet.
Từ những vấn đề trên tôi chọn đề tài nghiên cứu “Công nghệ tác tử di
động và ứng dụng trong đào tạo từ xa” với các nội dung chính là nghiên cứu về
công nghệ tác tử di động, môi trƣờng giáo dục, đào tạo trên Internet và áp dụng
công nghệ tác tử di động vào môi trƣờng này.



-7-
Luận văn đƣợc chia thành ba chƣơng:
 Chƣơng 1: Tổng quan về tác tử di động. Giới thiệu các đặc trƣng cơ bản,
các lợi ích, các chuẩn, một số hệ thống, lĩnh vực ứng dụng, các vấn đề bảo
mật và thách thức của tác tử di động.
 Chƣơng 2: Tác tử di động với Java. Trình bày các tính chất tác tử của
Java, những đặc tính của Java hỗ trợ thích hợp cho tác tử di động và giới
thiệu về nền Aglet là môi trƣờng để thực thi tác tử di động.
 Chƣơng 3: Đào tạo từ xa và ứng dụng tác tử di động trong đào tạo từ xa.
Trình bày khái quát về đào tạo từ xa, đào tạo từ xa trên Internet, những
thuận lợi và khó khăn của việc ứng dụng tác tử di động trong mô hình đào
tạo từ xa cũng nhƣ các ứng dụng của tác tử di động trong lĩnh vực này.

















-8-
CHƢƠNG I
TỔNG QUAN VỀ TÁC TỬ DI ĐỘNG

1.1. Giới thiệu
Một “tác tử” về cơ bản là thực thể hoạt động dƣới vai trò của một thực thể
hay một ngƣời khác [6]. Thông thƣờng, tác tử tham chiếu tới một con ngƣời.
Một tác tử nhƣ “một cái gì đó mà hoạt động hoặc có sức mạnh hay có quyền để
hoạt động, hoặc thi hành cho cái khác”.
Trong thế giới máy tính, tác tử thƣờng xuyên tham chiếu tới một chƣơng
trình phần mềm hoạt động dƣới vai trò của ngƣời sử dụng. Chẳng hạn, tác tử tập
hợp và phân tích thông tin, phác họa những kết luận, tạo ra các khuyến cáo và
thực hiện các giao dịch.
Tất cả các tác tử không đƣợc tạo ra giống nhau, một số tiên tiến hơn.
Những tác tử phần mềm cơ sở thể hiện những đặc trƣng chung của sự tự trị (độc
lập), sự liên tục, quan sát môi trƣờng, truyền thông và sự hợp tác với những tác
tử khác và/ hoặc ngƣời sử dụng. Những tác tử “thông minh” hơn sở hữu những
khả năng ở mức độ cao hơn nhƣ sự di động, việc ra quyết định và khả năng học.
Những tác tử thông minh có thể đƣợc mô tả đặc điểm theo ba tính chất: tính môi
giới, tính thông minh và tính di động.
1.2. Khái niệm [6]

Tác tử di động (mobile agent) là danh từ ghép giữa các từ tác tử (agent) và
di động (mobile). Một tác tử di động là một chƣơng trình có khả năng di chuyển
một cách tự trị từ nút mạng này sang nút mạng khác và thực hiện các xử lý thay
thế cho con ngƣời để đạt mục tiêu đƣợc giao phó. Khi di chuyển, các tác tử di
động đóng gói mã nguồn, dữ liệu và cả trạng thái thi hành, nhờ vậy tác tử di
động có thể dừng việc thi hành đang thực hiện tại máy này, di chuyển sang máy
khác và khôi phục lại sự thi hành tại máy đích.
1.3. Các đặc trưng của tác tử di động
1.3.1. Làm việc với vai trò một thực thể khác
Tác tử di động hoạt động với tƣ cách của một thực thể khác (ví dụ: một
ngƣời, một thực thể phần mềm) để hoàn thành một số công việc, thông thƣờng
-9-
tác tử di động đƣợc tạo bởi một thực thể khác trong suốt quá trình để hoàn thành
mục đích cuối cùng của công việc đƣợc định sẵn.
1.3.2. Sự di trú giữa các nút vật lý
Tác tử di động có thể đƣợc di trú đến các nút vật lý khác (ví dụ: các máy
tính), nó có thể tiếp tục công việc khi sự di trú hoàn thành, điều này thƣờng xảy
ra khi tác tử di động cần tƣơng tác tới thực thể phần mềm bên trong nút vật lý.

Hình 1.1. Sự di chuyển của tác tử di động giữa các máy tính.
1.3.3. Tác động trở lại với những thay đổi bên ngoài
Tác tử di động thƣờng có một bộ phận lắng nghe để nghe những thay đổi
bên ngoài, khi những thay đổi bên ngoài ảnh hƣởng đến công việc thực hiện, tác
tử di động có thể bảo vệ dữ liệu kịp thời.
1.3.4. Tính tự trị
Tác tử di động có thể điều khiển các trạng thái thực thi bên trong bằng
chính sách tự trị của mình để đạt đƣợc mục đích cuối cùng. Chính sách tự trị cho
biết làm thế nào để xử lý các thông báo bên trong. Tính tự trị cũng mang lại cho
tác tử di động những điểm trí tuệ nhân tạo đặc trƣng, tác tử di động không chỉ
quyết định cái gì thực hiện tiếp theo trong chiến lƣợc tự trị mà còn có thể thay

đổi chiến lƣợc tự trị của nó để thích hợp trong những tình huống mới gây nên
bởi những yếu tố bên ngoài. Nền của tác tử di động là một môi trƣờng đặc biệt
cho tác tử di động thực thi, đƣợc gọi là môi trƣờng tác tử di động (Mobile Agent
Environment).
Máy tính
Máy tính
Tác tử
Tác tử
Tác tử
Máy tính
Mạng
-10-
1.3.5. Khả năng cộng tác
Khả năng giao tiếp phối hợp hoạt động của các tác tử với các tác tử của môi
trƣờng khác hay với các loại đối tƣợng khác nhau trong những môi trƣờng khác nhau.
1.3.6. Tính tương tác
Khả năng của tác tử có thể thực thi trên những môi trƣờng lạ và cảm nhận
đƣợc sự thay đổi của môi trƣờng, thực hiện các công việc theo sự thay đổi của
môi trƣờng.
1.3.7. Tính di động
Khả năng di chuyển từ môi trƣờng thi hành này sang môi trƣờng thi hành
khác của một tác tử. Tính di động mƣợn rất nhiều từ quá trình cƣ trú bao gồm sự
di chuyển một quá trình từ máy này đến máy khác, mã, dữ liệu và trạng thái thực
hiện chƣơng trình của tác tử di động tất cả đƣợc chuyển đến đích khi sự di trú
xảy ra. Khả năng di động của một tác tử đƣợc phân thành hai loại:
- Di động mạnh là khả năng mà hệ thống có thể di chuyển cả mã chƣơng trình
và trạng thái thi hành của tác tử đến một môi trƣờng khác.
- Di động yếu là khả năng của hệ thống chỉ có thể di chuyển mã chƣơng trình
giữa các môi trƣờng thi hành với nhau, mã nguồn có thể mang kèm theo
một số dữ liệu khởi tạo nhƣng trạng thái thi hành thì không thể di chuyển.

1.4. Các lợi ích của tác tử di động [2]
 Tính đồng thời
Nhiều tác tử di động có thể đạt đƣợc cùng một mục đích tại cùng một thời
điểm, mỗi tác tử di động có thể làm chủ tiến trình của nó.
 Tính không đồng bộ và tự trị
Tác tử di động có thể di trú giữa các nút một cách tự trị để hoàn thành công
việc, nếu ở đây không yêu cầu sự đồng bộ thì kết quả có thể là một thông tin
phản hồi không đồng bộ, ngƣời sử dụng không cần lần theo tiến trình và chờ đợi
kết quả.
Thông thƣờng, các thiết bị di động thƣờng phụ thuộc vào các kết nối mạng
đắt tiền nhƣng rất yếu, vì thế những tác vụ cần sự kết nối liên tục giữa thiết bị di
động và mạng cố định có thể sẽ không có tính kinh tế hoặc không khả thi về mặt
kỹ thuật. Giải pháp tác tử di động giải quyết vấn đề này bằng cách nhúng tác vụ
-11-
cần thực hiện vào tác tử rồi gửi lên mạng. Sau khi đƣợc gửi đi, tác tử trở nên độc
lập, thi hành không đồng bộ và có khả năng tự trị. Các thiết bị di động sau đó có
thể kết nối trở lại để nhận tác tử.

Hình 1.2. Tác tử di động cho phép thao tác ngắt kết nối.
 Giảm tải mạng
Tác tử di động có thể tiếp tục cuộc hành trình và thực hiện công việc với
vai trò của ngƣời sử dụng ngay cả khi đã ngắt kết nối, ngƣời sử dụng không cần
kết nối Internet thƣờng xuyên. Kỹ thuật tác tử di động cho phép ngƣời sử dụng
đóng gói cuộc trao đổi, gởi đến máy đích và thực hiện xử lý dữ liệu, trao đổi cục
bộ tại đó. Nhƣ thế sẽ góp phần làm giảm những dòng dữ liệu thô trên mạng và
mạng sẽ giảm tải đáng kể. Phƣơng châm thực hiện của kỹ thuật tác tử di động là:
“mang xử lý đến nơi chứa dữ liệu hơn là mang dữ liệu về nơi xử lý”.

Hình 1.3. Tác tử di động giúp giảm tải mạng.





server




server




server




server




server




server
Gửi tác tử

Ngừng kết nối
Kết nối trở lại
và quay về
Dịch vụ
Dịch vụ

Dịch vụ

A
G
E
N
T
T
A
G
E
N
T
Ứng dụng
Ứng dụng

Ứng dụng

A
G
E
N
T
T

-12-
 Khắc phục sự trễ mạng
Việc điều khiển các hệ thống với quy mô lớn thông qua mạng sẽ phải chấp
nhận một sự chậm trễ nhất định. Nhƣng điều đó lại không đƣợc phép xảy ra
trong các hệ thống thời gian thực nhƣ điều khiển robot, quy trình sản xuất,
Khi đó, giải pháp tác tử di động tỏ ra hữu ích trong việc khắc phục độ trễ nhờ
vào việc các tác tử có thể đƣợc gửi đi từ một trung tâm điều khiển và hoạt động
cục bộ, tự trị, trực tiếp thi hành các chỉ dẫn của ngƣời điều khiển.
 Đóng gói giao thức
Khi dữ liệu đƣợc trao đổi trong hệ thống phân tán, việc truyền và nhận dữ
liệu phải đƣợc mã hóa bởi các giao thức cần thiết, các giao thức này đƣợc sở
hữu bởi mỗi máy trong hệ thống. Tuy nhiên, một khi các giao thức trở nên tiến
hóa để phù hợp với những yêu cầu mới về sự bảo mật hoặc tính hiệu quả, chúng
bắt đầu trở nên cồng kềnh, nặng nề và trở thành vấn đề nan giải. Riêng với giải
pháp tác tử di động, các tác tử có thể mang trên mình các giao thức thích hợp và
di chuyển tới các máy ở xa để thiết lập các kênh truyền nhận thông tin tƣơng ứng.
 Thực thi tốt hơn
So sánh với chiều dài và con số các thông báo đƣợc trao đổi trong ứng
dụng Client/Server truyền thống, sự thực thi đƣợc cải thiện khi tác tử di động
đƣợc chuyển mã kích thƣớc nhỏ hơn.
 Nâng cấp giao diện động
Tác tử di động có thể nâng cấp giao diện dễ dàng khi nó đang vận hành
trong khi sự tiếp cận Client/Server là không dễ thay đổi để thích nghi với những
thay đổi nhanh.
 Mạnh mẽ và dung thứ lỗi
Khả năng phản ứng năng động với các sự kiện và những thay đổi bất lợi,
tác tử di động giúp cho việc xây dựng hệ thống mạnh mẽ và chịu lỗi cao đƣợc dễ
dàng hơn.
 Thích ứng nhanh
Các tác tử có khả năng cảm nhận những thay đổi của môi trƣờng thi hành

và tác động trở lại những thay đổi ấy một cách tự động.

-13-
 Khắc phục tình trạng không thuần nhất
Việc xử lý tính toán trên mạng cơ bản là không thuần nhất vì sự đa dạng về
phần cứng và phần mềm đƣợc sử dụng. Do tác tử di động độc lập với máy tính
(phần cứng và hệ điều hành) và tầng vận chuyển, chỉ phụ thuộc vào môi trƣờng
thi hành, nên chúng cung cấp một điều kiện tối ƣu cho việc liên kết các hệ thống
không kết nối.
1.5. Các lĩnh vực ứng dụng của tác tử di động [2][10]
 Thương mại điện tử
Ứng dụng thƣơng mại điện tử cho phép ngƣời dùng thực hiện các giao dịch
trong kinh doanh trên mạng. Một giao dịch có thể bao gồm sự thƣơng lƣợng với
các thực thể ở xa và có thể đòi hỏi truy cập nguồn thông tin liên tục thay đổi. Từ
thực tế đó nảy sinh nhu cầu thay đổi hành vi của các thực thể để đạt đƣợc một
nghi thức chung trong việc thƣơng lƣợng. Hơn nữa, việc di chuyển các thành
phần của ứng dụng tiến gần đến nguồn thông tin thích hợp cho giao dịch cũng
đƣợc quan tâm. Vì thế công nghệ tác tử di động là một giải pháp thích hợp và rất
hấp dẫn cho lĩnh vực này, một sự giao dịch mua bán có thể cần đến thời gian
thực để truy cập đến các nguồn tài nguyên ở xa. Các tác tử khác nhau sẽ có các
mục đích khác nhau, nó sẽ thực thi và áp dụng các chiến lƣợc khác nhau để hoàn
thành mục đích đó. Chúng ta hình dung các tác tử là hiện thân các ý định của
ngƣời tạo ra nó, hoạt động và thƣơng lƣợng dƣới vai trò của họ [3].
 Tìm kiếm thông tin trong môi trường phân tán
Trong trƣờng hợp có nhu cầu truy vấn phức tạp, chuyên biệt và liên quan
đến nhiều nguồn dữ liệu phân tán, không đồng nhất, việc cử các tác tử di động di
chuyển đến các nguồn tin để khai thác tại chỗ và cuối cùng là quay về với những
thông tin cần thiết sẽ cho phép giảm tải mạng và giải quyết tốt hơn bài toán
tƣơng thích. Tác tử di động cũng có thể thực hiện những sự tìm kiếm mở rộng
mà không cần phải có sự thi hành máy tính của ngƣời tạo ra nó.

 Quan sát và thông báo
Đây là một trong những ứng dụng kinh điển của tác tử di động, nó làm nổi
bật tính không đồng bộ tự nhiên của tác tử di động, một tác tử có thể quan sát
một nguồn thông tin không cần phụ thuộc vào vị trí với nguồn của nó. Tác tử có
thể đƣợc gửi đi để đợi chắc chắn các loại thông tin trở nên có hiệu lực.
-14-
 Quản trị mạng và hệ thống
Đối với những hệ thống mạng lớn, việc chẩn đoán lỗi, duy trì sự ổn định
của hệ thống là các công việc rất khó khăn. Việc ứng dụng tác tử di động vào
việc quản trị mạng sẽ giúp cho các công việc chẩn đoán lỗi và duy trì từ xa sự ổn
định của hệ thống đƣợc dễ dàng hơn.
 Các ứng dụng dòng công việc và phần mềm nhóm
Dòng công việc dùng để hỗ trợ dòng thông tin giữa những ngƣời hợp tác
với nhau, tác tử di động đặc biệt hữu dụng ở đây. Ngoài sự di động, tác tử cung
cấp một mức của tính tự trị đối với các hạng mục dòng công việc, các hạng mục
dòng công việc tự nó đủ cho tác tử thông tin và hành vi cần để di chuyển qua các
tổ chức độc lập của bất kỳ các ứng dụng đặc thù.
 Hỗ trợ cá nhân
Khả năng của tác tử di động để thực thi trên những máy chủ ở xa làm nó
thích hợp nhƣ một ngƣời trợ lý có khả năng thực hiện các tác vụ trên mạng dƣới
vai trò của ngƣời tạo ra nó. Ví dụ, để lập thời khoá biểu cho cuộc gặp mặt với
một số ngƣời khác, ngƣời sử dụng có thể gửi một tác tử di động để tƣơng tác với
các tác tử của những ngƣời đƣợc mời đến để họp mặt. Tác tử có thể thƣơng
lƣợng để thiết lập thời gian gặp mặt.
 Phổ biến thông tin
Các tác tử có thể phổ biến tin tức và cập nhật phần mềm tự động cho các
nhà sản xuất. Các tác tử mang các thành phần phần mềm cũng nhƣ các thủ tục
cần thiết đến các máy cá nhân của khách hàng và tự cập nhật phần mềm trên
máy đó. Mô hình này giúp cho nhà sản xuất chủ động hơn trong việc phục vụ
khách hàng để bảo đảm chất lƣợng dịch vụ của mình. Mặc khác, các ứng dụng

thuộc loại này cũng tỏ ra hiệu quả đối với các mạng cục bộ hay các chƣơng trình
quản lý qui trình hoạt động, sản xuất, … để giúp ngƣời quản trị giám sát các hệ
thống con.
 Môi giới an toàn
Một ứng dụng thú vị của các tác tử di động là sự cộng tác, nhƣng không
phải tất cả các cộng tác viên đều đƣợc tin cậy. Trong trƣờng hợp này, các nhóm
khác nhau có thể để cho các tác tử di động của họ gặp nhau trên host an toàn
đƣợc sự đồng ý lẫn nhau, ở đây không có sự viếng thăm của các tác tử nguy hiểm .
-15-
 Xử lý song song
Vì các tác tử di động có thể tạo ra nhiều bản sao của nó trên mạng, một ứng
dụng đầy tiềm năng của tác tử di động là quản trị các tác vụ song song. Một ứng
dụng đòi hỏi nhiều tài nguyên bộ xử lý có thể đƣợc phân bố cho các tác tử di
động mang đi thực hiện trên nhiều máy tính khác nhau để tận dụng các tài
nguyên rảnh rỗi và cân bằng tải.
 Hỗ trợ các thiết bị di động
Do đặc điểm tài nguyên hạn chế và không kết nối thƣờng xuyên, việc xây
dựng các ứng dụng dựa trên tác tử di động với khả năng di chuyển đến các máy
tính có cấu hình mạnh hơn để hoạt động (truy vấn cơ sở dữ liệu, tìm tin, …) rồi
trả kết quả về sẽ là một giải pháp tốt cho ngƣời dùng các thiết bị di động.
 Các dịch vụ truyền thông mạng
Hỗ trợ và quản lý các dịch vụ truyền thông cao cấp đƣợc mô tả bởi việc
định lại cấu hình của mạng động và thực hiện theo yêu cầu ngƣời sử dụng. Dựa
theo kích thƣớc vật lý của những mạng này và các yêu cầu nghiêm ngặt mà có
thể vận hành với công nghệ tác tử di động để tạo ra sự kết dính giữ cho hệ thống
mềm dẻo và hiệu quả.
1.6. Các chuẩn cho tác tử di động
1.6.1. FIPA (Foundation for Intelligent Physical Agent )
FIPA đặc tả giao diện giữa các thành phần khác nhau trong một môi trƣờng
mà các tác tử có thể tƣơng tác nhƣ con ngƣời hay các tác tử khác, các phần mềm

thông thƣờng, FIPA đƣa ra các đặc tả có tính chuẩn cho phép các tác tử tƣơng
tác bên ngoài, các hệ thống con khác tuân thủ theo FIPA và đặc tả thông tin của
các ứng dụng nhƣ là một chỉ dẫn công nghệ. Các đặc tả FIPA bao gồm:
- Quản trị tác tử: tập trung vào các vấn đề quản trị hệ thống cơ bản, quản trị
an toàn tác tử và quản trị tác tử hỗ trợ cho sự di chuyển.
- Truyền thông tác tử: định nghĩa một ngôn ngữ truyền thông tác tử, tƣơng
tác tác tử với con ngƣời và với các dịch vụ cơ bản.
Tích hợp phần mềm tác tử và các ứng dụng tham chiếu: cung cấp các hỗ trợ
cá nhân và giao tiếp trực quan, cung cấp sự hiểu biết kỹ lƣỡng hơn về cài đặt và
đặc tả của FIPA.
-16-
1.6.2. OMG MASIF (Mobile Agent Standardization)
Đƣợc phát triển từ các công ty Crystaliz, General Magic Inc., GMD Fokus,
tập đoàn IBM và Open Group. MASIF đƣa ra những cái chung giữa các hệ
thống tác tử nhƣng không phải giữa ứng dụng và hệ thống của các tác tử, mặc dù
hình thức dƣờng nhƣ có liên quan nhiều hơn cho việc phát triển các ứng dụng,
sau này nó cho phép các tác tử có thể đi qua nhiều host trong một môi trƣờng
mở. MASIF đã chuẩn hoá các chức năng sau đây:
- Quản trị tác tử: chức năng này cho phép quản trị các tác tử theo các hoạt
động chuẩn cho tất cả các hệ thống khác nhau. Các hoạt động ở đây bao
gồm tạo một tác tử, tạm dừng một tác tử, tiếp tục thực hiện và kết thúc hoạt
động của một tác tử.
- Truyền tác tử: trong các hệ thống tác tử di động, các tác tử có thể di chuyển
từ hệ thống này sang hệ thống khác (có thể chúng không cùng kiểu) dựa
trên một nền tảng hạ tầng cơ sở chung. MASIF định nghĩa các phƣơng thức
để nhận tác tử và gửi chúng đi.
- Tên hệ thống các tác tử và tên tác tử: có cú pháp và ngữ nghĩa chuẩn của
tên các tác tử và tên hệ thống các tác tử cho phép các hệ thống và các tác tử
xác định đƣợc định danh của nhau. MASIF hỗ trợ việc lƣu lại vết, vị trí các
tác tử trên các hệ thống tác tử khác nhau. Chúng đƣợc đăng ký tại

MAFFinder thông qua tên tác tử và tên hệ thống các tác tử.
- Cú pháp định vị và loại hệ thống tác tử: việc truyền tác tử là không thể
thực hiện đƣợc trừ khi loại hệ thống tác tử có hỗ trợ tác tử. Cú pháp định vị
là một tiêu chuẩn mà nhờ nó các hệ thống tác tử có thể xác định đƣợc vị trí
của nhau.
1.7. Một số hệ thống tác tử di động phổ biến [10]
Nền của tác tử di động là một môi trƣờng đặc biệt cho sự thực thi của tác tử
di động cũng đƣợc gọi là môi trƣờng tác tử di động. Nhìn chung nền bao gồm
một số mô hình cơ bản sau:
- Mô hình tác tử: mô hình này đƣa ra cấu trúc bên trong của tác tử di động
trong nền của nó và chỉ ra cách xây dựng một tác tử di động có thể hoạt
động trong vai trò của một thực thể khác.
- Mô hình tự trị: mô hình này chỉ ra cách xử lý các thông báo bên trong để
-17-
quản lý tác tử di động trong nền của nó.
- Mô hình di trú: mô hình này trình bày một tác tử di động di chuyển đến các
nền khác nhau trong những nút vật lý khác nhau nhƣ thế nào.
- Mô hình truyền thông: mô hình truyền thông quan tâm đến tác tử di động
trong một nền truyền thông với thế giới bên ngoài nhƣ thế nào.
- Mô hình định danh và định vị: mỗi tác tử di động trong một nền phải có
một tên duy nhất để đƣợc định danh. Mô hình này quan tâm đến sự định
danh của tác tử di động nhƣ thế nào và làm thế nào để định vị nó dƣới dạng
định danh.
- Mô hình an toàn: mô hình này không chỉ bảo vệ tác tử di động từ nền mà
còn bảo vệ nó từ các tác tử di động khác.
- Mô hình định vị dịch vụ: một số tác tử di động có thể cung cấp một số dịch
vụ trên Internet. Mô hình này cung cấp sự định vị và giao diện của các dịch vụ.
Trong những năm gần đây nhiều nền của tác tử di động đƣợc xây dựng
nhƣng hầu hết nó đƣợc thực thi nhƣ các ứng dụng của Java. Java đã tạo ra nhiều
hệ thống tác tử di động, nhiều hệ thống vẫn còn đang đƣợc phát triển và hầu hết

có giá trị cho sự ƣớc lƣợng trên Web. Ở đây đề cập đến một số hệ thống tác tử di
động đang đƣợc chú ý:
1.7.1. Odyssey (General Magic) (www.genmagic.com/~agents)
General Magic Inc đã phát triển và tạo ra hệ thống tác tử di động thƣơng
mại đầu tiên đƣợc gọi là Telescript. Đƣợc dựa vào một ngôn ngữ riêng và kiến
trúc của mạng, Telescript có tuổi thọ ngắn. Trong việc đáp ứng tính phổ biến của
Internet và sau này là thành công của ngôn ngữ Java, General Magic quyết định
bổ sung mô hình tác tử di động trong Odyssey dựa trên Java. Hệ thống này thực
thi hiệu quả các khái niệm Telescript dƣới hình thức các lớp của Java. Kết quả là
một thƣ viện class Java cho phép những ngƣời phát triển tạo ra các ứng dụng tác
tử di động sở hữu bởi chính họ.
1.7.2. Hệ thống tác tử TCL (www.cs.dartmouth.edu/~agent)
Đây là một hệ thống tác tử di động trong đó các tác tử có thể đƣợc viết
trong Tcl, hệ thống tác tử Tcl do trƣờng Dartmouth tạo ra có dịch vụ định hƣớng
và truyền thông rộng lớn, có các phƣơng thức bảo mật, các công cụ gỡ lỗi và
theo dõi kiểm tra. Các thành phần chính của hệ thống tác tử Tcl là một dịch vụ
-18-
có thể chạy trên mỗi máy và điều đó cho phép toàn bộ trạng thái thực hiện bao
gồm các biến cục bộ và các con trỏ lệnh để di chuyển. Khi một tác tử muốn di
trú đến một máy mới, nó gọi một chức năng riêng lẻ, agent_jump, tự động bắt
giữ trại thái đầy đủ của tác tử và gửi thông tin trạng thái này đến Server trên máy
nơi đến. Server nơi đến bắt đầu một sự thực hiện Tcl, tải thông tin trạng thái vào
môi trƣờng thực hiện này và khởi tạo lại tác tử chính xác tại điểm mà nó bỏ đi.
1.7.3. Voyager (ObjectSpace) (www.objectspace.com/voyager)
Voyager là một môi trƣờng thƣơng mại hỗ trợ phát triển các ứng dụng tác
tử đƣợc hãng Object Space phát triển từ giữa năm 1996. Voyager đã trải qua
nhiều lần nâng cấp và thay đổi từ phiên bản 1.0 cho đến bây giờ là phiên bản
4.5. Tháng 03/2002 sản phẩm Voyager đƣợc nhƣợng lại cho Recursion
Software, một công ty chuyên về các sản phẩm viết trên C++ và Java cho việc
phát triển Voyager sau này. Các phiên bản từ 1.0 đến 3.3 Voyager đƣợc phân

phối cho các nhà phát triển nhƣ một phần mềm miễn phí.
Voyager sử dụng ngôn ngữ lập trình Java với cú pháp chuẩn để tạo dựng
các đối tƣợng ở xa một cách rất dễ dàng, cho phép các đối tƣợng này trao đổi
thông điệp với nhau và di chuyển các đối tƣợng giữa các máy tính có hỗ trợ môi
trƣờng Voyager. Voyager hỗ trợ mạnh về tính di động với khả năng mang toàn
bộ mã chƣơng trình và dữ liệu di chuyển từ máy ảo Java này sang máy ảo Java
khác nếu các máy ảo có hỗ trợ Voyager. Trạng thái hoạt động của tác tử cũng sẽ
đƣợc bảo toàn và tiếp tục thực thi tại nơi tác tử đến. Một trong những đặc điểm
nổi trội khác của Voyager là tính phổ quát. Các chƣơng trình viết trong Voyager
có thể trao đổi thông tin hai chiều với các chƣơng trình viết bằng SOAP,
CORBA, RMI và DCOM. Các dạng thông tin đƣợc trao đổi có thể là các lời gọi
hàm từ xa, các dịch vụ định danh, dịch vụ thƣ mục. Voyager đƣợc xem là một
cửa ngõ, một cầu nối làm cho các chƣơng trình theo chuẩn khác trở nên liên
thông với nhau. Hơn nữa, tất cả các chƣơng trình và đối tƣợng có thể đƣợc tổ
chức thành một không gian chung, nhờ vậy việc liên lạc sẽ trở thành một – nhiều
một cách tự động. Thế mạnh thật sự của Voyager nằm ở sự đơn giản và dễ dùng.
Sự “trong suốt” hay cách mà Voyager che giấu các kỹ thuật lập trình phân tán
phức tạp đã làm cho việc xây dựng các ứng dụng tác tử di động trở nên dễ dàng
hơn rất nhiều. Việc tích hợp các công nghệ mới và các chuẩn mới vào cùng một
sản phẩm tạo cho Voyager sự hấp dẫn rất riêng biệt.
-19-
1.7.4. Aglet SDK (IBM) (www.trl.ibm.co.jp/aglets)
Aglet đƣợc xây dựng và phát triển bởi D. B. Lange và IBM Tokyo
Research Laboratory. Aglet là hình ảnh của mô hình applet trong Java, mục đích
là để mang hƣơng vị của tính di động vào applet, Aglet đƣợc ghép từ 2 từ agent
và applet.
Aglet là một hệ thống Java Mobile Agent hỗ trợ các khái niệm thi hành tự
trị và định tuyến động trên lộ trình của nó, có thể xem Aglet nhƣ là một khái
quát hóa và mở rộng của applet và servlet. Aglet Server là chƣơng trình cung
cấp một môi trƣờng thi hành và một máy ảo Java cho Aglet hoạt động. Ngoài ra,

Aglet Server cũng sử dụng một trình quản lý để tiếp nhận và kiểm soát Aglet
một cách an toàn.
Aglet API là bộ thƣ viện bao gồm các hàm chuyên biệt dành cho việc phát
triển tác tử. Nhờ vào Aglet API, khả năng nổi tiếng của Java là “viết một lần, thi
hành bất cứ đâu” đƣợc viết lại là “viết một lần, lưu hành bất cứ đâu”. Một khi
Aglet đƣợc tạo ra, nó sẽ chạy trên mọi máy có hỗ trợ Aglet API mà không quan
tâm đến nguồn gốc hệ điều hành và phần cứng bên dƣới hay nguồn gốc cụ thể
của Aglet API đƣợc cài trên máy đang chạy. Trong mô hình đối tƣợng Aglet,
một tác tử di động là một đối tƣợng di động có luồng kiểm soát riêng của nó,
làm việc theo sự kiện và liên lạc với các tác tử khác bằng cách truyền thông
điệp. Aglet có một cơ chế định danh duy nhất và toàn cục dựa trên URL, Aglet
hỗ trợ cơ chế di động yếu, các Aglet giao tiếp với nhau một cách đồng nhất và
độc lập với vị trí lƣu trú thông qua đối tƣợng Proxy. Suốt chu kỳ sống, các Aglet
sẵn sàng bắt những sự kiện (sao chép, di động, tính bền bỉ) phát sinh trong môi
trƣờng để có phản ứng thích hợp. Tác tử có thể giao tiếp đồng bộ hoặc không
đồng bộ thông qua các loại thông điệp: đồng bộ, một chiều, hay sự trả lời trong
tƣơng lai. Aglet sử dụng giao thức chuyển giao tác tử (ATP) cho việc di chuyển
và giao tiếp, sử dụng 2 loại mẫu thiết kế chính là chủ-tớ (Master-Slave) và hành
trình cho việc di chuyển của các tác tử. Aglet là một trong những nền đƣợc sử
dụng nhiều nhất để phát triển các hệ thống tác tử di động. Một số đề án thực
hiện với Aglet có thể kể đến là Tabican () - chợ điện tử
chuyên bán vé máy bay và tour du lịch trọn gói, Cps720 (các đề tài trí tuệ nhân
tạo với tác tử) tại đại học Ryerson Mỹ, …

-20-
1.7.5. ARA (www.uni-kl.de/AG-Nehmer/Ara)
Ara của trƣờng đại học Kaiserslautern dựa trên cơ sở Tcl, là một nền tảng
cho tính di động và thực thi an toàn của tác tử di động trong mạng không đồng
nhất, các dự án nghiên cứu đƣợc quan tâm chủ yếu đối với hệ thống hỗ trợ cho
các tác tử di động tổng quát về vấn đề thực thi di động, an toàn và các mức ứng

dụng đặc trƣng của các tác tử nhƣ những mẫu cộng tác tác tử, hành vi thông
minh và mô hình ngƣời sử dụng.
1.7.6. TACOMA (www.cs.uit.no/DOS/Tacoma)
Dự án TACOMA tập trung vào hệ điều hành hỗ trợ cho các tác tử và làm
thế nào để các tác tử có thể đƣợc sử dụng để giải quyết những vấn đề truyền
thống đƣợc tạo ra bởi sự vận hành của hệ thống. Hệ thống TACOMA đƣợc lấy
cơ sở từ UNIX và TCP, hệ thống hỗ trợ các tác tử viết trong C, Tcl/Tk, Perl,
Python và Scheme (Elk). Hệ thống tự nó đƣợc thực thi trong C.
1.7.7. Concordia
Của Mitsubishi, là khuôn khổ cho sự phát triển và quản lý của các ứng dụng
tác tử di động dành cho bất kỳ hệ thống nào sử dụng Java, nó đƣợc kết hợp với
nhau để cung cấp một môi trƣờng hoàn thiện cho các hệ thống phân tán. Một hệ
thống Concordia đơn giản nhất gồm các Java VM, một Server và một tập các tác tử.
1.7.8. Mole
Mole là hệ thống tác tử di động đƣợc xây dựng với ngôn ngữ Java tại đại
học Stuttgart (CHLB Đức). Phiên bản đầu tiên (Release 1.0) đã hoàn thành vào
năm 1995, năm 1997 phiên bản Release 2.0 đƣợc hoàn thành, bản Release 3.0
đƣợc hoàn tất vào năm 1998 và đề án đã kết thúc với kết quả là môi trƣờng ổn
định để xây dựng ứng dụng theo mô hình tác tử trên các hệ phân tán.
Đƣợc xây dựng trên Java, Mole có khả năng thực thi trên tất cả các môi
trƣờng có hỗ trợ JDK1.1.x trở về sau, sử dụng giao thức TCP/IP trong quá trình
giao tiếp, Mole hỗ trợ di chuyển di trú yếu. Để thực hiện giao tiếp giữa các tác
tử, Mole sử dụng các cơ chế truyền thông điệp, gọi hàm từ xa RPCs. Ngôn ngữ
giao tiếp giữa các tác tử đƣợc Mole hỗ trợ là KQML, cho phép đa tiểu trình/tác
tử, quản lí tài nguyên và lập lịch các tiểu trình trong hệ thống thông qua bộ lập
lịch trung tâm. Khả năng bảo mật của Mole đƣợc đánh giá khá tốt trong các hệ
thống tác tử, Mole tuân theo mô hình bảo mật sandbox của Java. Tác tử trong
-21-
hệ thống đƣợc chia làm hai loại: tác tử ngƣời dùng và tác tử hệ thống, tác tử
ngƣời dùng là những tác tử di động đƣợc kích hoạt bởi ngƣời dùng và không thể

truy cập trực tiếp tài nguyên hệ thống. Ngƣợc lại, tác tử hệ thống (tác tử phục
vụ) đƣợc khởi động bởi ngƣời quản trị không có tính di động và đƣợc phép truy
cập tài nguyên hệ thống. Môi trƣờng Mole phù hợp cho phát triển những ứng
dụng trong các lĩnh vực truyền thông, hệ thống thông tin điện tử.
1.8. Các vấn đề bảo mật trong mô hình tác tử di động
Vấn đề bảo mật trong tác tử di động là một vấn đề quan trọng và đã có
nhiều nhà nghiên cứu về vấn đề này để tìm một giải pháp thích hợp. Một trong
những tính chất quan trọng nhất của tác tử di động là tính di động, nhờ tính di
động mà nó có thể di chuyển một cách tự trị qua mạng. Tuy nhiên phải cẩn thận
vì tính chất này làm cho tác tử di động đƣợc khởi chạy bởi các tác tử di động
khác để làm hại các nền.
 Sự truy cập trái phép
Các tác tử di động gây hại có thể truy cập vào các dịch vụ và các nguồn tài
nguyên của nền mà không có sự cho phép hoàn toàn. Để ngăn cản sự tấn công
này, một nền tác tử di động phải có một chính sách an toàn, bảo mật, chỉ rõ các
quy tắc truy cập áp dụng cho các tác tử di động khác nhau và một phƣơng thức
làm cho các chính sách này có hiệu lực.
 Sự giả mạo
Trong sự tấn công này, một tác tử di động nguy hiểm mang một số định
danh của một tác tử di động khác để đƣợc truy cập vào các dịch vụ và các nguồn
tài nguyên hoặc đơn giản là để gây hại hoặc làm cho nền bị nguy hiểm nghiêm
trọng. Cũng tƣơng tự nhƣ vậy, một nền có thể tự cho một số định danh của nền
khác để có thể truy cập đến dữ liệu của tác tử di động. Trong cả hai trƣờng hợp
nói trên, tác tử di động hoặc nền nguy hiểm sẽ không nhận bất kỳ một trách
nhiệm gì cho các hành động gây hại của nó. Thay vào đó các tác tử hoặc các nền
tin cậy mà định danh của nó bị lạm dụng sẽ chịu trách nhiệm về vấn đề này.
 Sự từ chối phục vụ
Một nền nguy hiểm có thể gây ra một sự tổn hại đến các tác tử di động
thăm nó bằng cách bỏ qua những yêu cầu của tác tử về các dịch vụ và nguồn tài
nguyên có giá trị trên nền đó, bằng việc kết thúc các tác tử di động mà không có

-22-
một sự thông báo hoặc bằng việc gán các tác vụ liên tiếp cho các tác tử đến mức
nó sẽ không bao giờ đến đƣợc đích của nó, cũng giống nhƣ vậy, một tác tử nguy
hiểm có thể phá hủy các nguồn tài nguyên của một nền nhƣ không gian lƣu trữ
hoặc thời gian xử lý, xóa đi các tập tin hoặc các sự kiện quan trọng trên các nội
dung của đĩa cứng, vì vậy gây ra sự tổn hại đến nền và tạo ra một sự từ chối
phục vụ tấn công trở lại các tác tử di động khác đến thăm nó.
 Sự tấn công quấy rầy
Ví dụ của sự tấn công này bao gồm sự mở nhiều cửa sổ trên một máy tính
hoặc gây ra tiếng bip liên tục. Những sự tấn công nhƣ vậy có thể không gây ra
vấn đề nghiêm trọng đối với nền tuy nhiên nó gây ra sự phiền phức và cũng cần
phải đƣợc ngăn chặn.
 Nghe trộm
Trong sự tấn công này một nền nguy hiểm quan sát các hành vi của một tác
tử di động để lấy các thông tin. Sự tấn công này thƣờng xảy ra khi mã và dữ liệu
tác tử di động đƣợc mã hóa. Sự nghe trộm này có thể bao gồm sự nhận dạng
thực thể mà tác tử di động liên lạc với nó và các loại dịch vụ đƣợc yêu cầu bởi
tác tử di động.
 Sự thay đổi
Trong sự tấn công này một nền nguy hiểm sửa đổi các thông tin của tác tử
di động, bằng cách thực hiện việc chèn, xóa, thay đổi mã, dữ liệu hoặc trạng thái
thi hành của tác tử di động. Sửa đổi mã và trạng thái thi hành của tác tử di động
có thể gây ra các hoạt động làm tổn hại tác tử di động trên các nền khác trong đó
có cả nền chủ nhà của tác tử.
Các mô hình tác tử di động cần được thỏa mãn các yêu cầu bảo mật sau:
- Sự cẩn mật: rất quan trọng để chắc chắn rằng các thông tin đƣợc mang theo
bởi các tác tử di động hoặc đƣợc chứa trong nền là sử dụng chỉ khi đƣợc
cho phép giữa các thành phần. Đây cũng là trƣờng hợp cho sự kết nối giữa
các thành phần trong mô hình tác tử di động.
- Tính toàn vẹn: cần thiết để bảo vệ mã, trạng thái và dữ liệu của tác tử di

động từ việc sửa đổi bởi các thành phần không có tính xác thực. Điều này
có thể thực hiện bằng việc ngăn chặn hoặc xác định các sự sửa đổi không
xác thực.
-23-
- Tính hiệu lực: các nền điển hình đối mặt với một yêu cầu to lớn cho sự
phục vụ và dữ liệu. Trong trƣờng hợp một nền không thể đạt đƣợc các yêu
cầu cho tác tử di động, nó nên thông báo, thêm vào đó, một nền phải có thể
đáp ứng một mức chắc chắn của sự dung thứ lỗi và phục hồi lỗi từ các lỗi
không đƣợc dự báo trƣớc của các phần mềm và phần cứng.
- Tính trách nhiệm: các nền cần đƣợc thiết lập những sổ kiểm soát để theo
dõi tất cả các hoạt động của tác tử di động để làm cho nó có trách nhiệm
đối với những hoạt động của nó, các sổ kiểm soát này cũng cần thiết khi
nền cần hồi phục từ sự thâm nhập nguy hiểm hoặc một lỗi hệ thống.
- Tình trạng nặc danh: các nền cần nắm giữ dấu vết các hoạt động của tác tử
di động với mục đích trách nhiệm. Tuy nhiên các nền cũng phải có sự cân
xứng giữa nhu cầu của nó cho sổ kiểm soát và nhu cầu cho tác tử di động
để đảm bảo các hành động có tính riêng tƣ của nó.
1.9. Tác tử di động và một số thách thức
Khi xây dựng các tác tử di động chúng ta phải giải quyết các vấn đề sau:
 Sự truyền tải
Một tác tử di chuyển từ host này đến host khác nhƣ thế nào, nó đóng gói và
di chuyển nhƣ thế nào?
 Tính xác thực
Làm thế nào để biết chắc rằng tác tử làm đúng những điều mà nó nói và
thực hiện những điều mà nó thực hiện, làm thế nào để ta biết tác tử đƣợc di
chuyển trên những mạng khác nhau mà không có sự ảnh hƣởng của virus?
 Tính bí mật
Làm thế nào để biết chắc rằng tác tử duy trì sự riêng tƣ của chúng ta, làm
thế nào để chắc chắn rằng một ai đó không đọc các tác tử cá nhân của chúng ta
và thực hiện nó cho chính mục đích của anh ta. Làm thế nào để chắc rằng tác tử

không bị giết và các hạng mục của nó không bị kết xuất.
 Tính bảo mật
Làm thế nào để bảo vệ sự tấn công của virus, để ngăn chặn các tác tử vào
và thực thi một hóa đơn quá đắt với vai trò của chúng ta.
-24-
 Những vấn đề thi hành
Điều gì sẽ xảy ra khi có hàng trăm, hàng nghìn, hàng triệu tác tử hoạt động
trên mạng WAN.
 Các dịch vụ thao tác giữa các thành phần, truyền thông, môi giới
Làm thế nào để cung cấp loại dịch vụ môi giới hoặc trực tiếp phục vụ cho
các phƣơng tiện hoặc các dịch vụ đặc biệt. Làm thế nào để thực thi một tác tử
viết trong một ngôn ngữ tác tử trên một phƣơng tiện viết tác tử trong một ngôn
ngữ khác? Làm thế nào để xuất bản, đăng ký dịch vụ hoặc hỗ trợ sự quảng bá
cần thiết cho một số sự tiếp cận phối hợp khác.
1.10. Các yêu cầu cơ bản của một hệ thống tác tử di động
Có nhiều yêu cầu về mặt công nghệ để cài đặt một hệ tác tử di động trong
đó các yêu cầu sau đƣợc xem là các yêu cầu cơ bản cho một hệ tác tử di động:
 Yêu cầu về mặt hệ thống
Hệ thống cần phải thiết kế, cài đặt và triển khai không chỉ cho phép các tác
tử hoạt động mà hệ thống cũng cần phải hoạt động một cách an toàn.
Một hệ thống tác tử di động bao gồm bốn thành phần cơ bản sau:
- Host: máy tính và hệ điều hành.
- Môi trƣờng tính toán: một hệ thống runtime.
- Hệ thống đối tƣợng di động: một sự tính toán đồng thời thực hiện trên
môi trƣờng tính toán.
- Mạng hoặc một hệ thống truyền thông nhỏ: kết nối nội bộ các môi
trƣờng tính toán định vị trên những host khác nhau.
 An ninh
Đây là vấn đề quan trọng cho sự phát triển một hệ thống tác tử di động. Hệ
thống đƣợc coi là an ninh khi nó đảm bảo rằng các tác tử không làm hại đến môi

trƣờng hoạt động cũng nhƣ các tác tử khác.
Các vấn đề bảo mật bao gồm việc bảo vệ môi trƣờng hoạt động tránh khỏi
những tác tử gây hại, bảo vệ các tác tử di động tránh khỏi những môi trƣờng gây
hại, bảo vệ tác tử khỏi sự gây hại của tác tử khác, bảo vệ môi trƣờng hoạt động
của tác tử khỏi sự gây hại của một môi trƣờng khác, bảo vệ vấn đề truyền thông
-25-
giữa các môi trƣờng hoạt động của các tác tử, …
Các kỹ thuật an ninh truyền thống hiện nay thƣờng đƣợc sử dụng trong các
hệ thống phân tán tĩnh truyền thống, dựa trên các kỹ thuật mật mã đƣợc dùng để
xác thực, cấp quyền, điều khiển truy cập. Chúng cũng đƣợc sử dụng nhƣ là một
phần của các giải pháp để bảo vệ môi trƣờng hoạt động của các tác tử khỏi các
tác tử gây hại hay môi trƣờng hoạt động khác. Nhƣng chƣa có giải pháp nào
thõa mãn dùng để ngăn chặn một môi trƣờng hoạt động thù địch gây hại cho các
tác tử. Các môi trƣờng hoạt động thù địch có thể tấn công bằng cách thực hiện
các đoạn mã của các tác tử không tin cậy, từ chối truyền tác tử, giả mạo mã và
dữ liệu của tác tử, nghe lén trên kênh truyền thông giữa các tác tử. Vấn đề ngăn
cản một cách hiệu quả các site gây hại can thiệp vào một tác tử là chƣa thực hiện
đƣợc vì các site cần truy cập vào tất cả các mã bên trong của một tác tử để thi
hành nó. Giải pháp hiện tại chỉ là cung cấp cảnh báo các tấn công có thể xảy ra.
 Khả năng di chuyển được
Đây là điểm khác biệt chính của hệ thống tác tử di động và các hệ thống
khác. Các mạng hiện nay hầu hết là không đồng nhất nên các hệ thống tác tử di
động phải xử lý và chuyển mã cùng với dữ liệu để thực hiện trên nhiều nền khác
nhau. Khi một tác tử đến một máy chủ thì máy chủ cần có khả năng thi hành nó.
Để cho ngƣời lập trình có đƣợc độ linh hoạt cao trong việc thiết kế các tác tử thì
sự di chuyển của tác tử nên trong suốt đối với ngƣời sử dụng và thực hiện bằng
một lệnh. Lệnh này phải bao gói đƣợc trạng thái của tác tử và đóng gói tác tử
theo định dạng phù hợp với môi trƣờng mà nó di chuyển.
 Truyền thông
Mô hình truyền thông là cần thiết để các tác tử có thể liên lạc với nhau và

với các hệ thống điều khiển tác tử. Hầu hết các hệ thống tác tử hiện nay đƣợc
xây dựng trên nền Java. Các hệ thống thực hiện việc truyền thông bằng các sự
kiện phân tán hay là cơ chế truyền thông điệp sử dụng các đối tƣợng Java.
Các tác tử phải có khả năng giao tiếp với nhau thông qua một ngôn ngữ
chung. Ngôn ngữ này có tác dụng truyền đạt ý nghĩa và biểu diễn thông tin theo
một khuông dạng chuẩn. KQML (Knowledge Query and Manipulation
Language) và KIF (Knowledge Interchange Format) là các ngôn ngữ thƣờng
đƣợc sử dụng trong truyền thông [12].

×