Droolsi õpetus: reeglite mootor Archistruktuur ja diagramm

⚡ Nutikas kokkuvõte

Drools on avatud lähtekoodiga ärireeglite haldussüsteem, mis on kirjutatud ... keeles. Java mis eraldab äriloogika rakenduskoodist. See ressurss selgitab reegleid, Rete algoritmi, Droolsi arhitektuuri ja komponente, Eclipse plugina seadistamine ja Hello World reegli näide.

  • ⚙️ Põhidefinitsioon: Drools on a Java-põhine BRMS, mis käitab ärireegleid Rete mustrite sobitamise algoritmi abil.
  • 📜 Reeglite struktuur: Reegel järgib millal-siis-vormingut, käivitades toimingud ainult siis, kui selle tingimused vastavad töömälus olevatele faktidele.
  • 🏗️ ArchiStruktuur: Reeglid laaditakse reeglibaasi, faktid sisestatakse töömällu ja mootor sobitab need kokku ning käivitab need vastavalt tegevuskavale.
  • 🔌 Eclipse Setup: Droolsi plugin installitakse sisse Eclipse jBPM-i levitamise ZIP-faili ja uue tarkvara installimise dialoogiboksi kaudu.
  • 🔄 Aheldamisrežiimid: Drools toetab faktidelt järeldusteni edasisuunalist aheldamist ja eesmärgilt faktideni tagasisuunalist aheldamist.

Droolsi õpetus

Mis on Drools?

Drools on avatud lähtekoodiga ärireeglite haldustarkvara (BRMS), mis on sisse kirjutatud Java mis pakub kasutajatele mitmesuguseid funktsioone, nagu ärireeglite mootor, veebiloomine, reeglite haldamise rakendus ja käitusaegne tugi otsustusmudelitele ja tähistusmudelitele. See kasutab mustri sobitamise algoritmi täiustatud rakendussüsteemi.

Drools ilmus Apache License 2.0 all ja see ühildub mis tahes JVM-iga ja on saadaval ka Maven Central Repository's.

Droolsi tööriist aitab teil äriprotsessides leiduvat loogikat ja andmeid eristada ja põhjendada. See toetab edasi- ja tagurpidi aheldamist järeldustel põhinevat drools-reeglite mootorit.

Drools jaguneb kaheks osaks:

  • Autoritöö – See hõlmab reeglifailide väljatöötamist.
  • Runtime – See hõlmab töömälu loomist ja aktiveerimise käsitlemist.

Mis on reegel?

Reeglid on osa teadmistest, mida sageli väljendatakse järgmiselt: "Kui ilmnevad konkreetsed tingimused, tehke mõned ülesanded."

Reegli kõige olulisem osa on see millal osa. Üks kord millal osa on rahul, SIIS osa käivitub.

süntaksit:

When
<Condition is true>
Then
<Take desired Action>

Mustri sobitamise meetod

Mustri sobitamise meetod aitab võrrelda uusi või vanu fakte tootmisreeglitega. Selle lõpetab järeldusmootor.

Algorithms Mustri sobitamiseks kasutatakse järgmist:

  • Rete algoritm
  • Hüpete algoritm
  • Lineaarne algoritm
  • Ravi algoritm

Algoritm, mida Drools enamasti kasutab, on aga Rete algoritm.

Rete algoritm

Rete algoritm on kasulik mustrite sobitamise algoritm, mis võimaldab teil rakendada tootmisreeglite süsteeme. See aitab teil kiiruse suurendamiseks ohverdada mälu. Samuti vähendab või kõrvaldab see teatud tüüpi liiasust sõlmede jagamise abil. See salvestab osalised vasted, ühendades samal ajal erinevate faktitüüpide vahel.

Droolsi reegli mootor

Droolsi reegli mootor on reeglipõhine lähenemine Expert süsteemi juurutamiseks Droolsi tarkvaras. Reeglimootor pakub ekspertsüsteeme, mis on teadmistepõhised süsteemid, mis aitavad teil teha otsuseid, nagu mida ja kuidas teha. See koondab teadmised teadmistebaasi, mida saab kasutada arutlemiseks.

Drools Tools Suite

