boston 16 03
TRANSCRIPT
LOGO
Customer-telecommunications company’s relationship simulation
model (RSM), based on non-monotonic business rules approach and formal
concept analysis method.
Russian Plekhanov University of Economics
Victor Romanov
Roman Veynberg
Alina Poluektova
LOGO
Click to edit Master text stylesContents
1
2
3
4
5
6
FCA for rules mining
Business rules application at telecommunication sector
EDM-conception and business rules application technology for decision making
Business rules theory
BRMS review
The problem actuality
LOGO
Click to edit Master text styles
Why business rules?
Dynamic competition economy
In big and medium business a lot of documents contain business rules.
It is difficult to find and change them
EDM new conception propose extract business rule as
different component,
This makes possible more easy update
them
LOGO
Click to edit Master text styles
What business rule is
static void processLoanRequest(Borrower borrower, Loan loan) { System.out.println("Processing request from " + borrower.getName()); // Approve or reject the loan checkLoanConditions(borrower, loan); // Display the verdict if (loan.isApproved()) { System.out.println("==> Loan is approved :-)"); } else { System.out.println("==> Loan is rejected :-("); for (Object msg : loan.getMessages()) { System.out.println("==> Because " + msg); } } } /** * Check conditions on the borrower and the loan using hard-coded policies */ static void checkLoanConditions(Borrower borrower, Loan loan) { // Check maximum amount if (loan.getAmount() > 1000000) { loan.addToMessages("The loan cannot exceed 1,000,000"); loan.reject(); } // Check repayment and score if (borrower.getYearlyIncome() > 0){ int val = loan.getYearlyRepayment() * 100 / borrower.getYearlyIncome(); if ((val>=0) && (val<30) && (borrower.getCreditScore()>=0) && (borrower.getCreditScore()<200)) { loan.addToMessages("debt-to-income too high compared to credit score"); loan.reject(); } if ((val>=30) && (val<45) && (borrower.getCreditScore()>=0) && (borrower.getCreditScore()<400)) { loan.addToMessages("debt-to-income too high compared to credit score"); loan.reject(); } if ((val>=45) && (val<50) && (borrower.getCreditScore()>=0) && (borrower.getCreditScore()<600)) { loan.addToMessages("debt-to-income too high compared to credit score"); loan.reject(); } if ((val>=50) && (borrower.getCreditScore()>=0) && (loan.getAmount() >
Applications codesIT
Business Logic
Business
Business rule is the assertion at the natural or formallanguage, which for each state of business system defines permissible decisions on business control
LOGO
Click to edit Master text styles
The main BRMS vendors :
IBM ILog Jrules
FICO Blaze Advisor
Corticon BRMS
Innovations Software Technology Visual Rules
The Forrester Wave™ за второй квартал 2008 г.
LOGO
Click to edit Master text styles
Business Rule Management System
The sources where rules originated from
Applications
Processes Personell
Documents
Business rules management system
The rules are stored and updated
The rules are extracted and executed
The rules are inserted
User Applications
Rules repository
Rules Server
Rules+
Metadata
LOGO
Click to edit Master text styles
BRMS Applications Domains
Telecommunication sector
Banking
Management
State management
Insurance
Medical Care
LOGO
Click to edit Master text styles
Corticon Technologies: Corticon BRMS
Software Environment
Data Base Connector
Rules ModelingServer
Rules Execution Server
LOGO
Click to edit Master text styles
IBM’s ILog JRules
Architecture ILog JRules
Business rule development
Rule project
Object Model
Rule parameters
Vocabulary
business rule, decision tables
Flow rule
Business Rule management
Rule repository
Web application
Synchronize Synchronize
Deploy
DeployDeploy
Applicationrepository
Applicationrepository
Applicationrepository
Decision Validation Services
Decision Validation Services
LOGO
Click to edit Master text stylesRule Studio Rule Team Server
Rule Execution Server Rule Solutions for Office
Component of ILog JRules
LOGO
Click to edit Master text styles
Innovation Technologies: Visual Rules
Analysis Modeling
Monitoring
Execution
Deployment Administration
Documentation
Test and Simulation
LOGO
Click to edit Master text styles
FICO: Blaze Advisor
Architecture of Blaze Advisor
Testing Rule Repository
Rule Development Repository
Business Rule Authoring
Rule Development
Custom
ers A
pplica
tion
Deploym
ent Manag
er
Application Server
Production Rule Repository
LOGO
Click to edit Master text styles
Business rules application for business system decision making1
1 Business rule based data analysis for decision support and automation http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.928&rep=rep1&type=pdf
LOGO
Click to edit Master text styles
The business rules formal definitionAt the theory level of first level logic (FOL) business rules have
statement view IF-THEN and expresses logical consequence or implication.
IF (conditions), then (the list of actions),
else(alternate list of actons).
p is a assertion, named as
antecedent, which is describing state of business conditions
q – assertion named as consequent, describing
decision which are offering in this conditions.
IF p, THEN q, where
LOGO
Click to edit Master text styles
Business rules development and management
LOGO
Click to edit Master text styles
Formal Concept Analysis Formal context K:=(G,M,I) consists of sets G,M and a
binary relation I G ×M⊆ . M –attribute set, G –objects sets (g,m) I ∈ - object g has attribute m Let us define the mapping:
ϕ: → и ψ: →
ϕ(A)=def {m M | gIm g A}, ∈ ∀ ∈ ψ(B)= def {g G | gIm m ∈ ∀ B}, A G, B M.∈ ⊆ ⊆
If A G, B M⊆ ⊆ , then
(A,B)- formal concept of context K, if ϕ(A) = B, ψ(B) = A
G2 M2 M2 G2
LOGO
Click to edit Master text styles
Formal Concept Analysis (FCA)
Subconcept - superconcept relationship:
A1,A2 G, B1,B2 M:⊆ ⊆1. (A1,B1) (A2,B2) (A1 A2)⊆ (B2 B1)⊆2. (A1,B1) – subconcept,3. (A2,B2) – superconcept, A1,A2 – intentB1,B2 - extentThe relationships above define concepts lattice
LOGO
Click to edit Master text styles
Formal Concept Analysis
FCA may be used for visualization telecommunication company’s customer groups, that make possible for management assign to these groups corresponding set of discount options.
Besides selecting the group of customers FCA method provide possibility by mean data mining approach extract new rules from customer database.
The clients may be considered as an objects and their personal data, realty employment positions may be regarded as attributes.
According to these data subsets of groups and their attributes may be selected as a concepts with common features.
LOGO
Click to edit Master text styles
CUSTOMER’S ATRIBUTESCUSTOMER’S ATRIBUTES
PERSONAL DATA sitizen agegendersingle
JOB DATA studentheadInc_hInc_mInc_l
SERVICE CONSUMPTION DATA sms \mmsLoc_callInt_callConfGprs
ACTION EFFECT Act1_eff Act2_eff Act3_eff
LOGO
Click to edit Master text styles
Formal context “customers” Context part 1
Context part 2 (continuation)
LOGO
Click to edit Master text styles
Concept lattice “customers”
LOGO
Click to edit Master text styles
The rules discovered The rules discovered by FCA look like this: different kind
of if customers satisfy different conditions and for them different marketing actions are effective:
< 1 > age_25 gender_male head sms \mms Loc_call Gprs Cons_mid ==> Inc_m Act1_eff;
IF age <= 25 AND gender_male = true AND head = true AND sms\mms = true AND Loc_call = true AND Gprs= true AND Cons_mid= true THEN Act1_eff;
< 2 > age_25 single Loc_call Cons_mid ==> Act2_eff;
IF age<=25 AND single = true AND Loc_call = true AND Cons_mid = true THEN Act2_eff;
< 3 > Cons_high ==> sitizen Inc_h Int_call Gprs Act3_eff;
IF Cons_high = true AND sitizen = true AND Inc_h = true AND Int_call = true AND Gprs THEN Act3_eff;
LOGO
Click to edit Master text styles
The rules with confidence <100 %
63 < 5 > Cons_mid =[80%]=> < 4 > Act2_eff;
66 < 5 > single Loc_call =[80%]=> < 4 > Act2_eff;
LOGO
Click to edit Master text styles
Rules quality criteria Let M – attribute set and G objects set. The rules are defined as the implication X⇒Y,
where X,Y M, X ⊆ Y =. The implication means that all objects of context which contain attributes X also
contain attribute Y. That is in the situation X manager ought make decision Y.
support
Supp=card(ψ(X)/ card(G)) - is a rate of context
objectsK := (G,M, I),
which contain attributes X
Is defined as conf( X⇒Y)=supp(XY)/
supp(X)
3
Is defined as supp(X Y)/
supp(Y) supp(X)
confidence lift conviction
Conviction conv(X⇒Y)=1-
supp(Y)/1- conf(X⇒Y)