# Set Partitions in R. 1. Introduction

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Set Partitions in R Robin K. S. Hankin Luke J. West Auckland University of TechnologyNational Oceanography Centre, Southampton Abstract This vignette is based on Hankin (2007a). ThisshortpaperintroducesacodesnippetintheformofanRfunctionthatenumerates all possible partitions of a finite set given the sizes of the equivalence classes. Three combinatorial problems are solved using the software: one from bioinformatics, one from scheduling theory, and one from forensic science. Keywords: Set Partitions, Forensic Science, Enumerative Combinatorics, R. 1. Introduction A partition of a set S = {1,2,...,n} is a family of sets T 1,T 2,...T k satisfying 1. T i T j = if i j 2. k i=1 T k = S 3. T i for i = 1,...,k. There are exactly fifteen ways to partition a set of four elements, shown in Table 1 using standard notation. Here (13)(2)(4) represents the same partition as (2)(4)(31): the induced equivalence relation is identical. Either one may be represented as 1213, indicating that elements one and three are in the first equivalence class ( 1 ), element two in the second, and element four in the third. In Table 1, two partitions appear in the same column if their shape (that is, the size distribution of the equivalence classes, formally defined in Section 2 below) is the same. The shapes correspond to integer partitions in standard form (Hankin 2005), and appear in standard order (Andrews 1998). This suggests a natural method for enumerating the equivalence relations on a set of cardinality n: enumerate the integer partitions of n, and for each of these, enumerate the distinct equivalence relations of that shape. (1234) (123)(4) (12)(34) (12)(3)(4) (1)(2)(3)(4) (124)(3) (13)(24) (13)(2)(4) (134)(2) (14)(23) (14)(2)(3) (234)(1) (23)(1)(4) (24)(1)(3) (34)(1)(2) Table 1: The fifteen partitions of a set of four elements

2 2 Set partitions in R Thispaperintroducessoftwarethatenumerates 1 allsetpartitionsofasetofaspecified(finite) size. The new functionality presented here is given by setparts(), an R(R Development Core Team 2007) wrapper for C++ code, currently part of the partitions package (Hankin 2005, 2007b), version 1.7-3, available under the GPL from CRAN, Function setparts() takes a single argument a, coerced to integer mode. The default case is that of a being a vector of length greater than one, in which case it returns all partitions of a set of sum(a) elements into equivalence classes of the sizes of the elements of a; in the case of a being of length one, it returns all partitions of a set of a elements. If a is a matrix, it returns all equivalence classes with sizes of the columns of a. 2. Algorithms In this paper, we present an algorithm that lists all partitions of a given shape. Formally, the shape λ = (λ 1,...λ k ) of a partition is given by the sizes of the T i ; these are conventionally given in standard (i.e. non-increasing) order. Thus λ is an integer partition of n (Hankin 2005), written λ n. The distinct equivalence relations may be enumerated, for a given integer partition, using a recursive algorithm that operates on partially filled partitions. Consider an integer partition λ = (λ 1,...λ k ), also written ( 1 f 1,...,n fn) ; the latter notation indicates that f i elements of λ are equal to i. The algorithm used here fills the equivalence classes sequentially from left to right using a technique originally due to Killworth (2007). The partitions are ordered from largest to smallest; non-empty ties are broken lexicographically. This prevents the reporting of identical equivalence classes (to see this, consider the two identical equivalence relations (123)(45)(67)(8) and (123)(67)(45)(8): the second descriptor does not occur in the algorithm because the third equivalence class precedes the second). Thus, starting with an empty partition of a given size, one may apply the algorithm detailed in Figure 1 recursively until each full partition is recorded Performance and complexity The total number of set partitions corresponding to a particular integer partition λ is given by elementary combinatorial arguments as n! k i=1 λ i! n j=1 f j!. (1) However, the number of integer partitions increases rapidly with n; the exact value is given by the partition function P(n) of the package (Hankin 2005), but the asymptotic form given by Hardy and Ramanujan (1918), viz. P(n) = eπ 2n/3 4n 3 (1+O(n 1 ) ) (2) 1 The transitive verb to enumerate can be used in two senses: firstly, to calculate the number of ; and secondly, to list each occurrence of, as if for the purpose of counting. This paper adopts the second usage.

3 Robin K. S. Hankin, Luke G. West 3 (...)(..)(..) (1..)(..)(..) (2..)(..)(..) (3..)(..)(..) (4..)(..)(..) (5..)(..)(..) (6..)(..)(..) (7..)(..)(..) (34.)(..)(..) (35.)(..)(..) (36.)(..)(..) (37.)(..)(..) (356)(..)(..) (357)(..)(..) A A (356)(1.)(..) (356)(2.)(..) (356)(4.)(..) (356)(7.)(..) (356)(21)(..) (356)(24)(..) (356)(27)(..) (356)(21)(4.) (356)(21)(7.) (367)(24)(58) Figure 1: The algorithm used to enumerate set partitions of a given shape. Unfilled positions are indicated by a dot. Of the partitions at a given level, the children of one are shown. The initial empty configuration is filled from left to right from a pool of unused elements; equivalence classes are ordered by size (largest first) and ties are broken lexicographically at runtime to suppress reporting of identical equivalence relations in which two classes are transposed. Within a class, the elements of partially- and completely- filled equivalence classes are ordered in increasing order. A cross indicates an illegal configuration in which the partially filled class cannot be completed as insufficient elements remain in the pool; the algorithm prunes such configurations as soon as they are detected. Successful termination of the algorithm, viz. a filled partition, is indicated by a tick ( check mark ) at which point the filled equivalence class is reported, and the recursion bottoms out shows that the rate of growth is rapid. The number of set partitions of a set of size n is given by the Bell numbers B(n) (Rota 1964), which grow much more rapidly than the partition function; an asymptotic form was given by Bender (1974): B(n) = t n t e t 1 (logt) 1/2 (1+o(n)) (3) where t = e W 0(n 1/2). Here W 0 ( ) denotes the principal branch of the Lambert W function (Corless, Gonnet, Hare, Jeffrey, and Knuth 1996), provided with the gsl package (Hankin 2006). Equation 3 is easily evaluated and can be used to give a feel for the magnitude of the Bell numbers. Note that convergence is quite slow; for example, B(10) = (compare about from Equation 3), and B(100) (compare ). 3. Applications Many problems in science and industry involve the optimization of some desideratum over a finite number of options. Such optimization is frequently soluble within the discipline of computational combinatorics: simply enumerate the possible solutions and choose the best. One advantage of this method over heuristic optimization techniques such as tabu search (Glover 1997) is that by enumerating all possible solutions, one is certain to find the global optimum. In this section we present three examples of setparts() in use: one from bioinformatics, one from multiprocessor scheduling, and one from forensic science.

