freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

drools使用手冊(cè)第六--十章(參考版)

2024-11-12 16:38本頁面
  

【正文】 James Own, 20202020 Benchmarks, KnowledgeBased Systems Corporation . 輸出摘要 Assign First seat =[fid:13:13]:[Seating id=1, pid=0, done=true, ls=1, ln=n5, rs=1, rn=n5] =[fid:14:14]:[Path id=1, seat=1, guest=n5] ==[ActivationCreated(16): rule=findSeating [fid:13:13]:[Seating id=1, pid=0, done=true, ls=1, ln=n5, rs=1, rn=n5] [fid:9:9]:[Guest name=n5, sex=f, hobbies=h1] [fid:1:1]:[Guest name=n1, sex=m, hobbies=h1] ==[ActivationCreated(16): rule=findSeating [fid:13:13]:[Seating id=1 , pid=0, done=true, ls=1, ln=n5, rs=1, rn=n5] [fid:9:9]:[Guest name=n5, sex=f, hobbies=h1] [fid:5:5]:[Guest name=n4, sex=m, hobbies=h1]* Assign Seating =[fid:15:17] :[Seating id=2 , pid=1 , done=false, ls=1, lg=n5, rs=2, rn=n4] =[fid:16:18]:[Path id=2, seat=2, guest=n4] =[fid:17:1。 由于在 BRMS 引擎中的重大提升, 2020 2020 Benchmarks 將在2020 有重大的改變和超越。這些優(yōu)化使得 Manners 小姐的基準(zhǔn)變成多余的,并且在這個(gè) manner 中建立一個(gè)最適宜的系統(tǒng)的結(jié)果將被考慮避免。現(xiàn)代的基于 Rete 算法的規(guī)則引擎開始分析網(wǎng)絡(luò)并實(shí)現(xiàn)這種類型的優(yōu)化,不管它是一個(gè) leaps 風(fēng)格的懶惰評(píng)估或者一個(gè)預(yù)編譯的優(yōu)化以避免錯(cuò)誤的連接。 Manners是對(duì)不同連接的叉集算法速度的殘酷壓力測(cè)試。 所有上面的是外部最優(yōu)化,這些情況容易發(fā)現(xiàn)并且使得結(jié)果無效。一個(gè)合適的接口可以阻止使用上下文匹配得到的 fact 啟動(dòng)。這將大量減少叉集。當(dāng) manners 完成了正確的輸出時(shí),它也向連接節(jié)點(diǎn)提供了很好的壓力測(cè)試;但是,如果基于鄰近性策略的 Fact 被使用,只有 Agenda 沖突解決方案將被測(cè)試。 when { context : Context( state == ) } then { ( )。 rule areWeDone() { when { context : Context( state == ) LastSeat( lastSeat: seat ) Seating( rightSeat == lastSeat ) } then { ( )。 . Continue and Are We Done Are We Done規(guī)則僅在最后一個(gè)座位被設(shè)置后激活,這時(shí)所有的規(guī)則都已經(jīng)激活過。為了正確地執(zhí)行Manners,建立路徑規(guī)則所建立的激活規(guī)則 必須在完成路徑規(guī)則之前激活。當(dāng) Manners 在 CLIPS 中使用寬度( breadth)策略執(zhí)行時(shí),如果完成路徑在建立路徑之前激發(fā),它將陷入一個(gè)無限的循環(huán)。Clips 成功的完成了 Manners,不論規(guī)則在規(guī)則 文件中是以什么樣的順序定義的。 ( )。注意,完成路徑是建立路徑的一個(gè)子集,因此我們?cè)鯓哟_信建立路徑可以首先激發(fā)呢? rule makePath() { when { context : Context( state == ) Seating( seatingId:id, seatingPid:pid, pathDone == false ) Path( id == seatingPid, pathGuestName:guest, pathSeat:seat ) (not Path( id == seatingId, guestName == pathGuestName ) } else { ( new Path( seatingId, pathSeat, pathGuestName ) )。 . Make Path and Path Done 建立并完成路徑 建立路徑規(guī)則必須在完成路徑 規(guī)則之前調(diào)用。因此在 Drools 中 Manners 可以工作,但是偶然才能產(chǎn)生結(jié)果,用戶不能對(duì)此有任何期望。這個(gè)發(fā)現(xiàn)說明,被放在 Agenda 中,有同樣時(shí)間標(biāo)簽的激活規(guī)則的順序仍然按照 LIFO/FIFO 的序列進(jìn)行。 這個(gè)方法使得鏈接記住并且嘗試連接,基于 fact 設(shè)置到節(jié)點(diǎn)中的順序;這樣激活規(guī)則的激發(fā)將基于 fact 的設(shè)置順序。 struct genericMatch binds[1]。 unsigned int bcount : 9。 unsigned int notOriginf : 1。 unsigned int activationf : 1。我并沒有看 Jess 或 Clips 的代碼, Peter Lin 已經(jīng)證實(shí) Clips 為內(nèi)存使用鏈接的列表( LinkedLists),就像下面的 Clips 的PartialMatch 結(jié)構(gòu)中的 *next 屬性: struct partialMatch { unsigned int betaMemory : 1。一個(gè) Lex風(fēng)格的鄰近性策略被實(shí)現(xiàn),并且這個(gè)基準(zhǔn)正確工作。在 Clips 中提供的 Lex 和 Mea 沖突解決策略允許你快速轉(zhuǎn)換并正確的在 Clips 中運(yùn)行 OPS5 程序。 its purposefully designed as a bad rule to full stress test the cross product matching process, which this clearly does. Notice that each Activation has the same time tag of 35, as they were all activated by the change in Context to ASSIGN_SEATS. With OPS5 and LEX it would correctly fire the Activation with the last asserted Seating. With Depth strategy the execution is arbitrary yet Manners does correctly execute for Jess and Clips using the Depth strategy. Clips support, via the public forums, have said that Manners was] 深度算法,作為 Clips 默認(rèn)的沖突解決策略,不同于在 OPS5 中默認(rèn)使用的策略。雖然深度策略的執(zhí)行是任意的,但 Manners 對(duì)于 Jess 和 Clip在使用深度策略后正確的執(zhí)行。注意每一個(gè)激活規(guī)則有同樣的時(shí)間標(biāo)簽 35,因?yàn)樗鼈兌际窃谏舷挛臓顟B(tài)改變?yōu)?ASSIGN_SEATS 時(shí)激活的。 } } 但是,可以從之前打印的結(jié)果看到,基本上只有帶有最高 pid 座位的叉集算法( cross product)被選擇,如果我們對(duì)于鄰近的所有座位和客人已經(jīng)有激活規(guī)則,怎樣才會(huì)產(chǎn)生這樣的結(jié)果。 ( countValue + 1 )。 ( new Path( countValue, leftGuestName, newSeat )。 accept against itself or any already assigned Chosen solutions.] rule assignSeat() { when { context : Context( state == ) Seating( seatingId:id, seatingPid:pid, pathDone == true seatingRightSeat:rightSeat seatingRightGuestName:rightGuestName ) Guest( name == seatingRightGuestName, rightGuestSex:sex, rightGuestHobby:hobby ) Guest( leftGuestName:name , sex != rightGuestSex, hobby == rightGuestHobby ) count : Count() not ( Path( id == seatingId, guestName == leftGuestName) ) not ( Chosen( id == seatingId, guestName == leftGuestName, hobby == rightGuestHobby) ) } then { int newSeat = rightSeat + 1。接受對(duì)自己或任何已經(jīng)分配的選擇方案。 } } . 分配座位 該規(guī)則決定每一個(gè)座位的分配。 ( () + 1 )。 ( new Seating( (), 1, true, 1, guestName, 1, guestName) )。規(guī)則被激發(fā),并且設(shè)置了第一個(gè)座位的安排,為“分配座位”規(guī)則執(zhí)行所需的路徑和上下文狀態(tài)就建立好了。使用 LEX 的 Recency 鄰近性策略,最后被設(shè)置的 Guest 將有更高的時(shí)間標(biāo)簽,它所對(duì)應(yīng)的激活規(guī)則將先激發(fā)。 . 分配第一個(gè)座位 一旦上下文環(huán)境變更為 START_UP,為所有設(shè)置的 Guest 建立的激活規(guī)則就完成了,因?yàn)樗屑せ钜?guī)則作為單個(gè) Working Memory動(dòng)作的結(jié)果建立,它們都具有相同的時(shí)間標(biāo)簽。當(dāng)Manners 小姐起初在 中使用深度策略時(shí),不能產(chǎn)生正確的結(jié)果,這意味著它會(huì)無限運(yùn)行下去。但 3 與 4 以及 1與 2的位置會(huì)隨意排列。 新激活的規(guī)則被放置在其它同樣優(yōu)先級(jí)的規(guī)則之前。如果一 個(gè)激活規(guī)則擁有比其它激活規(guī)則更多的模式實(shí)體,而它們的時(shí)間標(biāo)簽相同,則更多模式實(shí)體的放在前面。直到找出一個(gè)激活規(guī)則的時(shí)間標(biāo)簽比其它的都晚。一個(gè)激活規(guī)則中一個(gè)更近期的模式實(shí)體放在一個(gè)與遠(yuǎn)期的模式實(shí)體相關(guān)的激活規(guī)則之前。 OPS5 中有兩種策略, LEX 和 MEA, LEX 是幾種策略的結(jié)合,包括 Salience[優(yōu)先級(jí) ], Recency[鄰近性 ], Complexity[復(fù)雜度 ] 每一個(gè) fact 和實(shí)例內(nèi)部使用一個(gè)時(shí)間標(biāo)記來指示它與系統(tǒng)中其它 fact 和實(shí)例的鄰近性關(guān)系。 (guest (name n1) (sex m) (hobby h1) ) (guest (name n2) (sex f) (hobby h1) ) (guest (name n2) (sex f) (hobby h3) ) (guest (name n3) (sex m) (hobby h3) ) (guest (name n4) (sex m) (hobby h1) ) (guest (name n4) (sex f) (hobby h2) ) (guest (name n4) (sex f) (hobby h3) ) (guest (name n5) (sex f) (hobby h2) ) (guest (name n5) (sex f) (hobby h1) ) (last_seat (seat 5) ) 結(jié)果 [Seating id=1, pid=0, done=true, ls=1, ln=n5, rs=1, rn=n5] [Seating id=2, pid=1, done=false, ls=1, ln=n5, rs=2, rn=n4] [Seating id=3, pid=2, done=false, ls=2, ln=n4, rs=3, rn=n3] [Seating id=4, pid=3, done=false, ls=3, rn=n3, rs=4, rn=n2] [Seating id=5, pid=4, done=false, ls=4, ln=n2, rs=5, rn=n1] . 深度研究 . 沖突解決 簡(jiǎn)單來說, manners 是一個(gè)深度優(yōu)先或 LIFO 示例。leftGuestName39?!?l”和“ r”指左邊和右邊,“ s”是 sean,“ n”是客人姓名。 數(shù)據(jù) 在結(jié)果中的每一行都是“分配座位”規(guī)則執(zhí)行時(shí)輸出的。 圖 . Manners 活動(dòng)圖 . 數(shù)據(jù)和結(jié)果
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1