Nüüd selles Drools Rule Engine'i õpetuses õpime Drools Tool Suite'i kohta. Siin on viis tüüpi tööriistu, mis kuuluvad Droolsi komplekti:

  • Drools Guvnor: see on Droolsi teadmistebaasi tsentraliseeritud hoidla.
  • Drools Flow: see pakub töövoogu ja äriprotsesse.
  • Drools Fusion: tööriist, mida kasutatakse sündmuste keerukaks töötlemiseks
  • Drools Expert või Rules Engine: Kasulik tööriist arutlemiseks.
  • Drools Planner: To pakub automatiseeritud planeerimist, mis hõlmab NP-raskeid planeerimisprobleeme.

Droolsi olulised komponendid

Nüüd selles Droolsi õpetuses tutvume Droolsi oluliste komponentidega.

Siin on Droolsis kasutatavad olulised terminid:

  • Faktid – Fakt kujutab endast andmeid, mida kasutatakse reeglite jaoks
  • Töömälu – Säilitamine koos faktidega, kus neid kasutatakse mustrite sobitamiseks. Seda saab muuta, sisestada ja eemaldada.
  • Teadmiste sessioon – See komponent sisaldab kõiki käivitamisreegli jaoks vajalikke ressursse. Siin sisestatakse kõik faktid ühte seanssi ja seejärel käivitatakse sobitamise reeglid.
  • Alusteadmised – See esindab Droolsi ökosüsteemi teadmisi. See salvestab ressursside moodustamise, kus reeglid leitakse.
  • moodulid – See on moodul, mis salvestab mitu teadmistebaasi, mis võivad pidada erinevaid seansse

ArchiDroolsi tektuur

Droolsi reegli mootor Architektuur
Droolsi reegli mootor Architektuur

Siin on Droolsi arhitektuuri töösüsteem:

Step 1) Reeglid laaditakse reeglibaasi, mis on kogu aeg saadaval.

Step 2) Faktid salvestatakse töömällu, kus neid saab seejärel muuta või ümber hinnata.tractatud.

Step 3) Uute või olemasolevate faktide vastavusse viimist tootmisreeglitega nimetatakse mustrite sobitamiseks, mida teostab reeglimootor.

Step 4) Agenda võimaldab konfliktide lahendamise strateegia abil hallata konfliktsete reeglite täitmise järjekorda.

Drooli omadused

Siin on Drooli olulised funktsioonid:

  • Aitab teil rakenduse dünaamilisest loogikast eraldada
  • Deklaratiivne programmeerimine
  • Teadmiste tsentraliseerimine
  • Kiirus ja mastaapsus
  • Eraldi loogika rakendusest
  • Arusaadavad reeglid

Kuidas lisada Droolsi pistikprogramme Eclipse

Nüüd selles Droolsi õpetuses õpime Droolsi pistikprogrammi lisamist Eclipse.

Step 1) Klõpsake jBPM-i integreerimiseks nuppu „Distribution ZIP”.
Minna https://www.drools.org/download/download.html ja klõpsake jBPM-i integreerimiseks nuppu „Distribution ZIP”. Pärast allalaadimist, nttracsalvesta see oma kõvakettale.

Lisage Droolsi pistikprogrammid Eclipse

Step 2) Installige uus tarkvara
In Eclipse, valige Installi uus tarkvara.

Lisage Droolsi pistikprogrammid Eclipse

Step 3) Klõpsake nuppu Lisa
Tarkvara lisamiseks klõpsake nuppu Lisa.

Lisage Droolsi pistikprogrammid Eclipse

Step 4) Sirvi kausta
Järgmisel ekraanil klõpsake nuppu Kohalik ja valige kaust "org.drools.updatesite/", seejärel klõpsake nuppu OK.

Lisage Droolsi pistikprogrammid Eclipse

Step 5) Klõpsake nuppu Edasi
Installi parandamise lehel klõpsake nuppu Edasi.

Lisage Droolsi pistikprogrammid Eclipse

Step 6) Nõustuge litsentsilepinguga
Nõustuge litsentsilepinguga ja klõpsake nuppu Edasi.

Lisage Droolsi pistikprogrammid Eclipse

Step 7) Reboot Eclipse
Tarkvara laaditakse alla ja teil palutakse eclipse taaskäivitada.

Step 8) Installiprotsess on lõppenud
In Windows > Eelistused, näete valikut Drools, mis näitab, et see on installitud.

Lisage Droolsi pistikprogrammid Eclipse

Drools Program Hello World Näide

Allpool on Droolsi näide Hello World programmi kohta:

