Skip to content

Latest commit

 

History

History
138 lines (90 loc) · 12.4 KB

File metadata and controls

138 lines (90 loc) · 12.4 KB
graph LR
    Application_Orchestrator["Application Orchestrator"]
    Configuration_Context_Management["Configuration & Context Management"]
    Chemical_Domain_Model["Chemical Domain Model"]
    Retrosynthetic_Strategy_Framework["Retrosynthetic Strategy Framework"]
    Stock_Management["Stock Management"]
    Retrosynthetic_Search_Engines["Retrosynthetic Search Engines"]
    Reaction_Pathway_Analysis_Management["Reaction Pathway Analysis & Management"]
    User_Interfaces["User Interfaces"]
    Application_Orchestrator -- "Initializes/Uses" --> Configuration_Context_Management
    Application_Orchestrator -- "Orchestrates" --> Retrosynthetic_Search_Engines
    Configuration_Context_Management -- "Configures" --> Retrosynthetic_Strategy_Framework
    Configuration_Context_Management -- "Configures" --> Stock_Management
    Chemical_Domain_Model -- "Provides Data To" --> Retrosynthetic_Strategy_Framework
    Chemical_Domain_Model -- "Provides Data To" --> Retrosynthetic_Search_Engines
    Retrosynthetic_Strategy_Framework -- "Uses" --> Chemical_Domain_Model
    Retrosynthetic_Strategy_Framework -- "Uses" --> Stock_Management
    Stock_Management -- "Uses" --> Chemical_Domain_Model
    Stock_Management -- "Provides Info To" --> Retrosynthetic_Strategy_Framework
    Retrosynthetic_Search_Engines -- "Uses" --> Chemical_Domain_Model
    Retrosynthetic_Search_Engines -- "Applies" --> Retrosynthetic_Strategy_Framework
    Reaction_Pathway_Analysis_Management -- "Processes Output From" --> Retrosynthetic_Search_Engines
    Reaction_Pathway_Analysis_Management -- "Provides Results To" --> Application_Orchestrator
    User_Interfaces -- "Interacts With" --> Application_Orchestrator
    User_Interfaces -- "Visualizes" --> Reaction_Pathway_Analysis_Management
    click Application_Orchestrator href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Application_Orchestrator.md" "Details"
    click Configuration_Context_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Configuration_Context_Management.md" "Details"
    click Chemical_Domain_Model href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Chemical_Domain_Model.md" "Details"
    click Retrosynthetic_Strategy_Framework href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Retrosynthetic_Strategy_Framework.md" "Details"
    click Stock_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Stock_Management.md" "Details"
    click Retrosynthetic_Search_Engines href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/Retrosynthetic_Search_Engines.md" "Details"
    click User_Interfaces href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/aizynthfinder/User_Interfaces.md" "Details"
Loading

CodeBoardingDemoContact

Details

aizynthfinder is a modular and extensible software tool for retrosynthetic planning in cheminformatics, designed to predict synthetic pathways for target molecules using AI/ML strategies. At its core, the system orchestrates a search process that integrates configurable components such as reaction policies, scoring models, and stock databases. The architecture separates concerns across modules for configuration management, chemical data modeling, retrosynthesis strategy execution, search algorithms (e.g., MCTS), and pathway analysis. Users interact with the system via a CLI or GUI to generate and explore feasible synthetic routes.

Application Orchestrator [Expand]

The central control unit that initializes the retrosynthesis process, orchestrates the search, and manages the overall workflow from target molecule input to route collection. It acts as the main entry point for executing a retrosynthesis plan.

Related Classes/Methods:

Configuration & Context Management [Expand]

Manages application-wide settings, loads configurations from various sources (e.g., YAML files), and provides a centralized context for accessing and injecting different strategies (policies, scorers, stock sources) throughout the application. It ensures that components are initialized with the correct dependencies.

Related Classes/Methods:

Chemical Domain Model [Expand]

Defines the fundamental data structures for representing chemical molecules and retro-reactions, along with core chemical operations and serialization/deserialization. It provides the common language and data representation for all cheminformatics-related components.

Related Classes/Methods:

Retrosynthetic Strategy Framework [Expand]

Provides a flexible, plugin-based architecture for defining and managing various strategies involved in retrosynthesis. This includes expansion strategies (generating possible retro-reactions, often using ML models), filter strategies (pruning undesirable reactions or molecules), and scoring strategies (evaluating the quality of molecules and reaction routes). It also encapsulates the integration with underlying machine learning models.

Related Classes/Methods:

Stock Management [Expand]

Manages and queries the availability of starting materials from various configured sources (e.g., in-memory databases, external databases like MongoDB, or bloom filters). It determines if a molecule is "in stock" and thus a valid precursor for a synthetic pathway.

Related Classes/Methods:

Retrosynthetic Search Engines [Expand]

Implements various search algorithms (e.g., Monte Carlo Tree Search, Depth-First Proof-Number Search, Breadth-First Search, Retro*) to explore the chemical reaction space and discover synthetic pathways from a target molecule to available precursors. It builds and traverses the reaction tree based on the defined strategies.

Related Classes/Methods:

Reaction Pathway Analysis & Management

Collects, stores, and provides functionalities for managing, filtering, analyzing, and visualizing discovered retrosynthetic reaction routes and the underlying search trees. It helps in understanding and selecting the best synthetic pathways, often presenting Pareto-optimal solutions.

Related Classes/Methods:

User Interfaces [Expand]

Provides various means for users to interact with the AiZynthFinder application. This includes a command-line interface (CLI) for batch processing and scripting, and a web-based graphical user interface (GUI) for interactive exploration of search trees and reaction routes.

Related Classes/Methods: