Download presentation
Presentation is loading. Please wait.
Published byMicaela Hartill Modified over 10 years ago
1
BDD Based Configuration Henrik Hulgaard, CTO
2
Configit: Interactive Configuration Tools Configit is an ITU spin-off company Currently employs 18 people, cand.it., computer scientists, PhDs Close relation to SAP Web: www.configit.comwww.configit.com
3
Customer Examples Arla PlastLindab B&G FencingLogica BrunataNetstal CCI EuropeNovenco Danfoss CoolingPsion Teklogix Danfoss District HeatingScalepoint Technologies Danfoss DrivesScam Trucks Dantherm FiltrationScancoin DeifSchneider Electric Power Drives DHI Water & EnvironmentSEAS-NVE Di ZioSkako Comessa DooriaTageksperten EnalyzerUGS (Siemens PLM) EnersysUkrSibbank ErhvervsministerietUponor Europæiske RejseforsikringVestas Gemini FashionsVolvo Trucks GrundfosWinnie Paper LEGO Sales configurator Other configurator SAP integrated Consultancy
4
What’s Interactive Configuration?
5
A configuration problem C is a triple (X,D,F) –X is a set of variables x 1, x 2, …,x n –D is the Cartesian product of their finite domains D = D 1 D 2 … D n –F = {f 1,f 2,…,f m } is a set of propositional formulas over atomic propositions x i = v, where v D i, specifying the conditions that the variable assignments must satisfy. Each formula is inductively defined by f x i = v | f g | f g | f Configuration Problem
6
An interactive configurator must: 1.Ensure that the user ends with a valid configuration 2.Guide the user towards the goal Interactive Configuration
7
for all i < j: c[i] <> c[j] // row i+c[i] <> j+c[j] // NW-SE i+c[j] <> j+c[i] // SW-NE The 8 Queens Problem 7654321076543210 c: array 8 of [0..7]; c[i] = "position of the queen in column i" c[0] c[1] c[2] c[3] c[4] c[5] c[6] c[7]
8
x 1 {black, white, red, blue} : Color x 2 {small, medium, large} : Size x 3 {“Men in black” – MIB, “Save the whales” -STW} : Print f 1 (x 3 = MIB) (x 1 = black) f 2 (x 3 = STW) (x 2 small) x 1 x 2 x 3 blacksmallMIB whitemediumSTW redlarge blue T-Shirt Example 1 1 : Due to Erik van der Meer
9
x 1 {black, white, red, blue} : Color x 2 {small, medium, large} : Size x 3 {“Men in black” – MIB, “Save the whales” -STW} : Print f 1 (x 3 = MIB) (x 1 = black) f 2 (x 3 = STW) (x 2 small) x 1 x 2 x 3 blacksmallMIB whitemediumSTW redlarge blue T-Shirt Example 1 1 : Due to Erik van der Meer
10
x 1 {black, white, red, blue} : Color x 2 {small, medium, large} : Size x 3 {“Men in black” – MIB, “Save the whales” -STW} : Print f 1 (x 3 = MIB) (x 1 = black) f 2 (x 3 = STW) (x 2 small) x 1 x 2 x 3 blacksmallMIB whitemediumSTW redlarge blue T-Shirt Example 1 1 : Due to Erik van der Meer
11
x 1 {black, white, red, blue} : Color x 2 {small, medium, large} : Size x 3 {“Men in black” – MIB, “Save the whales” -STW} : Print f 1 (x 3 = MIB) (x 1 = black) f 2 (x 3 = STW) (x 2 small) x 1 x 2 x 3 blacksmallMIB whitemediumSTW redlarge blue T-Shirt Example 1 1 : Due to Erik van der Meer
12
x 1 {black, white, red, blue} : Color x 2 {small, medium, large} : Size x 3 {“Men in black” – MIB, “Save the whales” -STW} : Print f 1 (x 3 = MIB) (x 1 = black) f 2 (x 3 = STW) (x 2 small) x 1 x 2 x 3 blacksmallMIB whitemediumSTW redlarge blue T-Shirt Example 1 1 : Due to Erik van der Meer
13
Truth Table for T-shirt black S StW black S MiB black M StW black M MiB black L StW black L MiB white S StW white S MiB white M StW white M MiB white L StW white L MiB red S StW red S MiB red M StW red M MiB red L StW red L MiB blue S StW blue S MiB blue M StW blue M MiB blue L StW blue L MiB 13
14
Truth Table for T-shirt black S StW black S MiB black M StW black M MiB black L StW black L MiB white S StW white S MiB white M StW white M MiB white L StW white L MiB red S StW red S MiB red M StW red M MiB red L StW red L MiB blue S StW blue S MiB blue M StW blue M MiB blue L StW blue L MiB 14
15
Truth Table for T-shirt black S StW black S MiB black M StW black M MiB black L StW black L MiB white S StW white S MiB white M StW white M MiB white L StW white L MiB red S StW red S MiB red M StW red M MiB red L StW red L MiB blue S StW blue S MiB blue M StW blue M MiB blue L StW blue L MiB 15
16
Truth Table for T-shirt black S StW black S MiB black M StW black M MiB black L StW black L MiB white S StW white S MiB white M StW white M MiB white L StW white L MiB red S StW red S MiB red M StW red M MiB red L StW red L MiB blue S StW blue S MiB blue M StW blue M MiB blue L StW blue L MiB 16
17
T-shirt in Product Modeler DEMO
18
T-shirts in Quote DEMO
19
IPC(C) 1.R C OMPILE (C) 2. while |R| > 1 do 3. choose (x i = v) V ALID A SSIGNMENTS (R) 4. R R (x i = v) ←Offline ←Online } BDD
20
Build product models Think of it like this… Distribute office documents Run through Distiller PDF-filesRead with Reader Distribute interactive product knowledge VT-files Interact at Runtime
21
Stand-alone Tools VT-files are versatile VT Files Configurator Web Application Configuration Configurator Portable Devices Configuration Configurator Stand Alone Configuration PDA based Tools Office Tools Configurator CD Distribution Configuration Tools on a CD
22
Idea 1.Use a BDD to represent R 2.Use a polynomial-time BDD algorithm to compute V ALID A SSIGNMENTS (R) BDD-based configuration
23
1. Define domains in binary: 00 : black, 01 : white, 10 : red, 11 : blue 00 : small, 01 : medium, 10 : large 0 : MIB, 1 : STW 2. Build a BDD of the rules: Represent R by a BDD
24
Trace paths for each variable layer in the BDD Compute V ALID A SSIGNMENTS (R)
25
More info Take a look at www.configit.comwww.configit.com Free trial SW download and numerous technical papers Student projects Ask henrik@configit.comhenrik@configit.com
26
Legal notes. This presentation is © Copyright Configit A/S and may not be distributed without permission from Configit. This presentation is strictly confidential and only intended for those receiving this directly from Configit. Configit, the Configit logo, Virtual Tabulation, Configit Product Modeler, Configit Runtime, Configit Quote for SAP and other Configit product names are trademarks or registered trademarks of Configit A/S. All other product and service names mentioned and associated logos displayed are the trademarks of their respective companies.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.