Pharmaceutical companies are constantly searching for new therapeutic drugs. The earliest stages of this process involve the synthesis of promising new compounds by organic chemists. In the past, compounds were synthesized one at a time, by hand in a lab.
In recent years, developments in synthesis techniques and laboratory robotics have changed this process. Now, techniques of combinatorial chemistry allow chemists to synthesize many compounds at once, in collections called libraries.
Combinatorial chemistry involves combining sets of related precursor molecules using generic reactions. A reaction that can combine molecules of type A and B might be applied to a set of 100 molecules of type A and 50 of type B, yielding 5000 different products. A synthesis might involve a sequence of a dozen different reactions, so the number of potential generated products can grow very large. A libraryҳ set of products might contains anywhere from a few dozen different compounds to hundreds of thousands.
Because of the huge costs in getting a new drug to market, it is important to "fail early" ֠that is, the large collection of potential drugs needs to be reduced to just a few compounds that can be evaluated in the next stages of the drug development process. The ability to process libraries can be a key factor in getting a new drug to market in a timely, cost-effective manner.
The Afferent product suite supports the drug discovery phase with software products designed to help chemists identify, produce and analyze potential drug molecules. These products manage the entire process -- from controlling the robots to managing the different libraries, analyzing the data and interfacing with other critical databases. Allegro CL is used at all levels of the applications ֠the core application areas, the object model, and the user interface.
One of Afferentҳ main strengths is its ability to do virtual chemistry ֠simulating chemical reactions in the computer before they are actually synthesized. Afferentҳ chemistry engine relies on Lispҳ ability to support complex pattern matching and manipulation algorithms. Afferent can also drive robots to perform the actual syntheses, another complex task made easier by Lisp.
The Afferent software consists of three layers: an object model that defines the ontology of the drug discovery process and provides a way to store and manipulate the relevant objects, a user interface that makes this data visible to the user, and application-level code that provides the virtual chemistry and other logic.
The object model defines the kinds of objects Afferent can store and the internal and external representations of these objects. Afferentҳ object model includes the basic objects found in other chemistry software (molecules and reactions) but goes beyond them to store complex objects such as libraries and synthesis protocols. These objects are composed of many sub-objects arranged in complex relationships to one another.
"Lisp enables us to represent these complex objects using CLOS," says Michael Travers, Principal Software Engineer at MDL Information Systems, Inc. "We have customized CLOS using the meta-object protocol (MOP) to allow us to store our objects in an Oracle database, yet hide the details of this representation from our application code."
A graphical user interface provides the chemist with a view of this universe of objects. Travers emphasizes that this can be a challenge, because dealing with sets of objects that can number in the millions can significantly impact performance:"Lisp provides the abstraction capabilities that lets us manipulate large data sets as single objects, pulling information from the database only when needed and thus providing a responsive user experience."
Afferentҳ UI also contains a sophisticated search subsystem which allows chemists to create complex searches without having to learn a query language. This facility allows molecule structure searches to be combined with searches on properties and object relationships. The search system combines a complex user interface with intricate database manipulation code. Lisp and CLOS gave the developers the tools to tame this complexity.
Another benefit of writing the Afferent applications in Lisp is the ability to rapidly evolve the code base, and even generate new applications.
"We've created a framework that supports storing, manipulating, and relating the huge amount of data involved in the drug discovery process." says Travers. "Thanks to the flexibility of Lisp and Allegro CL, however, we really have a general platform for building knowledge-based scientific informatics applications."
The Afferent team has already developed and deployed another application using this architecture. The new application, called Apexä , helps biologists manage the many plates and samples they use when assaying a drug candidateҳ activity.
The Afferent product suite is built with Allegro CL 5.0.1 and runs on Windows. To learn more about Afferent and MDL, please visit www.mdli.com.
MDL is a registered trademark in the United States and Afferent and Apex are trademarks of MDL Information Systems, Inc. Allegro CL is a registered trademark of Franz, Inc. Windows is a registered trademark of Microsoft Corporation in the United States and other countries. Other product names may be trademarks of their respective owners, and are used herein for informational purposes only.
Click here to download a PDF version of this story.
Copyright © 2023 Franz Inc., All Rights Reserved | Privacy Statement |