We describe efficient methods for screening clone libraries, based on pooling schemes which we call ``random \(k\)-sets designs''. In these designs, the pools in which any clone occurs are equally likely to be any possible selection of \(k\) from the \(v\) pools. The values of \(k\) and \(v\) can be chosen to optimize desirable properties. Random \(k\)-sets designs have substantial advantages over alternative pooling schemes: they are efficient, flexible, easy to specify, require fewer pools, and have error-correcting and error-detecting capabilities. In addition, screening can often be achieved in only one pass, thus facilitating automation. For design comparison, we assume a binomial distribution for the number of ``positive'' clones, with parameters \(n\), the number of clones, and \(c\), the coverage. We propose the expected number of {\em resolved positive} clones---clones which are definitely positive based upon the pool assays---as a criterion for the efficiency of a pooling design. We determine the value of \(k\) which is optimal, with respect to this criterion, as a function of \(v\), \(n\) and \(c\). We also describe superior \(k\)-sets designs called \(k\)-sets packing designs. As an illustration, we discuss a robotically implemented design for a 2.5-fold-coverage, human chromosome 16 YAC library of \(n=1,298\) clones. We also estimate the probability each clone is positive, given the pool-assay data and a model for experimental errors.