2009-11-07 9 views
7

chúng tôi đang thiết kế một dự án để nghe thoại giữa các bộ điều khiển sân bay và phi công để ngăn chặn các cuộc xâm nhập đường băng (ví dụ: một máy bay đang cất cánh đang băng qua đường băng). Giáo sư của chúng tôi muốn chúng tôi sử dụng Jena cho cơ sở kiến ​​thức (hoặc bất kỳ điều gì khác nhưng nó phải là một số loại công cụ dựa trên quy tắc). Suy luận không phải là điều chính trong Jena và không có nhiều tài liệu và ví dụ về điều này. Vì vậy, chúng tôi cần một công cụ có thể nhận được tin nhắn từ phi công như đầu vào và đầu ra rủi ro có thể có của sự xâm nhập hoặc bất kỳ lỗi nào khác trong giao thức tin nhắn. Sẽ dễ dàng để viết các quy tắc và phải dễ dàng cung cấp công cụ với dữ liệu thời gian thực.Cơ chế kiến ​​thức dựa trên cơ sở tri thức để lựa chọn hệ thống phòng chống xâm nhập đường bộ thời gian thực

tôi hình ảnh nó một cái gì đó như thế này:

  1. Một phi công gửi một thông điệp rằng ông đất trên một số đường băng, hệ thống nhớ rằng đường băng đang bận và không ai nên vượt qua nó
  2. Nếu ai đó được đưa ra một chỉ dẫn để băng qua đường băng này, động cơ sẽ kích hoạt quy tắc rằng có điều gì đó sai
  3. Khi phi công gửi một thông báo rằng anh đã rời khỏi đường băng và đi đến cổng, hệ thống sẽ xóa đường băng và cho phép các máy bay khác sử dụng nó.

Vì vậy, Jena, hoặc prolog hoặc bất kỳ công cụ quy tắc nào khác phù hợp với điều này? Tôi có nghĩa là nó là phù hợp, nhưng chúng ta thực sự cần phải sử dụng nó? Tôi hỏi giáo sư. nếu chúng ta chỉ có thể giữ trạng thái của đường băng và sử dụng một số kiểm tra đơn giản dựa trên các thông điệp chúng tôi nhận được và anh ấy nói rằng nó không thể mở rộng và chúng tôi cần cơ sở tri thức. Ai đó có thể cho tôi bất kỳ lời khuyên nào về cách tiếp cận để sử dụng cho hệ thống này? Nếu bạn đề nghị k.b., thì chúng ta nên sử dụng cái nào? Dự án được viết bằng java.

Cảm ơn bạn.

Trả lời

1

Bạn có thể sử dụng jena cho việc này, nhưng chủ yếu là bộ công cụ rdf. Nếu bạn chưa sử dụng RDF, hoặc quen thuộc với nó, thì tôi sẽ tìm ở nơi khác.

Trường hợp của bạn thú vị ở chỗ nó có vẻ khá năng động. Các lý do chuỗi chuyển tiếp (như Drools) có thể không phải là lựa chọn tốt nhất, vì các sự kiện cập nhật sẽ làm mất hiệu lực các khoản khấu trừ. Hãy thử một cái gì đó prolog-ish.

+0

Cảm ơn, tôi đã viết một số mã mẫu với Jena, hóa ra nó không phải là rất khó. –

3

Tôi chắc chắn sẽ giới thiệu ILOG JRULES cho nhu cầu của bạn. Tôi đã sử dụng các JRULES ILOG và tôi thực sự ấn tượng với hiệu suất và độ chính xác của nó.

Cập nhật: Sau đó, tôi sẽ đề nghị để đi cho Drools cũng bạn có thể muốn kiểm tra Open Source Rule Engines in Java

+0

Xin lỗi, tôi quên đề cập đến, chúng tôi là sinh viên, vì vậy chúng tôi thích OpenSource hơn. –

2

Một vài đồng nghiệp tại nơi làm việc thực sự yêu thích mã nguồn mở Drools.

+0

Trông rất thú vị. Cảm ơn! –