rete

    0熱度

    1回答

    讓我描述一下我的用例的抽象,這樣問題的意圖就會清晰。 使用案例: (i). If there is already an object objA of type A, create another obj2A of type A. (ii).If there are more than one object of type A, create an object objB of typ

    1熱度

    3回答

    如何在java中使用Rete算法? 我是否需要編寫自己的算法實現? 還是有已​​經實施的庫可用?

    3熱度

    2回答

    我一直在閱讀關於Drools性能的文章(JBoss Drools – Performance and Memory Internals),它解釋瞭如何創建Rete樹和節點,Drools如何爲它們編制索引,以及爲什麼增加Drools中的對象數量幾乎不會影響總時間執行它。以智能方式編寫的規則可以極大地減少Rete樹中的節點數量,從而進一步提高性能。 我想知道是否有一個Drools規則編寫最佳實踐,所以

    0熱度

    1回答

    我有一個關於如何評估Drools決策表條件的問題。 我曾認爲條件從左到右進行了評估,如果檢查給定規則的最左邊的列是錯誤的,它將不檢查其餘條件。 這對我來說很重要的一個原因是將範圍縮小到最遠的條件的概念向左。這意味着對象會更快地踢出去,而不是大多數首先滿足廣泛條件的對象,並繼續檢查附加條件。 但是,這不是我在單元測試中見到的行爲,我將在下面概述它。 這個例子很簡單,並不是爲了展示範圍的早期縮小。

    0熱度

    1回答

    我想繪製一個示例規則的Rete網絡,它在不同模式中的變量之間沒有綁定關係。我知道beta網絡用於確保不同模式中的彎曲變量是一致的。 (defrule R1 (type1 c1 c2) (type2 c3) => ) (defrule R2 (type2 c3) (type3 c4 v1) (type4 c5 v1) => ) 在R1

    0熱度

    1回答

    使用this作爲一個例子,假設有其says- if the flyer's status is silver, then allow free upgrade to business class **and** give a free drink 應該如何Rete算法來構建網絡的條件下?在網絡底部,會有兩個節點: 1)免費升級2)免費飲料 這兩個節點應該如何鏈接到「銀色」節點? 所有我見過相關

    0熱度

    2回答

    我有一條規則,可以在滿足特定條件時收回數千條事實。該規則位於包含兩個使用「not」語句的其他規則的模塊中。我的問題是: 每當第一條規則收回事實時,rete網絡是否得到重新計算? 這是因爲其他兩條規則中的「不」的陳述,或者會發生什麼呢? 有沒有辦法停止重新計算激活,直到第一個規則沒有更多的事實要收回? 謝謝!

    2熱度

    1回答

    public class AllowAtleastOneCountryRule : Rule { public override void Define() { Profile profile = null; string str = @"At least one country has to be defined as 'permitted'";

    0熱度

    1回答

    我在頂層使用constructs-to-c命令將我的結構轉換爲c代碼。直到現在我知道如何將這些源文件用作黑匣子。我認爲在這些文件中,CLIPS實現了RETE算法,對吧?我想知道如何理解名稱約定和這些文件的內容?我在參考手冊中沒有找到這方面的解釋。 This是我發現這一點的唯一解釋,但從第二點來看,我並不瞭解很多。不過,我對RETE算法有了很好的理解。 也有一些方法可視化RETE網絡CLIPS爲我的

    1熱度

    2回答

    NRules SimpleRule的代碼定義下列規則: public class PreferredCustomerDiscountRule : Rule { public override void Define() { Customer customer = null; IEnumerable<Order> orders = null;