Draw perpendicular segments from O to AB and BC which intersects two sides at point D and E. Apparently, OD and OE are radii of the semicircle.
OR = OE
Connect point O and B. Since \triangle ODB and \triangle OEB are right triangles and there're two pairs of corresponding sides equal,
\triangle ODB \cong \triangle OEB
Then
\angle DBO = \angle EBO
In other words, BO bisects the internal angle DBE of the triangle ABC.
Apply the Angle bisector theorem,
\dfrac{AB}{AO} = \dfrac{BC}{CO}
Then,
\dfrac{AB}{AO} = \dfrac{BC}{AC-AO}
Substitute the values of AB, BC and AC
\dfrac{12}{AO} = \dfrac{18}{25-AO}
Solve for AO
Then, AO = 10