Thesis Defence for Doctor of Information Science

39
Studies on Permutation Set Manipulation Based on Decision Diagrams January 23, 2017 Large-Scale Knowledge Processing Laboratory Yuma Inoue

Transcript of Thesis Defence for Doctor of Information Science

Page 1: Thesis Defence for Doctor of Information Science

Studies on Permutation Set ManipulationBased on Decision Diagrams

January 23, 2017

Large-Scale Knowledge Processing LaboratoryYuma Inoue

Page 2: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutations1 Bijection(π: [n]→ [n] on(a(set([n] = {1, 2, …, n}.

1 Notation:((((((((((((((((((((((((((((((((((((((((((((or

1 Ordering(of(items:(ex.((2, 3, 1, 4) for(a(set(S = {1, 2, 3, 4}.

1 Permutations(appear(in(several(applications:

matching,(sorting,(scheduling,(ordering,(encoding,(…

2

1

1

2

2

3

3

4

453

6

2

14

Page 3: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutation Sets

3

1 A(subset(Π� Sn of(all(permutations(on([n].1 Collection(of(solutions

53

6

2

14 { (1, 3, 4, 2, 5, 6),

(1, 3, 4, 2, 6, 5),(1, 4, 3, 2, 5, 6),(1, 4, 3, 2, 6, 5) }

1 Useful(for…

1 extraction(with(criteria,

1 modification,

1 analysis,(etc.

Page 4: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutation Sets

4

1 A(subset(Π� Sn of(all(permutations(on([n].1 Collection(of(solutions

53

6

2

14 { (1, 3, 4, 2, 5, 6),

(1, 3, 4, 2, 6, 5),(1, 4, 3, 2, 5, 6),(1, 4, 3, 2, 6, 5) }

1 Useful(for…

1 extraction(with(criteria,

1 modification,

1 analysis,(etc.

Extract(π s.t. π(3) = 3

Page 5: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutation Sets

5

1 A(subset(Π� Sn of(all(permutations(on([n].1 Collection(of(solutions

53

6

2

14 { (1, 3, 4, 2, 5, 6),

(1, 3, 4, 2, 6, 5),(1, 4, 3, 2, 5, 6),(1, 4, 3, 2, 6, 5) }

1 Useful(for…

1 extraction(with(criteria,

1 modification,

1 analysis,(etc.

Add(edge((3,4)

Page 6: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutation Sets

6

1 A(subset(Π� Sn of(all(permutations(on([n].1 Collection(of(solutions

53

6

2

14 { (1, 3, 4, 2, 5, 6),

(1, 3, 4, 2, 6, 5),(1, 4, 3, 2, 5, 6),(1, 4, 3, 2, 6, 5) }

1 Useful(for…

1 extraction(with(criteria,

1 modification,

1 analysis,(etc.

How(many(π’s(satisfy(π(5) > π(6)?

Page 7: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Permutation Sets

7

1 A(subset(Π� Sn of(all(permutations(on([n].1 Collection(of(solutions

53

6

2

14 { (1, 3, 4, 2, 5, 6),

(1, 3, 4, 2, 6, 5),(1, 4, 3, 2, 5, 6),(1, 4, 3, 2, 6, 5) }

1 The(number(of(permutations:(n!→ Store(permutations(into(compressed(data(structure

with(operations.

Page 8: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Data structure for Permutation SetsπDD([Minato11]1 Compress(any(permutation(set(with(manipulations.

1 Union,(Intersection,

1 Cartesian(product((((((((((((((((((((((((((((((((((((,

1 Extract(with(criteria((ex.(π(i) = j),(etc.1 Unknown(theoretical(size(bound(in(general.

8

10

τ1,2

τ1,3

τ1,4

{ (2, 1, 3, 4) = τ1,2,(2, 4, 3, 1) = τ1,4 τ1,3,(3, 2, 4, 1) = τ1,4 τ1,2 }

Main(target(of(this(thesis

Page 9: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Topics in the Thesis

9

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

Application Problems

Data structures

πDD

ZDDderive

Chapter(2

Page 10: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

10

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

Chapter(3

πDD

ZDD

Data structures [Reversible(Computation(15]

Page 11: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

11

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

[IEICE Trans.14]

πDD

ZDD

Data structures

Page 12: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

12

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

Section(4.1

ZDD

Data structures

Page 13: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

13

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

Chapter(4

[ISAAC14]

ZDD

Data structures

Page 14: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

14

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

Section(4.5

?

ZDD

Data structures

Page 15: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsTopics in the Thesis

15

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

ZDD

Subgraph

Enumeration

Chapter(5 improves

Data structures

Page 16: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Degree Requirements�Y.(Inoue,(T.(Toda,(and(M.(Minato."Implicit(Generation(of(Pattern1Avoiding(Permutations(by(Using(Permutation(Decision(Diagrams."IEICE(TRANSACTIONS(on(Fundamentals(of(Electronics,(Communications(and(Computer(Sciences,(Vol.E971A,(No.6,(pp.117111179,(June(2014.

�Y.(Inoue and(S.(Minato."An(Efficient(Method(for(Indexing(All(Topological(Orders(of(a(Directed(Graph."Algorithms(and(Computation(1 25th(International(Symposium((ISAAC),pp.1031114(2014.

�Y.(Inoue and(S.(Minato."Improved(Algorithms(for(Debugging(Problems(on(Erroneous(Reversible(Circuits."Reversible(Computation(1 7th(International(Conference,((RC),(pp.1861199,(2015.

16

Section 4.4

Section 3.1

Section 4.3

Page 17: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Degree Requirements�Y.(Inoue,(T.(Toda,(and(M.(Minato."Implicit(Generation(of(Pattern1Avoiding(Permutations(by(Using(Permutation(Decision(Diagrams."IEICE(TRANSACTIONS(on(Fundamentals(of(Electronics,(Communications(and(Computer(Sciences,(Vol.E971A,(No.6,(pp.117111179,(June(2014.

�Y.(Inoue and(S.(Minato."An(Efficient(Method(for(Indexing(All(Topological(Orders(of(a(Directed(Graph."Algorithms(and(Computation(1 25th(International(Symposium((ISAAC),pp.1031114(2014.

�Y.(Inoue and(S.(Minato."Improved(Algorithms(for(Debugging(Problems(on(Erroneous(Reversible(Circuits."Reversible(Computation(1 7th(International(Conference,((RC),(pp.1861199,(2015.

17

Section 4.4

Section 4.3

Section 3.1

Page 18: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsNext Topic

18

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

ZDD

Subgraph

Enumeration

Data structures

Page 19: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

ZDDs [Minato93]�Data(structure(for(a(family(of(sets.

�Compressed(binary(decision(tree(by:

1 delete(nodes(whose(11edge(pointing(to(01terminal,1 merge(the(equivalent(nodes.

�ZDD(supports(several(operations:

1 union,

1 intersection,(etc.

�ZDD(operation(timedepends(only(on

the(size(of(ZDD. 01101000

cccc

b b

a10

10

c

b b

a 10

{ {a, b}, {a, c}, {b, c} }

19

Page 20: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

πDDs [Minato11]�Data(structure(for(a(set(of(permutations.

�Transposition(τi,j:(�Any(permutation(can(be(decomposed(into(sequence(of τi,j.Ex.((2, 4, 3, 1) ← (4, 2, 3, 1) ← (1, 2, 3, 4)

�Transpositions(are(assigned(to(ZDD(nodes.

�πDDs(have(several(operations:1 Cartesian(product,

1 extraction,(etc.

1 Runtime(dependson(the(size(of(πDDs.

10

τ1,2

τ1,3

τ1,4

{ (2, 1, 3, 4) = τ1,2,(2, 4, 3, 1) = τ1,4 τ1,2,(3, 2, 4, 1) = τ1,4 τ1,3 }

τ1,2 τ1,4

20

Page 21: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsNext Topic

21

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

ZDD

Subgraph

Enumeration

Data structures

Page 22: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

x1

x2

x3 y3

y2

y1

0

0

1

0

1

1

1

1

1

1

1

0

g1 g2 g3

01

23

4

567

x1 x2 x3 y3y2y1

0 0 00 00 00

111 10 00

01

11 11

111

0 0 10 0 0

0 010 1 1

0 11011

1 110 01

G = g1g2g3f

⇡f

: controls : targets

Debugging Erroneous Reversible CircuitsProblemInput:(an(objective(function,(an(erroneous(reversible(circuit

Output:(error(positions(and(ways(to(fix(them

Contributions:1 For(single1error(model:(propose(an(algorithm((without(πDDs)(faster(than(the(existing(methods([Wille+09]([Tague+13].

1 For(multiple1error(model:(propose(the(first(debugging(algorithm(by(utilizing(πDDs.

1 Reversible(Circuit:(specify(a(permutation(on({0, 1, …, 2n-1}j1 described(as(a(cascade(of(gates.

22

Page 23: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Cycle-type Partition of Permutation SetsProblemInput:(a(permutation(set

Output:(partition(with(respect(to(cycle1type(equivalence

Contributions:1 A(proposed(πDD1based(algorithm(runs(fast(and(uses(less(memory(than(a(previous(πDD1based(approach([Yamada+12].

1 A(permutation(is(decomposed(into(cycles.

1 Cycle1type(equivalence(=(the(same(topology(of(cycles.

1

2

3

4

5

6

1

2

3

4

5

6

23

Page 24: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsNext Topic

24

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

ZDD

Data structures

Page 25: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Rotation-based πDDs (Rot-πDDs)�Modified(version(of(πDD�Left1rotation(ρi,j:(

�Any(permutation(can(be(decomposed(into(sequence(of ρi,j.

Ex.((3, 2, 4, 1) ← (2, 3, 4, 1) ← (1, 2, 3, 4)

�Left1rotations(are(assigned(to(ZDD(nodes.

�Operations(on(πDDs(are(also(available.

10

ρ1,2

ρ1,3

ρ1,4

{ (2, 1, 3, 4) = ρ1,2,(2, 4, 3, 1) = ρ1,4 ρ1,3,(3, 2, 4, 1) = ρ1,4 ρ1,2 }

ρ1,2 ρ1,4

25

Page 26: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Enumeration of Topological Orders

1 Topological(order:(a(sequence(of(vertices(such(that(the(order(

must(not(contradict(all(edges.

Contributions:1 Give(dynamic(programming(algorithm(for(Rot1πDD(construction.1 Provide(a(Rot1πDD(operation(to(handle(dynamic(edge(addition.1 Show(Rot1πDDs(are(theoretically(preferable(to(πDDs.

Input:(a(directed(graph

Output:(all(topological(orders(in(the(graph

Problem

53

6

2

1 4

53 621 4

26

Page 27: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

1 Dynamic(programming(for(counting:

1 Recursively(compute(the(number(of(topological(orders

for(each(induced(subgraph(of(graph(G:(dpS = Σv�S dpS�{v}.

1 Reduce(search(space:(n! → 2n (n =|V|)

53

6

4

1 2

dp{3,4,5,6} = 2

dp{2,3,4,5,6} = 4

27

Key idea for Rot-πDD construction algorithm

53

6

4

1 2dp{2,4,5,6} = 2 53

6

4

1 2

Page 28: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

1 Permutation(representation(of(search(states:

1 k1suffix:(reverse(of(used(vertices,((n-k)1prefix:(unused(vertices1 (n-k)1prefix(corresponds(to(an(inducing(vertex(set.

1 transposition(τx,y or(left1rotation(ρx,y:use(the(x1th unused(vertex(as(the((n-y)1th vertex.

(2, 3, 4, 5, 6, 1)

ρ2,5

28

Key idea for Rot-πDD construction algorithm

53

6

4

1 2

53

6

4

1 2

(2, 4, 5, 6, 3, 1)

Page 29: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

1 transpositions:(two(different(k1prefixes(represent(the(same(state.1 left1rotation:(k1prefix(is(in(the(increasing(order.

← left1rotations(keep(relative(orders(of(prefix.

(6, 2, 3, 4, 5, 1)

29

Key idea for Rot-πDD construction algorithm

53

6

4

1 2

(6, 5, 3, 4, 2, 1)

(6, 5, 4, 3, 2, 1)

(6, 2, 5, 4, 3, 1)

(6, 4, 5, 2, 3, 1)

(2, 3, 4, 5, 6, 1)

53

6

4

1 2

(3, 4, 5, 6, 2, 1)

(4, 5, 6, 3, 2, 1)

(2, 4, 5, 6, 3, 1)

(4, 5, 6, 2, 3, 1)

× ○

ρ2,5ρ1,5

ρ1,4 ρ1,4

τ3,5τ2,5

τ3,4 τ2,4

Page 30: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

30

Key idea for Rot-πDD construction algorithm

(2, 3, 4, 5, 6, 1)

53

6

4

1 2

(3, 4, 5, 6, 2, 1) (2, 4, 5, 6, 3, 1)

ρ2,5ρ1,5

ρ1,4 ρ1,4

53

6

4

1 2Rot1πDD(for

1 transpositions:(two(different(k1prefixes(represent(the(same(state.1 left1rotation:(k1prefix(is(in(the(increasing(order.

← left1rotations(keep(relative(orders(of(prefix.

Page 31: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

a

b c

d e

14

3 6

2 5

Enumeration of Euler Paths

1 Euler(path:(a(walk(passing(through every(edge(exactly(once.

Contributions:1 Provide(construction(algorithm(of(Rot1πDD(representing(all(Euler(paths(based(on(dynamic(programming(for(counting.

1 Show(Rot1πDDs(are(theoretically(preferable(to(πDDs.

Input:(an(undirected(graph

Output:(all(Euler(paths(in(the(graph

Problem

b→ d → a → b → c → e → d3 2 1 4 6 5

31

Page 32: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Enumeration of Pattern-Avoiding Permutations

Contributions:1 Provide(a(Rot1πDD(construction(algorithm,(which(is(faster(than(a(commonly(used(software((=(PermLab [Albert12]).

1 Reveal(the(advantage(of(Rot1πDDs(against(πDDs.

Input:(permutation(pattern(s),(an(integer(nOutput:(all(the(permutations(on([n] avoiding(the(pattern(s).

Problem

1 Text(perm(τ avoids(pattern(perm(π�no(subsequence(of(τ has(the(same(relative(order(to(π.Ex.(Text((4,(2,(1,(3),(Pattern((3,(1,(2)

32

Page 33: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsNext Topic

33

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

Section(4.5

?

ZDD

Data structures

Page 34: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsChoice of Permutation Decision Diagrams

34

τ2,3

(2, 3, 4, 5, 6, 1)

ρ2,553

6

4

1 2

53

6

4

1 2

(2, 4, 5, 6, 3, 1)

Conduct(experiments(to(investigate(permutation(parameters(

affecting(the(performance(of(decision(diagrams.

1 Focus(on(disorder(measures(as(permutation(parameters:(

Inv,%Dis,%Exc,%Max,%Res,(and(Runs.1 Rot1πDDs(are(preferable(to(πDDs(except(Exc.

Page 35: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Application ProblemsNext Topic

35

Reversible(Circuit

Debugging

Cycle1type

Partition

Euler(Path

Enumeration

Topological(Order

Enumeration

Pattern1avoiding

Perm.(Enumeration

πDD Rot-πDD

ZDD

Subgraph

Enumeration

Data structures

Page 36: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Enumeration of Subgraphs

1 A(ZDD(can(represent(subgraphs(of(a(graph.

1 A(variable(order(of(ZDDs(dramatically(affects(the(size(of(ZDDs.

Input:(an(undirected(graph(and(constraints

Output:(ZDD(for(all(the(subgraph(satisfying(the(constraints

Problem

36

Page 37: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

37

Enumeration of SubgraphsKey observation to minimize ZDDs1 The(size(of(ZDDs(is(related(to(the(path1width(of(a(graph.

1 Propose(a(method(computing(an(edge(order(with(small(path1width.

1 Improves(the(size(of(ZDDs(for(benchmark.

Contributions:

Page 38: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Conclusions

1 Utilize(πDDs(for(two(problems.1 Propose(Rot1πDDs(and(utilize(it(for(three(problems.

38

Apply%decision%diagrams%to%permutation%problems.

1 Properties(of(individual(problems:(swaps(and(relative(orders.

1 Permutation(parameters:(disorder(measures.

Analyze%the%performance%of%decision%diagrams%experimentally%and%theoretically.

Page 39: Thesis Defence for Doctor of Information Science

Doctoral(Thesis(Defense(Presentation(

Open Problems�Optimization(schemes(on(permutation(decision(diagrams.

�Reveal(theoretical(relations(between(permutation(decision(diagrams(and(permutation(parameters.

�Generalized(framework(for(permutation(decision(diagram(based(on(generators(of(permutation(groups.

1 Transpositions(and(left1rotations(are(generators of

a(symmetric(group.

39