We present biRNA, a novel algorithm for prediction of binding sites between two RNAs based on minimization of binding free energy. Similar to RNAup approach [30], we assume the binding free energy is the sum of accessibility and the interaction free energies. Our algorithm maintains tractability and speed and also has two important advantages over previous similar approaches: (1) biRNA is able to predict multiple simultaneous binding sites and (2) it computes a more accurate interaction free energy by considering both intramolecular and intermolecular base pairing. Moreover, biRNA can handle crossing interactions as well as hairpins interacting in a zigzag fashion. To deal with simultaneous accessibility of binding sites, our algorithm models their joint probability of being unpaired. Since computing the exact joint probability distribution is intractable, we approximate the joint probability by a polynomially representable graphical model namely a Chow-Liu tree-structured Markov Rando...