Automated R-group analysis

Update Apr. 27, 2013: This tool has been obsoleted by Scaffold Hopper with additional features and bug fixes. Generating R-group tables is a tedious task that we often find ourselves performed repeatedly for every project.  For a typical HTS campaign, this task can be as simple as taking the most potent compounds and performing substructure searches around the identified scaffolds.  For most cases, however, the task is quite involved, requiring a combination of clustering, substructure-, and pair-wise MCS searches.  Here a couple of issues with this approach should be noted.  First, clustering results are very sensitive to not only the underlying algorithm, but also on the metric used to compute the distance/similarity values between molecular fingerprints.  We have seen commercial molecular clustering software failed repeatedly on fairly obvious cases.  And secondly, it doesn't take much imagination to come up with examples where scaffolds derived from  maximum common substructure searches are clearly not the "correct" scaffolds.  For this very reason we're often puzzled as to why most cheminformatics toolkits (we're only aware of a couple of exceptions) don't provide an (exact) implementation for generating/enumerating all maximal common substructures. Recently, we developed a prototype that can automatically generate R-group tables for any reasonable sized collection (limited by the available CPU cores and physical memory) of med-chem friendly compounds.  Our implementation---in contrast to the one described here---doesn't make any assumptions as to what a scaffold should look like.  Instead, through exhaustive enumeration, we defer the scaffold recognition task to the user.  We feel this approach is reasonable since, after all, even medicinal chemists don't often agree on the definition of "scaffold." The prototype is available here.  Below is a quick look of it. Since this prototype was put together quickly, its user interface is a bit clunky but hopefully still functional.  This is the first time it's been exposed outside of our group, so we'd be very interested in comments and feedback on how we can make it better.

3 thoughts on “Automated R-group analysis

  1. Hi!

    I tried to run the program on my MacBook, running OS X 10.6.3. However, after it’s downloaded nothing more happens. It opens up the program but I get no windows or menus or anything. The java console is showing the following:

    Reading certificates from 11 | /Users/fwr/Library/Caches/Java/cache/6.0/53/590b2c75-38649bb7.idx
    Reading certificates from 342366 | /Users/fwr/Library/Caches/Java/cache/6.0/63/64dcf1bf-3375c702.idx
    Reading certificates from 111394 | /Users/fwr/Library/Caches/Java/cache/6.0/37/b7b3c25-59845234.idx
    Reading certificates from 2942 | /Users/fwr/Library/Caches/Java/cache/6.0/26/2640095a-3f1384df.idx
    Exception in thread “AWT-EventQueue-0” access denied (java.lang.RuntimePermission
    at java.lang.SecurityManager.checkPermission(
    at java.lang.SecurityManager.checkPackageAccess(
    at sun.misc.Launcher$AppClassLoader.loadClass(
    at java.lang.ClassLoader.loadClass(
    at java.lang.ClassLoader.loadClass(
    at com.jidesoft.plaf.LookAndFeelFactory.loadLnfClass(Unknown Source)
    at com.jidesoft.plaf.LookAndFeelFactory.isAssignableFrom(Unknown Source)
    at com.jidesoft.plaf.LookAndFeelFactory.isLnfInUse(Unknown Source)
    at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(Unknown Source)
    at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(Unknown Source)
    at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(Unknown Source)
    at com.jidesoft.swing.JideTabbedPane.updateUI(Unknown Source)
    at javax.swing.JTabbedPane.(
    at com.jidesoft.swing.JideTabbedPane.(Unknown Source)
    at com.jidesoft.swing.JideTabbedPane.(Unknown Source)
    at gov.nih.ncgc.rgroup.RGroupTool.createContentPane(
    at gov.nih.ncgc.rgroup.RGroupTool.initGUI(
    at gov.nih.ncgc.rgroup.RGroupTool.(
    at gov.nih.ncgc.rgroup.RGroupTool$JnlpLaunch$
    at java.awt.event.InvocationEvent.dispatch(
    at java.awt.EventQueue.dispatchEvent(
    at java.awt.EventDispatchThread.pumpOneEventForFilters(
    at java.awt.EventDispatchThread.pumpEventsForFilter(
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(
    at java.awt.EventDispatchThread.pumpEvents(
    at java.awt.EventDispatchThread.pumpEvents(

    Any ideas as to what went wrong? I have tried to empty the cache and downloaded it again as well as restarting the computer.

  2. Hi Fredrik, please try again now. You might have to clear your browser’s cache.

  3. Hi again, I just saw your comment and I tried and it’s working…

Leave a Reply

Your email address will not be published. Required fields are marked *

Please enlighten us with your wisdom... *