초록
본 논문에서는 단백질 분자로부터 표면 원자를 효율적으로 발견하는 알고리즘을 제안한다. 표면 원자란, 주어진 probe solvent $P$가 단백질 분자와 충돌하지 않고 접한다고 가정할 때, $P$와 접할 수 있는 원자의 집합을 의미한다. 단백질 분자를 구성하는 원자들은 반데르바스 반경을 갖는 구의 집합으로 표현되며, probe solvent 역시 구로 대응된다. $P$의 반경에 대해 분자의 오프셋 곡면을 구하여 표면 원자를 발견하는 알고리즘을 제안한다. 제안된 알고리즘은 각 구의 오프셋 곡면에 대해 복셀 맵(voxel map)을 구성하여 효율적으로 분자의 오프셋 곡면을 구하며, GPU (graphic processor unit)를 활용한 병렬처리를 수행하여 최대 6,412개의 원자를 갖는 분자에 대해 42.87 millisecond 내에 표면 원자를 발견한다.
In this paper, we propose an efficient method to extract surface atoms from a protein molecule. Surface atoms are defined as a set of atoms who can contact given probe solvent $P$, where $P$ does not collide with the molecule. The atoms contained in the molecule are represented as a set of spheres with van der Waals radii. The probe solvent also is represented as a sphere. We propose a method to extract the surface atoms by computing the offset surface of the molecule with respect to the radius of $P$. For efficient computation of the offset surface of a molecule, a voxel map is constructed for the offset surfaces of the spheres. Based on GPU (graphic processor unit) acceleration, a data parallel algorithm is used to extract the surface atoms in 42.87 milliseconds for the molecule containing up to 6,412 atoms.