2009-02-05 39 views
10

Tôi muốn sử dụng công cụ quy tắc cho trò chơi của mình. Nó sẽ được sử dụng cho NPC AI và GM AI.Động cơ quy tắc Java cho trò chơi AI

Công cụ quy tắc tốt và nhanh cho mục đích này là gì? Nó phải là Java và Mã nguồn mở.

Tôi muốn nghe ý kiến ​​của những người đã sử dụng Công cụ quy tắc Java cho Trí thông minh nhân tạo về trải nghiệm của họ.

Trả lời

10

Có hai lựa chọn mà tôi đã thấy: JessDrools. Jess, thẳng thắn, có vấn đề. Nó không phải là nguồn mở, cũng không phải là nó miễn phí. Nó có cú pháp giống như Lisp, là một dấu cộng hoặc dấu trừ, phụ thuộc vào quan điểm của bạn.

Mặt khác, mặt khác, cả hai đều miễn phí, mã nguồn mở và dưới ô JBoss, vì vậy có khả năng sẽ ở lại một lúc. Các quy tắc được gọi bằng cách sử dụng Java thẳng, nhưng được viết bằng cách sử dụng một DSL khá trực quan với người không lập trình. Chỉ có "gotcha" tôi đã thấy với Drools là biên dịch các quy tắc có thể chậm, vì vậy bạn sẽ muốn chạy trình biên dịch khi khởi động hoặc trong một khối tĩnh, đôi khi người dùng sẽ không bận tâm chờ đợi xung quanh một chút.

Chúc may mắn!

+0

Bạn có xin ghi rõ những loại vấn đề Jess có? –

+0

@hragheb Tôi đã chỉ định các vấn đề trong đoạn đầu tiên. 1) Nó không phải là mã nguồn mở, 2) nó không phải là miễn phí, 3) nó có một cú pháp giống như lisp (mà là một trừ cho tôi, mặc dù nó có thể không được cho người khác). Không ai trong số này là nhất thiết phải hiển thị stopper, ngoại trừ mỗi, tôi cảm thấy, đặt sản phẩm tại một bất lợi cạnh tranh để Drools. – rtperson

1

Chúng tôi sẽ cố gắng và giải quyết sự hoàn thiện biên soạn vào cuối năm nay. Nó không chỉ là một cái gì đó chúng tôi đã tập trung vào hoặc profiled được nêu ra, thay vì tập trung vào hiệu suất thời gian chạy.

Tôi rất muốn nghe về sự tiến bộ của bạn. Tôi đang nghĩ đến việc làm một trò chơi Drools PacMan để bắt đầu khám phá về cách tốt nhất để sử dụng các công cụ quy tắc cho trò chơi. Vì Trò chơi thường là về các sự kiện và kiểm tra mối quan hệ giữa các đối tượng, có vẻ như một công cụ điều chỉnh đúng cách có thể cung cấp một số lợi ích. Phần sau, "điều chỉnh", sẽ trở nên quan trọng như trong nhiều trường hợp động cơ có thể hiệu quả hơn nhiều trong các trận đấu một phần nếu nó biết về không gian vấn đề ở phía trước. Lý tưởng nhất với các trò chơi này thường là trường hợp, vì vậy chúng tôi có thể cung cấp gợi ý cho động cơ để điều chỉnh nó ở những nơi cho những trường hợp sử dụng.

Chúng tôi có một số nghiên cứu hiện tại đang diễn ra để thêm xác suất, điều đó cũng sẽ rất thú vị đối với trò chơi.

Dù sao xin đừng liên hệ với tôi nếu bạn thực hiện bất kỳ tiến bộ, mproctor tại redhat d0t com

Các vấn đề liên quan