Adaptive Business Intelligence - IEEEewh.ieee.org/cmte/cis/mtsc/ieeecis/tutorial2007/CEC2007/... ·...
Transcript of Adaptive Business Intelligence - IEEEewh.ieee.org/cmte/cis/mtsc/ieeecis/tutorial2007/CEC2007/... ·...
1CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
Adaptive Business Intelligence
Zbigniew Michalewicz
2CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Business Intelligence
What is Business Intelligence?
Business Intelligence is a collection of tools, methods, technologies, and processes needed to transform data into knowledge.
What should I do?
3CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
Although Business Intelligence can be used to:
• Increase profitability,
• Decrease costs,
• Improve customer relationship management,
• Decrease risk,
Business Intelligence
4CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
… most companies use it to answer basic queries:
• How many customers do I have?
• During the past 12 months, how many products were sold in each region?
• Who are my 20 best customers?
Business Intelligence
5CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware The famous pyramid
DATA
INFORMATION
KNOWLEDGE
6CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
Data – a collection of raw value elements or facts used for calculating, reasoning, measuring, etc.
Information – the result of collecting and organizing data that establishes relationship between data items.
Knowledge – the concept of understanding information based on recognized patterns.
Data, information, knowledge
Knowledge is power!
7CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Observation
Discovered knowledge is of little value if there is no value producing action that can be taken as a consequence of gaining that knowledge.
Example: 37% of our customers live on the East Coast.
So what?
8CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware What do others think?
PricewaterhouseCoopers Global DataManagement Survey of 2001:
“Companies that manage their data as a strategic resource and invest in its quality are already pulling ahead in terms of reputation and profitability.”
Data should be treated as strategic resource.
9CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware What do others think?
Pacific Crest Equities, 2006:
“Increasingly you are seeing applications being developed that will result in some sort of action. It is a relatively small part now, but it is clearly where the future [of business intelligence] is.”
10CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware What do others think?
Jim Goodnight, CEO, SAS, 2007:
“Until recently, business intelligence was limited to basic query and reporting, and it never really provided that much intelligence…”
11CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware What do others think?
Jim Davis, VP Marketing, SAS, 2007:
“In the next three to five years, we’ll reach a tipping point where more organizations will be using BI to focus on how to optimize processes and influence the bottom line…”
12CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware What is “intelligence”?
Three major ingredients:
• Ability to predict
• Ability to optimise
• Ability to adapt
13CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Prediction
• Evolutionary Programming aimed at achieving intelligence (L. Fogel 1966)
• Intelligence was viewed as adaptive behaviour
• Prediction of the environment was considered a prerequisite to adaptive behaviour
• Thus: capability to predict is key to intelligence (L. Fogel 1966)
14CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Smart decisions
• Expert systems
• Games
• Search techniques
etc.
15CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Adaptive products
Adaptive products are the way of the future:
Car transmissions
TV
Shoes
AI, in general…
16CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
Businesses and government agencies are interested in two fundamental things:
• Knowing what will happen next (prediction); and
• Making the best decision under risk and uncertainty (optimisation).
The goal is to provide AI-based solutions for modelling, simulation, and optimisation to address these two fundamental needs.
Basic observation
17CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Business Intelligence
KNOWLEDGE
DECISION
DATA
OPTIMISATION
PREDICTION
OUTCOME
Adaptive
INFORMATION
18CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Technology Platforms
SolveIT Optimisation Platform
SolveIT Prediction Platform
Classic OR methods, and:• Evolutionary Algorithms• Swarm Intelligence• Simulated Annealing• Tabu Search • Co-Evolutionary Systems• Ant Systems
Classic forecasting methods, and:• Neural Networks• Fuzzy Systems• Genetic Programming• Agent-Based Systems• Data Mining Techniques• Rough Sets
19CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
A major U.S. automaker sells 1.2 million off-lease cars each year on various auction sites.
Each day, a remarketing team uses business intelligence tools and reports to decide where to ship 4,000 – 7,000 off lease cars.
The problem is impacted by demand, depreciation, transportation schedules, cost of capital, risk, changes in market conditions, and the volume effect.
ABI – Example #1
20CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Car Distribution System
21CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Planning & Scheduling Optimisation
• Manufacturing production:
22CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
• Media Allocation(multiobjective):
Planning & Scheduling/ Predictive Modelling
23CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
Some research issues
24CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware
• Precise models of a problem
• Robustness of solutions
• Return of several solutions
• Time changing environments
• Handling constraints
• Large (and complex) search spaces
Issues
25CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Models of a problem
Problem => Model => Solution
Problem-solving is a two-step process:(1) Building a model of a problem, and
(2) Solving the model
26CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Cost functions
cost
amount
27CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Robustness of solutions
It is important to minimize undesirable changes required by unforeseen events.
A B
solution
quality
28CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Return of several solutions
Evolutionary algorithms can be structured to (1) give diverse near-optimal solutions and
(2) deal with tradeoffs present in multi-objective problems.
cost
time
29CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Size of search space
Assume we deal with the following problem:
optimize f (x1, x2,..., x100)
where f is very complex and xi is 0 or 1.
The size of the search space is 2100~ 1030.
The exhaustive search is out of question!
2
i
30CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Optimisation problem
Optimize:
f(x, y) = 100(x - y)2 + (1 – x)2
where -2.048 <= x, y <= 2.048(Rosenbrock’s function, F2)
2
31CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Optimisation problem
What would happen, if we have additional constraints?
E.g., x <= log(y + 3)sin(x) <= 3y2 + 1
32CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Search space
33CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Main question
• YES: easy implementation, low efficiency
• NO: many issues to consider; usually much better results!
Should we consider infeasible individuals harmful and eliminate them from the population?
34CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Further questions:
• How to compare two feasible individuals?• How to compare two infeasible individuals?• How to compare an feasible individual with infeasible one?• Should we penalize infeasible individuals? • Should we “repair” infeasible individuals?• Should we use specialized operators which produce feasible
individuals only?• Should we use decoders?• Should we concentrate on the boundary between feasible and
infeasible areas of the search space?• How to find feasible solutions?
If we keep infeasible individuals in the population, we have to address several issues:
35CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Penalties
• Should we keep W constant?• Should we increase W together with
generations?• Should we use some adaptive
mechanism which influences the value of W on the basis of the feedback from the search?
• Should we include the value of W as a part of individuals and trust the
General idea:Eval(x) = f(x) + W*penalty(x)
36CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Repairs
• Should we repair for evaluation purpose only (so-called Baldwin effect)?
• Should we replace the original individual x by its repaired version x’ (so-called Lamarckian evolution)?
• Are there any other possibilities? ( D i ’ i 5% l )
General idea:Transform infeasible x into
feasible x’ by applying some problem-specific algorithm
37CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Specialized operators
Genocop 3.0 – an experimental system to take:– Arbitrary objective function (continuous
variables)– Set of linear constraints
to produce the optimal solution.
System available from www.cs.adelaide.edu/~zbyszek
38CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Decoders
General idea:
The original spaceEncoded space
39CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Decoders
Genocop V: universal tool for nonlinear optimization problems with nonlinear constraints!
The system accepts an arbitrary function (continuous variables) and any number of nonlinear constraints.
System available from www.cs.adelaide.edu/~zbyszek
40CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Andy Keane’s function
G2(x) = (Σ cos4(xi) – 2 Π cos2(xi))/sqrt(Σ i xi2),
where 0 ≤ xi ≤ 10 and
Π xi ≥ 0.75
41CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Boundary operators
For some problems, it is possible to design boundary operators, which generate offspring as a new boundary point.
E.g., consider constraint: xy <= 5
For two boundary parents, (x1,y1) and (x2,y2), an offspring: (sqrt(x1*x2), sqrt(y1*y2))is also a boundary point.
42CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Parameter tuning
Parameter tuning: the traditional way of testing andcomparing different values before the “real” run
Problems:• users mistakes in settings can be sources of errors
or sub-optimal performance• costs much time• parameters interact: exhaustive search is not
practicable• good values may become bad during the run
43CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Parameter control
Parameter control: setting values on-line, during the actual run, e.g.,
• predetermined time-varying schedule p = p(t)• using feedback from the search process• encoding parameters in chromosomes and rely on
natural selection
Problems:• finding optimal p is hard, finding optimal p(t) is harder• still user-defined feedback mechanism, how to
“optimize”?• when would natural selection work for strategy
parameters?
44CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Various Casesf(x)
f(x), c1(x), c2(x),…
f1(x), f2(x),…
f1(x), f2(x),… , c1(x), c2(x),…
f(x,t)
f(x,t), c1(x), c2(x),…
f(x), c1(x,t), c2(x,t),…
f(x,t), c1(x,t), c2(x,t),…
f1(x,t), f2(x,t), … , c1(x,t), c2(x,t),…
45CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Heuristic vs. Problem
EvaluationFunctions
Heuristic Method Problem
46CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Evaluation Functions
Some researchers acknowledged that a real world scenario might be a bit more complex:
• Noise
• Robustness
• Approximation
• Time-changing environments
47CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Noise
Sometimes evaluation functions return results of randomised simulations. The common approach in such scenarios is to approximate a noisy evaluation function eval by an averaged sum of several evaluations:
eval(x) = 1/q Σi=1…q (f(x) + zi),
where x is a vector of design variables (i.e., variables controlled by a method), f(x) is the evaluation function, zi represents additive noise, and n is the sample size. Note that the only measurable (returned) values are f(x) + z.
48CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Robustness
Sometimes slightly modified solutions should have quality evaluations (thus making the original solution robust). The common approach to such scenarios is to use evaluation function eval based on the probability distribution of possible disturbances δ, which is approximated by Monte Carlo integration:
eval(x) = 1/q Σi=1…q f(x + δi).
Note that eval(x) depends on the shape of f(x) at point x; in other words, the neighbourhood of x determines the value of eval(x).
49CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Approximation
Sometimes it is too expensive to evaluate a candidate solution. In such scenarios, evaluation functions are often approximated based on experimental or simulation data (the approximated evaluation function is often called the meta-model). In such cases, evaluation function eval becomes:
eval(x) = f(x) + E(x),
where E(x) is the approximation error of the meta-model. Note that the approximation error is quite different than noise, as it is usually deterministic and systematic.
50CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware Dynamic environments
Sometimes evaluation functions depend on an additional variable: time. In such cases, evaluation function eval becomes:
eval(x) = f(x, t),
where t represents time variable. Clearly, the best solution may change its location over time. There are two main approaches for handling such scenarios: (1) to restart the method after a change, or (2) require that the method is capable of chasing the changing optimum.
51CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware The most “real” case
However, it seems the largest class of real world problems is not included in the above four categories. It is clear that in many real world problems the evaluation functions are based on predictions of the future values of some variables. In other words, evaluation function eval is expressed as:
eval(x) = f(x, P(x, y, t)),
where P(x, y, t) represents an outcome of some prediction for solution vector x and additional (environmental, beyond our control) variables y at time t.
52CONFIDENTIAL – Property of SolveIT Software © 2005
SolveITSoftware More info…