diff --git a/paper/paper.bib b/paper/paper.bib new file mode 100644 index 0000000..72cde67 --- /dev/null +++ b/paper/paper.bib @@ -0,0 +1,231 @@ +@article{bealPersonalizedLogicalModels2021, + title = {Personalized Logical Models to Investigate Cancer Response to {{BRAF}} Treatments in Melanomas and Colorectal Cancers}, + author = {B{\'e}al, Jonas and Pantolini, Lorenzo and No{\"e}l, Vincent and Barillot, Emmanuel and Calzone, Laurence}, + editor = {Stelling, Joerg}, + year = {2021}, + month = jan, + journal = {PLOS Computational Biology}, + volume = {17}, + number = {1}, + pages = {e1007900}, + issn = {1553-7358}, + doi = {10.1371/journal.pcbi.1007900}, + urldate = {2024-12-13}, + abstract = {The study of response to cancer treatments has benefited greatly from the contribution of different omics data but their interpretation is sometimes difficult. Some mathematical models based on prior biological knowledge of signaling pathways facilitate this interpretation but often require fitting of their parameters using perturbation data. We propose a more qualitative mechanistic approach, based on logical formalism and on the sole mapping and interpretation of omics data, and able to recover differences in sensitivity to gene inhibition without model training. This approach is showcased by the study of BRAF inhibition in patients with melanomas and colorectal cancers who experience significant differences in sensitivity despite similar omics profiles. We first gather information from literature and build a logical model summarizing the regulatory network of the mitogen-activated protein kinase (MAPK) pathway surrounding BRAF, with factors involved in the BRAF inhibition resistance mechanisms. The relevance of this model is verified by automatically assessing that it qualitatively reproduces response or resistance behaviors identified in the literature. Data from over 100 melanoma and colorectal cancer cell lines are then used to validate the model's ability to explain differences in sensitivity. This generic model is transformed into personalized cell line-specific logical models by integrating the omics information of the cell lines as constraints of the model. The use of mutations alone allows personalized models to correlate significantly with experimental sensitivities to BRAF inhibition, both from drug and CRISPR targeting, and even better with the joint use of mutations and RNA, supporting multi-omics mechanistic models. A comparison of these untrained models with learning approaches highlights similarities in interpretation and complementarity depending on the size of the datasets. This parsimonious pipeline, which can easily be extended to other biological questions, makes it possible to explore the mechanistic causes of the response to treatment, on an individualized basis.}, + langid = {english}, +} + +@article{berenbaumWhatSynergy1989, + title = {What Is Synergy?}, + author = {Berenbaum, M. C.}, + year = {1989}, + month = jun, + journal = {Pharmacological Reviews}, + volume = {41}, + number = {2}, + pages = {93--141}, + issn = {0031-6997}, + langid = {english}, + pmid = {2692037}, + keywords = {Animals,Drug Synergism,Humans,Models Biological} +} + +@misc{chatainMostPermissiveSemantics2018, + title = {Most {{Permissive Semantics}} of {{Boolean Networks}}}, + author = {Chatain, Thomas and Haar, Stefan and Kol\{{\v c}\}{\'a}k, Juraj and Paulev{\'e}, Lo{\"i}c}, + year = {2018}, + publisher = {arXiv}, + doi = {10.48550/ARXIV.1808.10240}, + urldate = {2024-12-06}, + abstract = {As shown in (http://dx.doi.org/10.1101/2020.03.22.998377), the usual update modes of Boolean networks (BNs), including synchronous and (generalized) asynchronous, fail to capture behaviors introduced by multivalued refinements. Thus, update modes do not allow a correct abstract reasoning on dynamics of biological systems, as they may lead to reject valid BN models.This technical report lists the main definitions and properties of the most permissive semantics of BNs introduced in http://dx.doi.org/10.1101/2020.03.22.998377. This semantics meets with a correct abstraction of any multivalued refinements, with any update mode. It subsumes all the usual updating modes, while enabling new behaviors achievable by more concrete models. Moreover, it appears that classical dynamical analyzes of reachability and attractors have a simpler computational complexity:- reachability can be assessed in a polynomial number of iterations. The computation of iterations is in NP in the very general case, and is linear when local functions are monotonic, or with some usual representations of functions of BNs (binary decision diagrams, Petri nets, automata networks, etc.). Thus, reachability is in P with locally-monotonic BNs, and P\${\textasciicircum}\{{\textbackslash}text\{NP\}\}\$ otherwise (instead of being PSPACE-complete with update modes);- deciding wherever a configuration belongs to an attractor is in coNP with locally-monotonic BNs, and coNP\${\textasciicircum}\{{\textbackslash}text\{coNP\}\}\$ otherwise (instead of PSPACE-complete with update modes).Furthermore, we demonstrate that the semantics completely captures any behavior achievable with any multilevel or ODE refinement of the BN; and the semantics is minimal with respect to this model refinement criteria: to any most permissive trajectory, there exists a multilevel refinement of the BN which can reproduce it.In brief, the most permissive semantics of BNs enables a correct abstract reasoning on dynamics of BNs, with a greater tractability than previously introduced update modes.}, + copyright = {arXiv.org perpetual, non-exclusive license}, + keywords = {Formal Languages and Automata Theory (cs.FL),FOS: Biological sciences,FOS: Computer and information sciences,Logic in Computer Science (cs.LO),Quantitative Methods (q-bio.QM)} +} + +@article{dorierBooleanRegulatoryNetwork2016, + title = {Boolean Regulatory Network Reconstruction Using Literature Based Knowledge with a Genetic Algorithm Optimization Method}, + author = {Dorier, Julien and Crespo, Isaac and Niknejad, Anne and Liechti, Robin and Ebeling, Martin and Xenarios, Ioannis}, + year = {2016}, + month = oct, + journal = {BMC Bioinformatics}, + volume = {17}, + number = {1}, + pages = {410}, + issn = {1471-2105}, + doi = {10.1186/s12859-016-1287-z}, + urldate = {2024-12-04}, + abstract = {Abstract Background Prior knowledge networks (PKNs) provide a framework for the development of computational biological models, including Boolean models of regulatory networks which are the focus of this work. PKNs are created by a painstaking process of literature curation, and generally describe all relevant regulatory interactions identified using a variety of experimental conditions and systems, such as specific cell types or tissues. Certain of these regulatory interactions may not occur in all biological contexts of interest, and their presence may dramatically change the dynamical behaviour of the resulting computational model, hindering the elucidation of the underlying mechanisms and reducing the usefulness of model predictions. Methods are therefore required to generate optimized contextual network models from generic PKNs. Results We developed a new approach to generate and optimize Boolean networks, based on a given PKN. Using a genetic algorithm, a model network is built as a sub-network of the PKN and trained against experimental data to reproduce the experimentally observed behaviour in terms of attractors and the transitions that occur between them under specific perturbations. The resulting model network is therefore contextualized to the experimental conditions and constitutes a dynamical Boolean model closer to the observed biological process used to train the model than the original PKN. Such a model can then be interrogated to simulate response under perturbation, to detect stable states and their properties, to get insights into the underlying mechanisms and to generate new testable hypotheses. Conclusions Generic PKNs attempt to synthesize knowledge of all interactions occurring in a biological process of interest, irrespective of the specific biological context. This limits their usefulness as a basis for the development of context-specific, predictive dynamical Boolean models. The optimization method presented in this article produces specific, contextualized models from generic PKNs. These contextualized models have improved utility for hypothesis generation and experimental design. The general applicability of this methodological approach makes it suitable for a variety of biological systems and of general interest for biological and medical research. Our method was implemented in the software optimusqual, available online at http://www.vital-it.ch/software/optimusqual/ .}, + langid = {english}, +} + +@article{eduatiPatientspecificLogicModels2020, + title = {Patient-specific Logic Models of Signaling Pathways from Screenings on Cancer Biopsies to Prioritize Personalized Combination Therapies}, + author = {Eduati, Federica and Jaaks, Patricia and Wappler, Jessica and Cramer, Thorsten and Merten, Christoph A and Garnett, Mathew J and Saez-Rodriguez, Julio}, + year = {2020}, + month = feb, + journal = {Molecular Systems Biology}, + volume = {16}, + number = {2}, + pages = {e8664}, + issn = {1744-4292, 1744-4292}, + doi = {10.15252/msb.20188664}, + urldate = {2024-12-13}, + langid = {english}, +} + +@article{flobakFineTuningLogical2023, + title = {Fine Tuning a Logical Model of Cancer Cells to Predict Drug Synergies: Combining Manual Curation and Automated Parameterization}, + shorttitle = {Fine Tuning a Logical Model of Cancer Cells to Predict Drug Synergies}, + author = {Flobak, {\AA}smund and Zobolas, John and Vazquez, Miguel and Steigedal, Tonje S. and Thommesen, Liv and Grisling{\aa}s, Asle and Niederdorfer, Barbara and Folkesson, Evelina and Kuiper, Martin}, + year = {2023}, + month = nov, + journal = {Frontiers in Systems Biology}, + volume = {3}, + pages = {1252961}, + issn = {2674-0702}, + doi = {10.3389/fsysb.2023.1252961}, + urldate = {2024-11-27}, + abstract = {Treatment with combinations of drugs carries great promise for personalized therapy for a variety of diseases. We have previously shown that synergistic combinations of cancer signaling inhibitors can be identified based on a logical framework, by manual model definition. We now demonstrate how automated adjustments of model topology and logic equations both can greatly reduce the workload traditionally associated with logical model optimization. Our methodology allows the exploration of larger model ensembles that all obey a set of observations, while being less restrained for parts of the model where parameterization is not guided by biological data. We benchmark the synergy prediction performance of our logical models in a dataset of 153 targeted drug combinations. We show that well-performing manual models faithfully represent measured biomarker data and that their performance can be outmatched by automated parameterization using a genetic algorithm. Whereas the predictive performance of a curated model is strongly affected by simulated curation errors, data-guided deletion of a small subset of regulatory model edges can significantly improve prediction quality. With correct topology we find evidence of some tolerance to simulated errors in the biomarker calibration data, yet performance decreases with reduced data quality. Moreover, we show that predictive logical models are valuable for proposing mechanisms underpinning observed synergies. With our framework we predict the synergy of joint inhibition of PI3K and TAK1, and further substantiate this prediction with observations in cancer cell cultures and in xenograft experiments.}, +} + +@misc{gadPyGADIntuitiveGenetic2021, + title = {{{PyGAD}}: {{An Intuitive Genetic Algorithm Python Library}}}, + shorttitle = {{{PyGAD}}}, + author = {Gad, Ahmed Fawzy}, + year = {2021}, + publisher = {arXiv}, + doi = {10.48550/ARXIV.2106.06158}, + urldate = {2024-11-27}, + abstract = {This paper introduces PyGAD, an open-source easy-to-use Python library for building the genetic algorithm. PyGAD supports a wide range of parameters to give the user control over everything in its life cycle. This includes, but is not limited to, population, gene value range, gene data type, parent selection, crossover, and mutation. PyGAD is designed as a general-purpose optimization library that allows the user to customize the fitness function. Its usage consists of 3 main steps: build the fitness function, create an instance of the pygad.GA class, and calling the pygad.GA.run() method. The library supports training deep learning models created either with PyGAD itself or with frameworks like Keras and PyTorch. Given its stable state, PyGAD is also in active development to respond to the user's requested features and enhancement received on GitHub https://github.com/ahmedfgad/GeneticAlgorithmPython. PyGAD comes with documentation https://pygad.readthedocs.io for further details and examples.}, + copyright = {arXiv.org perpetual, non-exclusive license}, + keywords = {Computer Vision and Pattern Recognition (cs.CV),FOS: Computer and information sciences,FOS: Mathematics,Machine Learning (cs.LG),Neural and Evolutionary Computing (cs.NE),Optimization and Control (math.OC)} +} + +@article{jinRationalCombinationsTargeted2023, + title = {Rational Combinations of Targeted Cancer Therapies: Background, Advances and Challenges}, + shorttitle = {Rational Combinations of Targeted Cancer Therapies}, + author = {Jin, Haojie and Wang, Liqin and Bernards, Ren{\'e}}, + year = {2023}, + month = mar, + journal = {Nature Reviews Drug Discovery}, + volume = {22}, + number = {3}, + pages = {213--234}, + issn = {1474-1776, 1474-1784}, + doi = {10.1038/s41573-022-00615-z}, + urldate = {2024-12-04}, + langid = {english} +} + +@article{klarnerPyBoolNetPythonPackage2017, + title = {{{PyBoolNet}}: A Python Package for the Generation, Analysis and Visualization of Boolean Networks}, + shorttitle = {{{PyBoolNet}}}, + author = {Klarner, Hannes and Streck, Adam and Siebert, Heike}, + editor = {Sahinalp, Cenk}, + year = {2017}, + month = mar, + journal = {Bioinformatics}, + volume = {33}, + number = {5}, + pages = {770--772}, + issn = {1367-4803, 1367-4811}, + doi = {10.1093/bioinformatics/btw682}, + urldate = {2024-12-06}, + abstract = {Abstract Motivation The goal of this project is to provide a simple interface to working with Boolean networks. Emphasis is put on easy access to a large number of common tasks including the generation and manipulation of networks, attractor and basin computation, model checking and trap space computation, execution of established graph algorithms as well as graph drawing and layouts. Results PyBoolNet is a Python package for working with Boolean networks that supports simple access to model checking via NuSMV, standard graph algorithms via NetworkX and visualization via dot. In addition, state of the art attractor computation exploiting Potassco ASP is implemented. The package is function-based and uses only native Python and NetworkX data types. Availability and Implementation https://github.com/hklarner/PyBoolNet}, + copyright = {https://academic.oup.com/journals/pages/about\_us/legal/notices}, + langid = {english}, +} + +@article{musselBoolNetPackageGeneration2010, + title = {{{BoolNet}}---an {{R}} Package for Generation, Reconstruction and Analysis of {{Boolean}} Networks}, + author = {M{\"u}ssel, Christoph and Hopfensitz, Martin and Kestler, Hans A.}, + year = {2010}, + month = may, + journal = {Bioinformatics}, + volume = {26}, + number = {10}, + pages = {1378--1380}, + issn = {1367-4811, 1367-4803}, + doi = {10.1093/bioinformatics/btq124}, + urldate = {2024-11-27}, + abstract = {Abstract Motivation: As the study of information processing in living cells moves from individual pathways to complex regulatory networks, mathematical models and simulation become indispensable tools for analyzing the complex behavior of such networks and can provide deep insights into the functioning of cells. The dynamics of gene expression, for example, can be modeled with Boolean networks (BNs). These are mathematical models of low complexity, but have the advantage of being able to capture essential properties of gene-regulatory networks. However, current implementations of BNs only focus on different sub-aspects of this model and do not allow for a seamless integration into existing preprocessing pipelines. Results: ~BoolNet efficiently integrates methods for synchronous, asynchronous and probabilistic BNs. This includes reconstructing networks from time series, generating random networks, robustness analysis via perturbation, Markov chain simulations, and identification and visualization of attractors. Availability: The package BoolNet is freely available from the R project at http://cran.r-project.org/ or http://www.informatik.uni-ulm.de/ni/mitarbeiter/HKestler/boolnet/ under Artistic License 2.0. Contact: ~hans.kestler@uni-ulm.de Supplementary information: ~Supplementary data are available at Bioinformatics online.}, + langid = {english}, +} + +@article{naldiCoLoMoToInteractiveNotebook2018, + title = {The {{CoLoMoTo Interactive Notebook}}: {{Accessible}} and {{Reproducible Computational Analyses}} for {{Qualitative Biological Networks}}}, + shorttitle = {The {{CoLoMoTo Interactive Notebook}}}, + author = {Naldi, Aur{\'e}lien and Hernandez, C{\'e}line and Levy, Nicolas and Stoll, Gautier and Monteiro, Pedro T. and Chaouiya, Claudine and Helikar, Tom{\'a}{\v s} and Zinovyev, Andrei and Calzone, Laurence and {Cohen-Boulakia}, Sarah and Thieffry, Denis and Paulev{\'e}, Lo{\"i}c}, + year = {2018}, + month = jun, + journal = {Frontiers in Physiology}, + volume = {9}, + pages = {680}, + issn = {1664-042X}, + doi = {10.3389/fphys.2018.00680}, + urldate = {2024-11-27}, +} + +@article{niederdorferStrategiesEnhanceLogic2020, + title = {Strategies to {{Enhance Logic Modeling-Based Cell Line-Specific Drug Synergy Prediction}}}, + author = {Niederdorfer, Barbara and Tour{\'e}, Vasundra and Vazquez, Miguel and Thommesen, Liv and Kuiper, Martin and L{\ae}greid, Astrid and Flobak, {\AA}smund}, + year = {2020}, + month = jul, + journal = {Frontiers in Physiology}, + volume = {11}, + pages = {862}, + issn = {1664-042X}, + doi = {10.3389/fphys.2020.00862}, + urldate = {2024-12-13}, +} + +@article{terfveCellNOptRFlexibleToolkit2012, + title = {{{CellNOptR}}: A Flexible Toolkit to Train Protein Signaling Networks to Data Using Multiple Logic Formalisms}, + shorttitle = {{{CellNOptR}}}, + author = {Terfve, Camille and Cokelaer, Thomas and Henriques, David and MacNamara, Aidan and Goncalves, Emanuel and Morris, Melody K and Iersel, Martijn Van and Lauffenburger, Douglas A and {Saez-Rodriguez}, Julio}, + year = {2012}, + month = dec, + journal = {BMC Systems Biology}, + volume = {6}, + number = {1}, + pages = {133}, + issn = {1752-0509}, + doi = {10.1186/1752-0509-6-133}, + urldate = {2024-12-04}, + abstract = {Abstract Background Cells process signals using complex and dynamic networks. Studying how this is performed in a context and cell type specific way is essential to understand signaling both in physiological and diseased situations. Context-specific medium/high throughput proteomic data measured upon perturbation is now relatively easy to obtain but formalisms that can take advantage of these features to build models of signaling are still comparatively scarce. Results Here we present CellNOptR , an open-source R software package for building predictive logic models of signaling networks by training networks derived from prior knowledge to signaling (typically phosphoproteomic) data. CellNOptR features different logic formalisms, from Boolean models to differential equations, in a common framework. These different logic model representations accommodate state and time values with increasing levels of detail. We provide in addition an interface via Cytoscape ( CytoCopteR ) to facilitate use and integration with Cytoscape network-based capabilities. Conclusions Models generated with this pipeline have two key features. First, they are constrained by prior knowledge about the network but trained to data. They are therefore context and cell line specific, which results in enhanced predictive and mechanistic insights. Second, they can be built using different logic formalisms depending on the richness of the available data. Models built with CellNOptR are useful tools to understand how signals are processed by cells and how this is altered in disease. They can be used to predict the effect of perturbations (individual or in combinations), and potentially to engineer therapies that have differential effects/side effects depending on the cell type or context.}, + langid = {english}, +} + + +@misc{dl-doc, + author = {Zobolas, John}, + title = {DrugLogics software documentation}, + year = {2020}, + publisher = {GitHub Pages}, + url = {https://druglogics.github.io/druglogics-doc/} +} + +@misc{pydl-doc, + author = {Szekeres, Laura}, + title = {PyDrugLogics package documentation}, + year = {2024}, + publisher = {GitHub Pages}, + url = {https://druglogics.github.io/pydruglogics/} +} + +@misc{pydl-tutorial, + author = {Szekeres, Laura}, + title = {PyDrugLogics package Jupyter Notebook tutorial}, + year = {2024}, + publisher = {GitHub}, + url = {https://github.com/druglogics/pydruglogics/blob/main/tutorials/pydruglogics_tutorial.ipynb} +} + +@misc{pydl-pypi, + author = {Szekeres, Laura}, + title = {PyDrugLogics PyPi package website}, + year = {2024}, + publisher = {PyPi}, + note = {PyPi package version 0.1.8}, + url = {https://pypi.org/project/pydruglogics/} +} diff --git a/paper/paper.md b/paper/paper.md new file mode 100644 index 0000000..62d5571 --- /dev/null +++ b/paper/paper.md @@ -0,0 +1,125 @@ +--- +title: 'PyDrugLogics: A Python Package for Predicting Drug Synergies Using Boolean Models' +tags: + - Python + - boolean models + - boolean networks + - logical modeling + - genetic algorithm + - drug synergies + - bliss + - hsa + +authors: + - name: Laura Szekeres + orcid: 0009-0002-4141-0500 + affiliation: 1 + - name: John Zobolas + orcid: 0000-0002-3609-8674 + affiliation: 1 +affiliations: + - name: Department of Cancer Genetics, Institute for Cancer Research, Oslo University Hospital, Oslo, Norway + index: 1 + ror: 00j9c2840 +date: 19 December 2024 +bibliography: paper.bib +--- + +# Summary + +PyDrugLogics is a Python package that generates optimized Boolean models that represent a biological system and performs +in-silico perturbations of these models to predict synergistic drug combinations. + +For complex diseases such as cancer, combined drug therapies can enhance the efficacy of the personalized treatment and +minimize side effects [@jinRationalCombinationsTargeted2023]. Combined drug therapies may have a stronger effect than +single drug treatments, a concept referred to as synergy [@berenbaumWhatSynergy1989]. However, finding synergistic drug +combinations is a challenging area of modern medicine. The vast number of possible drug combinations, even for small +sets of drugs, makes it a complex problem due to the exponential growth in combinations. This fact causes long testing +time in the laboratory experiments and a significant amount of experimental costs. + +Logical modeling is a powerful tool that can be used to reduce the costs of this challenge. By formalizing biological +networks into logical models, these constructed models enable us to simulate the behaviour of large-scale signaling +networks and predict responses to perturbation (@eduatiPatientspecificLogicModels2020, +@niederdorferStrategiesEnhanceLogic2020, @bealPersonalizedLogicalModels2021). The implemented method is derived from +the pipeline published by @flobakFineTuningLogical2023. + +Within this approach, the modeling process constructs a Boolean network to simulate the biological system, such as a +cancer cell and identify stable states that reflect the system’s long-term behaviour. During the optimization process, +the network’s rules and topology are systematically adjusted to match the experimental steady states +(i.e. protein activities). Multiple Boolean models are generated from this calibration process. This model ensemble is +used to simulate the in-silico effects of drug perturbations and predict synergy scores for each combination. These +predicted synergy scores are validated using experimentally measured outcomes, ensuring their predictive accuracy. + +# Statement of Need + +Several previous tools have addressed the challenges of modeling biological networks with logical modeling approaches. +For instance, CellNOptR [@terfveCellNOptRFlexibleToolkit2012] trains protein signaling networks to experimental data +using multiple logic formalisms. In contrast, our tool focuses on optimizing Boolean models for predicting synergy +scores. Another pipeline that was introduced in @dorierBooleanRegulatoryNetwork2016 uses Boolean models +and a genetic algorithm for network construction and perturbation analysis, focusing on attractor identification and +implemented as a command-line tool. PyDrugLogics builds on similar principles by leveraging advanced computational +libraries such as MPBNs [@chatainMostPermissiveSemantics2018] and PyBoolNet [@klarnerPyBoolNetPythonPackage2017] to +calculate stable states and trap spaces, with the added benefit of a Python-based implementation. + +The DrugLogics software pipeline was an important step forward for simulating biological networks with logical models +and predicting synergy scores [@dl-doc]. Originally, structured as three separate Java packages, it preserved modular +clarity. The Java implementation was well-designed and robust; nevertheless, the Java and Maven environment presented +challenges in terms of maintainability, installation, and integrability with other community +tools [@naldiCoLoMoToInteractiveNotebook2018]. + +Noticing these limitations, PyDrugLogics provides a practical solution that not only retains the core functionality of +the Java-based pipeline, but also significantly boosts it by reducing the code complexity, improving the execution time, +and introducing new features that expand its capabilities. By unifying the functionality of the three Java packages into +a single Python package, PyDrugLogics simplifies the installation and software maintenance. Example improvements include +the use of a standardized format, BoolNet [@musselBoolNetPackageGeneration2010], for loading the models, as well as +visualization options (i.e. precision-recall (PR) and receiver operating characteristic (ROC) curves) and statistical +analyses (i.e. repeated subsampling of the ensemble Boolean models) for robust evaluation of prediction performance. +PyDrugLogics provides an easy-to-use, flexible, and up-to-date solution for simulating Boolean networks and predicting +synergistic drug combinations for the prioritization of follow-up lab experiments. + +There has been a growing focus on developing tools that prioritize accessibility, reproducibility, and seamless +integration in the logical modeling community. In particular, the CoLoMoTo Interactive Notebook aims to simplify +integration and enables faster collaboration [@naldiCoLoMoToInteractiveNotebook2018]. PyDrugLogics adopts this approach +by integrating into the CoLoMoTo Docker, enabling compatibility with other tools so that researchers can combine +methodologies and share results more effectively. The comprehensive documentation for PyDrugLogics is provided +on the package website [@pydl-doc], along with a detailed tutorial [@pydl-tutorial]. The package is available on +PyPi [@pydl-pypi], offering a simple installation process and integration into Python workflows. + +# Brief Overview + +The PyDrugLogics pipeline involves two main stages: calibration and prediction. + +The calibration (`train`) function is responsible for loading a Boolean model for a particular biological system +(i.e. a cancer cell) or the interactions for automatically constructing such a model. The next step is the optimization +process that uses the PyGAD Genetic Algorithm [@gadPyGADIntuitiveGenetic2021] for finding the best set of Boolean models +that fit the training data (e.g. protein measurements of the cancerous cell). The optimization process changes the +models operators and topology to ensure its behaviour fits the training data. + +In the prediction (`predict`) function, the calibrated models are used to perform in-silico perturbations to simulate +the effect of various drug treatments and their combinations. The perturbations represent changes to the system to mimic +drug effects such as inhibition or activation of the affected proteins. The results of the perturbations are analyzed, +and the predicted viability scores, which represent the system’s response to drug treatments, are computed. Synergy +scores are then derived from these viability scores, quantifying drug interactions and classifying combinations by +synergistic potential. To verify the accuracy of the predictions, the pipeline requires the knowledge of the observed +synergies, which serve as the ground truth, and they are typically derived from experimental datasets or literature +sources. Using the observed synergies (binary labels: 0 for non-synergistic and 1 for synergistic) as the ground truth, +binary classification metrics such as the ROC and PR AUC (area under the curve) are generated to evaluate how well +the predicted synergy scores distinguish between synergistic and non-synergistic drug combinations. + +# Acknowledgements + +JZ received funding from Astri og Birger Torsteds Legater for cancer research, which contributed to the completion of this work. + +The following people have contributed code to this package or provided help with technical and scientific questions (in alphabetical order): + +- Åsmund Flobak + +- Daniel Nebdal + +- Eirini Tsirvouli + +- Marco Fariñas + +Special thanks are due for their valuable support and contributions. + +# References