Posts

Week 4 - First Solver Adapter and Setup

In the past week, I integrated the Commons Math Solver into the new abstraction layer and set up the entire development environment so that everything runs stably. Progress: Built the ILPSolver interface and fully implemented the first adapter ( CommonsMathSolver ). Created a new class ( LPSolution ) to standardize result handling. Set up a demo class ( SolverDemo ) to test how the algorithm works. Challenges and Solutions: Repeated ClassNotFoundException : The main cause was a non-standard project structure, which is the default in IntelliJ. Switching to the Maven standard and synchronizing all build and run settings resolved the error. Java version conflicts : Different configurations in Maven, IntelliJ, and JAVA_HOME led to build errors. After aligning everything to Java 22 and updating the POM, the build is now stable. Status: The foundation for the abstraction layer is in place and ready for further solver integrations. The Commons Math adapter is running ...

Week 3 - Java Solver Libraries

This past week marked the transition from theoretical preparation to hands-on coding for my GSoC project. Since I have an exam coming up on Monday, my available time was a bit limited. I will resume my regular workload after that. My main focus this week was evaluating Java-based solver libraries to see how well they might integrate with SBSCL. I started by working with Apache Commons Math (specifically the SimplexSolver). I recreated minimal working examples to understand its functionality and API structure. This involved dynamically defining variables, constraints, and objective functions. Based on these tests, I was able to confirm that it's possible to dynamically map SBML-derived models to this solver’s API, which aligns perfectly with the flexibility required for SBSCL. Then I explored the ojAlgo library. Following a similliar approach as with Commons Math, I set up basic examples in Maven to try out ojAlgo's functionalities, explore its API, and see how result extraction...

Week 2 – Community Bonding Wrap-Up

Community Bonding Period - Getting Ready for SBSCL The community bonding period is coming to an end, and the actual coding phase is about to begin. Over the past two weeks, I've spent my time getting familiar with the Systems Biology Simulation Core Library (SBSCL) and preparing for my GSoC project. During this initial phase, I focused on understanding how SBSCL uses SBML (Systems Biology Markup Language) to simulate biological models. My primary interest was in constraint-based simulations, particularly Flux Balance Analysis (FBA). My project aims at enhancing SBSCL by developing a solver-agnostic framework, ensuring compatibility with different solvers and hardware platforms, including newer ARM-based systems like Apple's M-series processors. I gained deeper insight into FBA as a computational method used to calculate the optimal flow of metabolites through metabolic networks to achieve specific biological goals, such as maximizing biomass or minimizing nutrient usage. Howeve...

Hello World - Week 1 - Community Bonding Period

Community Bonding Period One week ago, an email popped into my inbox with the words, "Congratulations, your proposal has been accepted." Reading that acceptance message from GSoC felt like crossing an important milestone, confirming that all my efforts and late-night writing sessions had finally paid off.  My name is Michael Gaas, and I am currently a 4th-semester bioinformatics student at Eberhard Karls University Tübingen. This summer, I will be contributing to the Systems Biology Simulation Core Library (SBSCL) under the mentorship of Prof. Dr. Andreas Dräger and Matthias König at the National Resource for Network Biology (NRNB). The main goal of my project is to develop a solver-agnostic framework for constraint-based simulation and analysis, significantly enhancing SBSCL's flexibility and compatibility across modern computing architectures. During this initial community bonding period, I have already started familiarizing myself with SBSCL research papers to better u...