The goal of docking is to predict binding interactions between molecul
es. We are primarily interested in docking as a tool for the structure
-based design of new ligands that could serve as lead compounds for dr
ug development, The program BOXSEARCH uses a Monte Carlo algorithm to
explore the relative orientation and position of two molecules. Multip
le runs are carried out from different random starting positions and o
rientations, and the temperature of the system is gradually reduced. A
n unbiased sampling of low energy states is the result. BOXSEARCH has
been tested on a number of known complexes, involving both protein and
small molecule ligands. Although a better treatment of solvent effect
s and of flexibility would improve the ranking of results, the complex
es can be reconstructed successfully, even using uncomplexed conformat
ions of the molecules. We are currently implementing two major enhance
ments. First, the code is being rewritten in a more general and adapta
ble form, using the object oriented programming language C++. Object-o
riented programming allows us to reuse code very easily and also lets
us use a higher level of abstraction. In practical terms, this makes i
t much easier to program and test new ideas for molecular simulations,
including better treatments of solvent and flexibility Second, geneti
c algorithms are being implemented as a more general and powerful opti
mization tool. We envision simulations in which molecules ''evolve'' o
n the computer, by mutation and recombination in the binding site.