4 4 Set partitions in R 3.1. Bioinformatics In studies of allelic segregation under disomic inheritance, one situation encountered is that of enumerating the possible arrangements of alleles on genetic loci 2. Rodzen and May (2002) consider the white sturgeon; there is much uncertainty surrounding the organization of this species s genome. Many alleles of interest may be identified in the genome of the white sturgeon. Sometimes these are known to be either monosomic or disomic, but it is not known which alleles are colocated, nor which alleles are monosomic and which are disomic. If researchers have identified, say, five alleles (conventionally labelled 1-5), and further that two pairs of these are colocated at two disomic loci and one is monosomic, then there are a number of possible arrangements for these alleles on the chromosome. In the language of the package, we wish to enumerate the partitions of a set of five elements (the alleles) into equivalence classes of size 2,2,1 (the loci). The five alleles are arranged into two from one disomic locus, two from another disomic locus, and one from a monosomic locus. Enumerating the possible arrangements is accomplished using the setparts() function: > setparts(c(2,2,1)) [1,] [2,] [3,] [4,] [5,] Each column comprises two 1s, two 2s, and one 3. Thus the first column, x=12321, say, indicates that alleles 1 and 5[which(x==1)] occur at the first locus(which is disomic); alleles 2 and 4 [which(x==2)] at the second (also disomic); and allele 3 [which(x==3)] at the third locus, which is monosomic. This could be written (15)(24)(3); the R idiom would be > a <- c(1,2,3,2,1) > split(seq_along(a),a) \$`1` [1] 1 5 \$`2` [1] 2 4 \$`3` [1] 3 2 A chromosome is a double helix of DNA, typically occurring in matched pairs in cell nuclei. A locus is an identifiable position on a chromosome pair; a gene is a distinct sequence of DNA base pairs occurring at a locus; an allele is one of a number of distinguishable forms for a particular gene; the genome is the complete set of genes present in the chromosomes; a monosomic locus contains two copies of one, and a disomic locus two different, alleles. Two alleles at the same locus are said to be colocated. A monosomic (disomic) allele is one that occurs at a monosomic (disomic) locus in a given genome. A gamete is a sequence of alleles chosen from the genome: monosomic and disomic alleles are chosen with probability 1 and 0.5 respectively.

5 Robin K. S. Hankin, Luke G. West 5 [use listparts(c(2,2,1)) to see all possible equivalence classes]. Two examples of electrophoresis gels, corresponding to the partitions of the first and last columns respectively, are shown in figure 2, which is analogous to Figure 1 of Rodzen and May (2002). parent gametes parent gametes Figure 2: Two electrophoresis gels showing the possible bands that can occur with two different arrangements of alleles. In both gels, two loci are disomic, and one is monosomic. Left, gel corresponding to (15)(24)(3), or 12321; this would mean that alleles 1 and 5 are at one disomic locus, alleles 2 and 4 at another, and allele 3 at a monosomic locus. Thus band combinations 1-5 and 2-4 are absent. The gel on the right corresponds to (1)(24)(35), or Scheduling theory The augmented multiprocessing model is an abstract description of a certain class of problems that occurs frequently in the field of scheduling theory (Garey and Johnson 1975). We consider a simple variant of the augmented multiprocessing model (specifically, the three partition problem, which is known to be NP-complete) and solve it using the software presented here. Consider a set of tasks T = {T 1,...,T m }; task i requires time τ i for its completion in the sense that if it begins executing at time t it will complete at time t+τ i. Each of these tasks is to be executed by one of n processors. It is desired to allocate the tasks among the processors so that all tasks are completed in the minimum possible time. Thus if there are m = 4 tasks with T i requiring τ i = i time units ( seconds ) for completion, and n = 2 processors, it is clear that allocating tasks 1 and 4 to one processor, and tasks 2 and 3 to the second is optimal. This would correspond to the set partition (14)(23); the time required is 1+4 = 2+3 = 5 seconds. Other allocations such as (24)(13) would take longer (2+4 = 6 seconds). More complex examples are not so straightforward. Consider the case where m = 9 and again τ i = i; now there are n = 3 processors. The possible task schedules may be enumerated using the restrictedparts() function 3 of the partitions package: > jj <- setparts(restrictedparts(m,n,include.zero=false)) > summary(jj) [1,] [2,] [3,] Recall that restrictedparts(a,b) enumerates the possible partitions of a into at most b parts.

6 6 Set partitions in R [4,] [5,] [6,] [7,] [8,] [9,] Each column corresponds to a task allocation schedule. The first column, for example, indicates that tasks 1,2,3,4,7,8,9 are allocated to processor 1, task 5 to processor 2, and task 6 to processor 3 and the set partition might be written ( )(5)(6). In the matrix, the maximum entry of each column is 3, showing that all three processors are always used (setting include.zero to TRUE would relax this requirement and allow some columns to correspond to allocations in which only one or two processors are allocated a nonzero number of tasks). The objective function to be minimized is just the time for the processor which finished last: > tau <- 1:9 > slowest <- function(x) max(tapply(tau, x, sum)) The minimal objective function is clearly 45/3=15. Identifying allocations that attain this bound is straightforward: > time.taken <- apply(jj,2,slowest) > minimal.time <- sum(tau)/n > jj[,time.taken == minimal.time] [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [1,] [2,] [3,] [4,] [5,] [6,] [7,] [8,] [9,] Thus 9 allocations attain the maximal possible efficiency: a conclusion difficult to achieve without enumeration. These optima may be differentiated using some secondary characteristic, such as even distribution of the number of tasks among the processors. This would prescribe either the eighth or ninth columns, which both allocate three tasks to each processor Forensic science Inthefieldofforensicscience,onesituationsometimesencounteredisthefollowing. CrimesC j, where i = 1,...,n have been committed; it is desired to infer how many perpetrators are responsible and which crimes each perpetrator is responsible for. One prominent example would be multiple unsolved homicides (Roberts 2003).

7 Robin K. S. Hankin, Luke G. West 7 Evidence at each of the n crime scenes is available in the form of m Bernoulli random variables that indicate various forensic characteristics at the crime scene (examples might include presence or absence of a weapon, forced entry, etc). The evidence may be organized in a m-by-n matrix E of zeroes and ones indicating whether forensic characteristic i was true at crime scene j, where 1 i m and 1 j n. A given row of E thus corresponds to a particular type of evidence; if perpetrator k committed crime j, we would have E ij = 1 with probability p ik, specific to perpetrator k. For each evidence i, it is assumed that each perpetrator has a p ik chosen at random from a beta distribution with parameters α i,β i for 1 i m, and that all perpetrators have the same α i,β i ; these will be known (or at least estimated) from previous studies of similar crimes. An example is shown below. crime evidence C1 C2 C3 E E E E E Thus in this example there are n = 3 crimes and m = 5 forensic characteristics. Observe that C1 and C2 have identical evidence, and that C3 has contrary evidence. This would suggest that there are exactly two perpetrators: one responsible for C1 and C2, and one for C3, corresponding to partition (12)(3); the hypothesis that this is the case is written H [1,1,2]. Considering a single type of evidence, and a single perpetrator, the probability of observing a successes and b failures is Γ(α+β) 1 [ ] (a+b)! p a (1 p) b p α 1 (1 p) β 1 dp = (a+b)! Γ(α+β) Γ(α)Γ(β) Γ(a+α)Γ(b+β) Γ(α)Γ(β) p=0 a!b! a!b! Γ(a+b+α+β). Here the probability p is integrated over its range, weighted by its prior (the posterior would also be a beta distribution, with parameters α+a and β +b). Now consider a set partition = T 1,...,T r of crimes; identify a perpetrator with each equivalence class of crimes and observe that a single perpetrator has m specific values of p i, 1 i m and acts independently of other perpetrators. The likelihood of is then L( ) = C ( ) Γ(α+β) r Γ(α)Γ(β) r m k=1i=1 Γ(a ik +α i )Γ(b ik +β i ) Γ(a ik +b ik +α i +β i ) where a ik = j T k E ij and b ik = j T k 1 E ij are the total successes and failures for evidence i due to perpetrator k (under H ). Here C denotes an arbitrary multiplicative constant. It is interesting to note that the case α = β = 1 is not uninformative in this context, even though this induces a uniform prior distribution on p. To see this, consider the first line of the five by three matrix above [0,0,1].

8 8 Set partitions in R The likelihood function for this row is on five partitions: L(H [1,1,1] ) = L(H [1,2,1] ) = L(H [1,1,2] ) = L(H [2,1,1] ) = L(H [1,2,3] ) = Γ(α+1)Γ(β +2) Γ(α+β +3) Γ(α+1)Γ(β +1) Γ(α+β +2) Γ(α)Γ(β +2) Γ(α+β +2) Γ(α+1)Γ(β) Γ(α+β +1) Γ(α+1)Γ(β +1) Γ(α+β +2) Γ(α)Γ(β +1) Γ(α+β +1) ( ) Γ(α+β) 1 Γ(α)Γ(β) ( Γ(α)Γ(β +1) Γ(α+β) Γ(α+β +1) Γ(α)Γ(β) ( ) Γ(α+β) 2 Γ(α)Γ(β) ( Γ(α)Γ(β +1) Γ(α+β) Γ(α+β +1) Γ(α)Γ(β) Γ(α)Γ(β +1) Γ(α+β +1) Γ(α+1)Γ(β) Γ(α+β +1) ) 2 ) 2 ( ) Γ(α+β) 3. Γ(α)Γ(β) Thus if α = β = 1 the likelihood function is L(H [1,1,1] ) = C/12 L(H [1,2,1] ) = C/12 L(H [1,1,2] ) = C/6 L(H [2,1,1] ) = C/12 L(H [1,2,3] ) = C/8 so the highest likelihood is indeed that of H [1,1,2]. It is also instructive to assume α = β and consider the limit as α 0. This would correspond to perpetrators having either a very small p, or p close to 1, intermediate values being rare. To first order in α: L(H [1,1,1] ) = C α/4 L(H [1,2,1] ) = C α/4 L(H [1,1,2] ) = C (1 α)/4 L(H [2,1,1] ) = C α/4 L(H [1,2,3] ) = C 1/8 so the maximum likelihood partition would again be H [1,1,2] ; but one would not be able to reject the hypothesis that there are three distinct perpetrators (that is, H [1,2,3] ) at the two units of support level. As a final example, consider the case where α = β and α. This corresponds to each perpetrator leaving positive evidence with probability 1 2. The five likelihoods all tend to the same limit. Generalization to arbitrary factors These ideas have a natural generalization to arbitrary factors. The beta distribution becomes a Dirichlet distribution and the posterior probability becomes ( a l )! al! Γ( α l ) Γ(αl ) Γ(al +α l ) Γ( a l + α l )

9 Robin K. S. Hankin, Luke G. West 9 where outcome l is observed with frequency a l and the corresponding prior distributions are Dirichlet with parameters α i = (α i1,...,α iu ). The likelihood is then [ n (Γ( l L( ) = C α ) r r ] il) l Γ(a ikl +α il ) l Γ(α il) Γ( l (a (4) ikl +α il )) i=1 where a ikl is the frequency of outcome l for evidence i and perpetrator k, under H. k=1 Example Consider a case where seven crimes have been committed; there are five forensic characteristics. The evidence matrix is as follows: crime evidence C1 C2 C3 C4 C5 C6 C7 E E E E E Each column corresponds to a crime and each row corresponds to a forensic characteristic. Rows 1 and 2 are Bernoulli: each is either 1 or 2. Rows 3-5 are Dirichlet with four possible outcomes. In this case, it is assumed that the prior is uniform, viz α 1 = α 2 = 1 for rows 1 and 2 and α 1 = α 2 = α 3 = α 4 = 1 for rows 3-5. Figure 3 shows the likelihood and support for each of the distinct set partitions on a set of six elements: variable support is from Equation 4. The maximum likelihood estimator is given by > sp <- setparts(7) > sp[,which.max(support)] [1] which could be written (3456)(27)(1). This suggests that crimes 3-6 were committed by the same perpetrator, crimes 2 and 7 by another perpetrator, and crime 1 by a third perpetrator. Note that the maximum likelihood hypothesis is unique. The likelihood function may be used to identify those hypotheses that cannot be rejected on the grounds of insufficient support. There are 9 partitions that have fewer than two units of support less than the maximum. These are: > sp[, support > -2] partition crime H1 H2 H3 H4 H5 H6 H7 H8 H9 C

10 10 Set partitions in R hypothesis likelihood hypothesis support Figure 3: The likelihood (left) and support (right) for each of the 877 partitions on a set of seven elements. The horizontal line shows two units of support less than the maximum

11 Robin K. S. Hankin, Luke G. West 11 C C C C C C and the supports for these hypotheses are > support[support > -2] [1] [6] respectively. Interpretation of this result is not straightforward. One may assert that crimes C3 and C6 were committed by the same perpetrator, and that certain pairs of crimes (specifically C2-C3, C2- C4, C2-C5, C2-C6, C3-C7, C4-C7, C5-C7, and C6-C7) were committed by different perpetrators: for any hypothesis that does not satisfy these criteria, one could gain at least two units of support by adopting instead the best supported hypothesis H [3,2,1,1,1,1,2], corresponding to (3456)(27)(1). 4. Conclusions Enumeration of set partitions is required in several branches of computational combinatorics. The software discussed in this code snippet enumerates set partitions for finite sets, under a variety of restrictions on the sizes of the induced equivalence classes and was used to solve three problems drawn from diverse applications in computational statistics. Acknowledgement We would like to acknowledge the many stimulating and insightful comments made on the R-help list while preparing this software. References Andrews GE (1998). The Theory Of Partitions. Cambridge University Press. Bender EA (1974). Asymptotic Methods in Enumeration. SIAM Review, 16(4), 485. Corless RM, Gonnet GH, Hare DEG, Jeffrey DJ, Knuth DE (1996). On the Lambert W Function. Advances in Computational Mathematics, 5, Garey MR, Johnson DS (1975). Complexity Results for Multiprocessor Scheduling Under Resource Constraints. SIAM Journal of Computing, 4(4),

12 12 Set partitions in R Glover F (1997). Tabu Search. Kluwer Academic. Hankin RKS (2005). Additive integer partitions in R. Journal of Statistical Software, Code Snippets, 16(1). Hankin RKS (2006). Special Functions in R: Introducing the gsl Package. R News, 6(4), URL Hankin RKS (2007a). Set partitions in R. Journal of Statistical Software, Code Snippets, 23(2). Hankin RKS (2007b). Urn sampling without replacement: enumerative combinatorics in R. Journal of Statistical Software, Code Snippets, 17(1). Hardy GH, Ramanujan S (1918). Asymptotic Formulæ in Combinatorial Analysis. Proceedings of the London Mathematical Society, 17, Series 2. Killworth P (2007). Personal Communication. R Development Core Team(2007). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria. ISBN , URL http: // Roberts AR (2003). Critical Issues in Crime and Justice. Sage Publications. Rodzen JA, May B (2002). Inheritance of Microsatellite Loci in the White Sturgeon (Acipenser Transmontanus). Genome, 45, Rota GC (1964). The Number of Partitions of a Set. The American Mathematical Monthly, 71(5), Affiliation: Robin K. S. Hankin Auckland University of Technology AUT Tower Wakefield Street Auckland, New Zealand Luke J. West National Oceanography Centre, Southampton European Way Southampton SO14 3ZH United Kingdom

### Recreational mathematics with R: introducing the magic package

Recreational mathematics with R: introducing the magic package Robin K. S. Hankin Abstract The R computer language (R Development Core Team 2004) has been applied with a great deal of success to a wide

### Direct Methods for Solving Linear Systems. Linear Systems of Equations

Direct Methods for Solving Linear Systems Linear Systems of Equations Numerical Analysis (9th Edition) R L Burden & J D Faires Beamer Presentation Slides prepared by John Carroll Dublin City University

### max cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x

Linear Programming Linear programming refers to problems stated as maximization or minimization of a linear function subject to constraints that are linear equalities and inequalities. Although the study

### Subsets of Euclidean domains possessing a unique division algorithm

Subsets of Euclidean domains possessing a unique division algorithm Andrew D. Lewis 2009/03/16 Abstract Subsets of a Euclidean domain are characterised with the following objectives: (1) ensuring uniqueness

### Mathematical Induction

Chapter 2 Mathematical Induction 2.1 First Examples Suppose we want to find a simple formula for the sum of the first n odd numbers: 1 + 3 + 5 +... + (2n 1) = n (2k 1). How might we proceed? The most natural

### List of Standard Counting Problems

List of Standard Counting Problems Advanced Problem Solving This list is stolen from Daniel Marcus Combinatorics a Problem Oriented Approach (MAA, 998). This is not a mathematical standard list, just a

### ECEN 5682 Theory and Practice of Error Control Codes

ECEN 5682 Theory and Practice of Error Control Codes Convolutional Codes University of Colorado Spring 2007 Linear (n, k) block codes take k data symbols at a time and encode them into n code symbols.

### Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

### Biology Behind the Crime Scene Week 4: Lab #4 Genetics Exercise (Meiosis) and RFLP Analysis of DNA

Page 1 of 5 Biology Behind the Crime Scene Week 4: Lab #4 Genetics Exercise (Meiosis) and RFLP Analysis of DNA Genetics Exercise: Understanding how meiosis affects genetic inheritance and DNA patterns

### Circuits 1 M H Miller

Introduction to Graph Theory Introduction These notes are primarily a digression to provide general background remarks. The subject is an efficient procedure for the determination of voltages and currents

### COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS Alexander Burstein Department of Mathematics Howard University Washington, DC 259, USA aburstein@howard.edu Sergey Kitaev Mathematics

### Introduction to Flocking {Stochastic Matrices}

Supelec EECI Graduate School in Control Introduction to Flocking {Stochastic Matrices} A. S. Morse Yale University Gif sur - Yvette May 21, 2012 CRAIG REYNOLDS - 1987 BOIDS The Lion King CRAIG REYNOLDS

### Ecient approximation algorithm for minimizing makespan. on uniformly related machines. Chandra Chekuri. November 25, 1997.

Ecient approximation algorithm for minimizing makespan on uniformly related machines Chandra Chekuri November 25, 1997 Abstract We obtain a new ecient approximation algorithm for scheduling precedence

### Cloud Storage and Online Bin Packing

Cloud Storage and Online Bin Packing Doina Bein, Wolfgang Bein, and Swathi Venigella Abstract We study the problem of allocating memory of servers in a data center based on online requests for storage.

### Catalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni- versity.

7 Catalan Numbers Thomas A. Dowling, Department of Mathematics, Ohio State Uni- Author: versity. Prerequisites: The prerequisites for this chapter are recursive definitions, basic counting principles,

### Solution of Linear Systems

Chapter 3 Solution of Linear Systems In this chapter we study algorithms for possibly the most commonly occurring problem in scientific computing, the solution of linear systems of equations. We start

### The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company Sérgio Garcia Panzo Dongala November 2008 Abstract In 2007 the challenge organized by the French Society of Operational

### Package forensic. February 19, 2015

Type Package Title Statistical Methods in Forensic Genetics Version 0.2 Date 2007-06-10 Package forensic February 19, 2015 Author Miriam Marusiakova (Centre of Biomedical Informatics, Institute of Computer

### A Constraint Programming Application for Rotating Workforce Scheduling

A Constraint Programming Application for Rotating Workforce Scheduling Markus Triska and Nysret Musliu Database and Artificial Intelligence Group Vienna University of Technology {triska,musliu}@dbai.tuwien.ac.at

### December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation

### A Tool for Generating Partition Schedules of Multiprocessor Systems

A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.

### MINITAB ASSISTANT WHITE PAPER

MINITAB ASSISTANT WHITE PAPER This paper explains the research conducted by Minitab statisticians to develop the methods and data checks used in the Assistant in Minitab 17 Statistical Software. One-Way

### The Conference Call Search Problem in Wireless Networks

The Conference Call Search Problem in Wireless Networks Leah Epstein 1, and Asaf Levin 2 1 Department of Mathematics, University of Haifa, 31905 Haifa, Israel. lea@math.haifa.ac.il 2 Department of Statistics,

### 1 Introduction to Counting

1 Introduction to Counting 1.1 Introduction In this chapter you will learn the fundamentals of enumerative combinatorics, the branch of mathematics concerned with counting. While enumeration problems can

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE Subodha Kumar University of Washington subodha@u.washington.edu Varghese S. Jacob University of Texas at Dallas vjacob@utdallas.edu

### Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

### This chapter describes set theory, a mathematical theory that underlies all of modern mathematics.

Appendix A Set Theory This chapter describes set theory, a mathematical theory that underlies all of modern mathematics. A.1 Basic Definitions Definition A.1.1. A set is an unordered collection of elements.

### Math 312 Homework 1 Solutions

Math 31 Homework 1 Solutions Last modified: July 15, 01 This homework is due on Thursday, July 1th, 01 at 1:10pm Please turn it in during class, or in my mailbox in the main math office (next to 4W1) Please

### A Brief Study of the Nurse Scheduling Problem (NSP)

A Brief Study of the Nurse Scheduling Problem (NSP) Lizzy Augustine, Morgan Faer, Andreas Kavountzis, Reema Patel Submitted Tuesday December 15, 2009 0. Introduction and Background Our interest in the

### 3. Recurrence Recursive Definitions. To construct a recursively defined function:

3. RECURRENCE 10 3. Recurrence 3.1. Recursive Definitions. To construct a recursively defined function: 1. Initial Condition(s) (or basis): Prescribe initial value(s) of the function.. Recursion: Use a

### DETERMINANTS. b 2. x 2

DETERMINANTS 1 Systems of two equations in two unknowns A system of two equations in two unknowns has the form a 11 x 1 + a 12 x 2 = b 1 a 21 x 1 + a 22 x 2 = b 2 This can be written more concisely in

### Section Notes 3. The Simplex Algorithm. Applied Math 121. Week of February 14, 2011

Section Notes 3 The Simplex Algorithm Applied Math 121 Week of February 14, 2011 Goals for the week understand how to get from an LP to a simplex tableau. be familiar with reduced costs, optimal solutions,

### A Formalization of the Turing Test Evgeny Chutchev

A Formalization of the Turing Test Evgeny Chutchev 1. Introduction The Turing test was described by A. Turing in his paper [4] as follows: An interrogator questions both Turing machine and second participant

### The Relative Worst Order Ratio for On-Line Algorithms

The Relative Worst Order Ratio for On-Line Algorithms Joan Boyar 1 and Lene M. Favrholdt 2 1 Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark, joan@imada.sdu.dk

### CHAPTER 17. Linear Programming: Simplex Method

CHAPTER 17 Linear Programming: Simplex Method CONTENTS 17.1 AN ALGEBRAIC OVERVIEW OF THE SIMPLEX METHOD Algebraic Properties of the Simplex Method Determining a Basic Solution Basic Feasible Solution 17.2

### Mathematics Course 111: Algebra I Part IV: Vector Spaces

Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are

### Mendelian Genetics. Lab Exercise 13. Contents. Objectives. Introduction

Lab Exercise Mendelian Genetics Contents Objectives 1 Introduction 1 Activity.1 Forming Gametes 2 Activity.2 Monohybrid Cross 3 Activity.3 Dihybrid Cross 4 Activity.4 Gene Linkage 5 Resutls Section 8 Objectives

### Probability and Statistics

CHAPTER 2: RANDOM VARIABLES AND ASSOCIATED FUNCTIONS 2b - 0 Probability and Statistics Kristel Van Steen, PhD 2 Montefiore Institute - Systems and Modeling GIGA - Bioinformatics ULg kristel.vansteen@ulg.ac.be

### Lecture 3: Finding integer solutions to systems of linear equations

Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture

### On the Relationship between Classes P and NP

Journal of Computer Science 8 (7): 1036-1040, 2012 ISSN 1549-3636 2012 Science Publications On the Relationship between Classes P and NP Anatoly D. Plotnikov Department of Computer Systems and Networks,

### Gambling Systems and Multiplication-Invariant Measures

Gambling Systems and Multiplication-Invariant Measures by Jeffrey S. Rosenthal* and Peter O. Schwartz** (May 28, 997.. Introduction. This short paper describes a surprising connection between two previously

### 4. Joint Distributions

Virtual Laboratories > 2. Distributions > 1 2 3 4 5 6 7 8 4. Joint Distributions Basic Theory As usual, we start with a random experiment with probability measure P on an underlying sample space. Suppose

### A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem

American Journal of Industrial and Business Management, 2016, 6, 774-789 Published Online June 2016 in SciRes. http://www.scirp.org/journal/ajibm http://dx.doi.org/10.4236/ajibm.2016.66071 A Study of Crossover

### 6 Gaussian Elimination

G1BINM Introduction to Numerical Methods 6 1 6 Gaussian Elimination 61 Simultaneous linear equations Consider the system of linear equations a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 +

### Bayesian analysis of genetic population structure using BAPS

Bayesian analysis of genetic population structure using BAPS p S u k S u p u,s S, Jukka Corander Department of Mathematics, Åbo Akademi University, Finland The Bayesian approach to inferring genetic population

### 1 Polyhedra and Linear Programming

CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

### Best Monotone Degree Bounds for Various Graph Parameters

Best Monotone Degree Bounds for Various Graph Parameters D. Bauer Department of Mathematical Sciences Stevens Institute of Technology Hoboken, NJ 07030 S. L. Hakimi Department of Electrical and Computer

### 1 Gaussian Elimination

Contents 1 Gaussian Elimination 1.1 Elementary Row Operations 1.2 Some matrices whose associated system of equations are easy to solve 1.3 Gaussian Elimination 1.4 Gauss-Jordan reduction and the Reduced

### It is not immediately obvious that this should even give an integer. Since 1 < 1 5

Math 163 - Introductory Seminar Lehigh University Spring 8 Notes on Fibonacci numbers, binomial coefficients and mathematical induction These are mostly notes from a previous class and thus include some

### Analysis of a Production/Inventory System with Multiple Retailers

Analysis of a Production/Inventory System with Multiple Retailers Ann M. Noblesse 1, Robert N. Boute 1,2, Marc R. Lambrecht 1, Benny Van Houdt 3 1 Research Center for Operations Management, University

### Journal of Statistical Software

JSS Journal of Statistical Software August 26, Volume 16, Issue 8. http://www.jstatsoft.org/ Some Algorithms for the Conditional Mean Vector and Covariance Matrix John F. Monahan North Carolina State University

### ENUMERATION OF UNIQUELY SOLVABLE OPEN SURVO PUZZLES

ENUMERATION OF UNIQUELY SOLVABLE OPEN SURVO PUZZLES SEPPO MUSTONEN 30 OCTOBER 2007 1. Introduction In an m n Survo puzzle an m n table has to be filled by integers 1, 2,..., mn in such a way that the their

### Regular Languages and Finite Automata

Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a

### COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH ZACHARY ABEL 1. Introduction In this survey we discuss properties of the Higman-Sims graph, which has 100 vertices, 1100 edges, and is 22 regular. In fact

### 3. Examples of discrete probability spaces.. Here α ( j)

3. EXAMPLES OF DISCRETE PROBABILITY SPACES 13 3. Examples of discrete probability spaces Example 17. Toss n coins. We saw this before, but assumed that the coins are fair. Now we do not. The sample space

### Mendelian Genetics. I. Background

Mendelian Genetics Objectives 1. To understand the Principles of Segregation and Independent Assortment. 2. To understand how Mendel s principles can explain transmission of characters from one generation

### MATH4427 Notebook 2 Spring 2016. 2 MATH4427 Notebook 2 3. 2.1 Definitions and Examples... 3. 2.2 Performance Measures for Estimators...

MATH4427 Notebook 2 Spring 2016 prepared by Professor Jenny Baglivo c Copyright 2009-2016 by Jenny A. Baglivo. All Rights Reserved. Contents 2 MATH4427 Notebook 2 3 2.1 Definitions and Examples...................................

### JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February

### Poisson Models for Count Data

Chapter 4 Poisson Models for Count Data In this chapter we study log-linear models for count data under the assumption of a Poisson error structure. These models have many applications, not only to the

### Uniform Multicommodity Flow through the Complete Graph with Random Edge-capacities

Combinatorics, Probability and Computing (2005) 00, 000 000. c 2005 Cambridge University Press DOI: 10.1017/S0000000000000000 Printed in the United Kingdom Uniform Multicommodity Flow through the Complete

### 6.4 Normal Distribution

Contents 6.4 Normal Distribution....................... 381 6.4.1 Characteristics of the Normal Distribution....... 381 6.4.2 The Standardized Normal Distribution......... 385 6.4.3 Meaning of Areas under

### Week 5 Integral Polyhedra

Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory

### A simple analysis of the TV game WHO WANTS TO BE A MILLIONAIRE? R

A simple analysis of the TV game WHO WANTS TO BE A MILLIONAIRE? R Federico Perea Justo Puerto MaMaEuSch Management Mathematics for European Schools 94342 - CP - 1-2001 - DE - COMENIUS - C21 University

### The Simplex Method. What happens when we need more decision variables and more problem constraints?

The Simplex Method The geometric method of solving linear programming problems presented before. The graphical method is useful only for problems involving two decision variables and relatively few problem

### Notes on Factoring. MA 206 Kurt Bryan

The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor

### The Characteristic Polynomial

Physics 116A Winter 2011 The Characteristic Polynomial 1 Coefficients of the characteristic polynomial Consider the eigenvalue problem for an n n matrix A, A v = λ v, v 0 (1) The solution to this problem

### CS420/520 Algorithm Analysis Spring 2010 Lecture 04

CS420/520 Algorithm Analysis Spring 2010 Lecture 04 I. Chapter 4 Recurrences A. Introduction 1. Three steps applied at each level of a recursion a) Divide into a number of subproblems that are smaller

### MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

### PROBLEM SET 7: PIGEON HOLE PRINCIPLE

PROBLEM SET 7: PIGEON HOLE PRINCIPLE The pigeonhole principle is the following observation: Theorem. Suppose that > kn marbles are distributed over n jars, then one jar will contain at least k + marbles.

### COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS

Bull Austral Math Soc 77 (2008), 31 36 doi: 101017/S0004972708000038 COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS IGOR V EROVENKO and B SURY (Received 12 April 2007) Abstract We compute

### Package changepoint. R topics documented: November 9, 2015. Type Package Title Methods for Changepoint Detection Version 2.

Type Package Title Methods for Changepoint Detection Version 2.2 Date 2015-10-23 Package changepoint November 9, 2015 Maintainer Rebecca Killick Implements various mainstream and

### Linear Codes. In the V[n,q] setting, the terms word and vector are interchangeable.

Linear Codes Linear Codes In the V[n,q] setting, an important class of codes are the linear codes, these codes are the ones whose code words form a sub-vector space of V[n,q]. If the subspace of V[n,q]

### Cracking the Sudoku: A Deterministic Approach

Cracking the Sudoku: A Deterministic Approach David Martin Erica Cross Matt Alexander Youngstown State University Center for Undergraduate Research in Mathematics Abstract The model begins with the formulation

### Offline 1-Minesweeper is NP-complete

Offline 1-Minesweeper is NP-complete James D. Fix Brandon McPhail May 24 Abstract We use Minesweeper to illustrate NP-completeness proofs, arguments that establish the hardness of solving certain problems.

### Transportation Polytopes: a Twenty year Update

Transportation Polytopes: a Twenty year Update Jesús Antonio De Loera University of California, Davis Based on various papers joint with R. Hemmecke, E.Kim, F. Liu, U. Rothblum, F. Santos, S. Onn, R. Yoshida,

### Approximating the Coalescent with Recombination. Niall Cardin Corpus Christi College, University of Oxford April 2, 2007

Approximating the Coalescent with Recombination A Thesis submitted for the Degree of Doctor of Philosophy Niall Cardin Corpus Christi College, University of Oxford April 2, 2007 Approximating the Coalescent

### BAPS: Bayesian Analysis of Population Structure

BAPS: Bayesian Analysis of Population Structure Manual v. 6.0 NOTE: ANY INQUIRIES CONCERNING THE PROGRAM SHOULD BE SENT TO JUKKA CORANDER (first.last at helsinki.fi). http://www.helsinki.fi/bsg/software/baps/

### LRmix tutorial, version 4.1

LRmix tutorial, version 4.1 Hinda Haned Netherlands Forensic Institute, The Hague, The Netherlands May 2013 Contents 1 What is LRmix? 1 2 Installation 1 2.1 Install the R software...........................

### Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

### Hacking-proofness and Stability in a Model of Information Security Networks

Hacking-proofness and Stability in a Model of Information Security Networks Sunghoon Hong Preliminary draft, not for citation. March 1, 2008 Abstract We introduce a model of information security networks.

### Chapter 6: Episode discovery process

Chapter 6: Episode discovery process Algorithmic Methods of Data Mining, Fall 2005, Chapter 6: Episode discovery process 1 6. Episode discovery process The knowledge discovery process KDD process of analyzing

### INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS

INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS STEVEN P. LALLEY AND ANDREW NOBEL Abstract. It is shown that there are no consistent decision rules for the hypothesis testing problem

### Senior Secondary Australian Curriculum

Senior Secondary Australian Curriculum Mathematical Methods Glossary Unit 1 Functions and graphs Asymptote A line is an asymptote to a curve if the distance between the line and the curve approaches zero

### Linear Codes. Chapter 3. 3.1 Basics

Chapter 3 Linear Codes In order to define codes that we can encode and decode efficiently, we add more structure to the codespace. We shall be mainly interested in linear codes. A linear code of length

### Systems of Linear Equations

Systems of Linear Equations Beifang Chen Systems of linear equations Linear systems A linear equation in variables x, x,, x n is an equation of the form a x + a x + + a n x n = b, where a, a,, a n and

### Topic 19: Goodness of Fit

Topic 19: November 24, 2009 A goodness of fit test examine the case of a sequence if independent experiments each of which can have 1 of k possible outcomes. In terms of hypothesis testing, let π = (π

### Identifying Market Price Levels using Differential Evolution

Identifying Market Price Levels using Differential Evolution Michael Mayo University of Waikato, Hamilton, New Zealand mmayo@waikato.ac.nz WWW home page: http://www.cs.waikato.ac.nz/~mmayo/ Abstract. Evolutionary

### GENERALIZED INTEGER PROGRAMMING

Professor S. S. CHADHA, PhD University of Wisconsin, Eau Claire, USA E-mail: schadha@uwec.edu Professor Veena CHADHA University of Wisconsin, Eau Claire, USA E-mail: chadhav@uwec.edu GENERALIZED INTEGER

### ALMOST COMMON PRIORS 1. INTRODUCTION

ALMOST COMMON PRIORS ZIV HELLMAN ABSTRACT. What happens when priors are not common? We introduce a measure for how far a type space is from having a common prior, which we term prior distance. If a type

### ON THE COMPLEXITY OF THE GAME OF SET. {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu

ON THE COMPLEXITY OF THE GAME OF SET KAMALIKA CHAUDHURI, BRIGHTEN GODFREY, DAVID RATAJCZAK, AND HOETECK WEE {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu ABSTRACT. Set R is a card game played with a

### A binary search algorithm for a special case of minimizing the lateness on a single machine

Issue 3, Volume 3, 2009 45 A binary search algorithm for a special case of minimizing the lateness on a single machine Nodari Vakhania Abstract We study the problem of scheduling jobs with release times

### Notes for STA 437/1005 Methods for Multivariate Data

Notes for STA 437/1005 Methods for Multivariate Data Radford M. Neal, 26 November 2010 Random Vectors Notation: Let X be a random vector with p elements, so that X = [X 1,..., X p ], where denotes transpose.

### Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen

MASTER STHESIS Minimizing costs for transport buyers using integer programming and column generation Eser Esirgen DepartmentofMathematicalSciences CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG

### 4 UNIT FOUR: Transportation and Assignment problems

4 UNIT FOUR: Transportation and Assignment problems 4.1 Objectives By the end of this unit you will be able to: formulate special linear programming problems using the transportation model. define a balanced

### COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS

COMMUTATIVITY DEGREES OF WREATH PRODUCTS OF FINITE ABELIAN GROUPS IGOR V. EROVENKO AND B. SURY ABSTRACT. We compute commutativity degrees of wreath products A B of finite abelian groups A and B. When B

### Journal of Statistical Software

JSS Journal of Statistical Software October 2006, Volume 16, Code Snippet 3. http://www.jstatsoft.org/ LDheatmap: An R Function for Graphical Display of Pairwise Linkage Disequilibria between Single Nucleotide

### Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

### Online Scheduling with Bounded Migration

Online Scheduling with Bounded Migration Peter Sanders, Naveen Sivadasan, and Martin Skutella Max-Planck-Institut für Informatik, Saarbrücken, Germany, {sanders,ns,skutella}@mpi-sb.mpg.de Abstract. Consider