Thesis Defence for Doctor of Information Science

Post on 21-Mar-2017

88 views 3 download

Transcript of Thesis Defence for Doctor of Information Science

Studies on Permutation Set ManipulationBased on Decision Diagrams

January 23, 2017

Large-Scale Knowledge Processing LaboratoryYuma Inoue

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

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.

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

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)

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)?

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.

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

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

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]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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)

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

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.

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

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

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

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.

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

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

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:

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.

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