package com.sample
import com.sample.DroolsTest.Message;
rule "Hello World"
 when
	m : Message( status ** Message.Hello, myMessage : message )
  then
System.out.println( myMessage );
m.setMessage( "Goodbye cruel world" );
m.setStatus( Message.GOODBYE );
update( m );
end
 rule "GoodBye"

when
	Message( status ** Message.GOODBYE, myMessage : message )
then
System.out.println( myMessage );
end

Mis on tagurpidi ja edasi aheldamine?

Ettepoole suunatud mootor kontrollib fakte ja teeb konkreetse järelduse.

Vaatleme meditsiinilise diagnostika süsteemi stsenaariumi. Kui patsiendi haigusnähud faktidena töömällu kanda, siis on tal lihtne haigust diagnoosida.

Tagurpidi vs edasi aheldamine

Ettepoole ketiga mootor

Tagurpidi aheldaval mootoril on seatud eesmärk ja mootor püüab seda täita.

Mõelge samale meditsiinilise diagnoosi stsenaariumile. Oletame, et teatud haiguse epideemia. See tehisintellekt võib eeldada, et konkreetsel isikul oli haigus, ja püüda olemasoleva teabe põhjal kindlaks teha, kas tema diagnoos on õige.

Tagurpidi vs edasi aheldamine

Tagurpidi ketiga mootor

Miks kasutada Drools Rule Engine'i?

Siin on Droolsi reeglite mootori kasutamise peamised põhjused:

  • Reeglid on arendajatele kergesti mõistetavad ja ärianalüütikud.
  • Reegleid on lihtne hooldada.
  • Rule Engine kasutab Rete algoritmi, mis väidab, et mootori jõudlus ei sõltu kunagi reeglite arvust.
  • Reegleid saab muuta ja juurutada ilma rakendust alla viimata.
  • Välistab äriloogika suhteliselt staatilisest koodibaasist.
  • Reeglid on välja töötatud vähem keerukates vormingutes, et ärianalüütik saaks reeglite rühma hõlpsalt lugeda ja kontrollida.
  • Reeglid võimaldavad teil luua teadmiste ladu, mis on vormis käivitatav.
  • Tööriistad nagu Eclipse aitab teil hallata reegleid, saada kohest vastust, autentimist ja sisutuge.

Reeglite mootori puudused

Siin on reeglite mootori kasutamise puudused / miinused:

  • Selle programmeerimismeetodi tundmine nõuab arendajatelt palju õppimistööd
  • Reeglimootor ei ole turvaline meetod probleemide tõrkeotsinguks.
  • Rohkem mälu tarbimiseks on vaja mõista reeglimootori toimimist
  • Keerulise hargnemise jaoks on palju reegleid.

Reeglid võivad aja jooksul muutuda ja jõustuvad koodimuudatustega

KKK

Jah. Drools on välja antud Apache litsentsi 2.0 alusel ning on täiesti tasuta ja avatud lähtekoodiga. See töötab mis tahes JVM-il ja on projektide hõlpsaks integreerimiseks saadaval Maven Central Repository kaudu.

Droolsi reeglid on kirjutatud DRL-is (Drools Rule Language), mis on deklaratiivne süntaks, mis põhineb kui-siis-struktuuril. Reegleid saab luua ka otsustustabelite, DMN-mudelite või ärikasutajate valdkonnapõhiste keelte abil.

Reeglimootor eksternaliseerib loogika hooldatavateks reegliteks, mis muutuvad ilma rakendust uuesti juurutamata. Kõvakoodis sisalduv if-else loogika on koodibaasis laiali, seda on raskem uuendada ja see ei skaleeru hästi tingimuste arvu kasvades.

Drools rakendab tehisintellekti klassikalist haru, mis kodeerib inimteadmisi reeglitena. Mootor arutleb faktide üle, et jõuda järeldusteni, toetades edasi-tagasi aheldamist sarnaselt sümboolsete tehisintellekti otsustussüsteemidega.

Jah. Tehisintellekti assistendid saavad koostada DRL-reegleid lihtsates keeltes esitatud nõuete põhjal, tuvastada vastuolulisi või üleliigseid reegleid ja pakkuda optimeerimisi. Meeskonnad valideerivad loodud reegleid, et tagada õige äriloogika ja usaldusväärne teostus.

Võta see postitus kokku järgmiselt: