  Randomized experiments are often performed to study the causal effects of
interest. Blocking is a technique to precisely estimate the causal effects when
the experimental material is not homogeneous. It involves stratifying the
available experimental material based on the covariates causing non-homogeneity
and then randomizing the treatment within those strata (known as blocks). This
eliminates the unwanted effect of the covariates on the causal effects of
interest. We investigate the problem of finding a stable set of covariates to
be used to form blocks, that minimizes the variance of the causal effect
estimates. Using the underlying causal graph, we provide an efficient algorithm
to obtain such a set for a general semi-Markovian causal model.
