The Numerical Analysis of Differentiable Simulation: Automatic Differentiation Can Be Incorrect

By: Christopher Rackauckas

Re-posted from: https://www.stochasticlifestyle.com/the-numerical-analysis-of-differentiable-simulation-automatic-differentiation-can-be-incorrect/

ISCL Seminar Series

The Numerical Analysis of Differentiable Simulation: How Automatic Differentiation of Physics Can Give Incorrect Derivatives

Scientific machine learning (SciML) relies heavily on automatic differentiation (AD), the process of constructing gradients which include machine learning integrated into mechanistic models for the purpose of gradient-based optimization. While these differentiable programming approaches pitch an idea of “simply put the simulator into a loss function and use AD”, it turns out there are a lot more subtle details to consider in practice. In this talk we will dive into the numerical analysis of differentiable simulation and ask the question: how numerically stable and robust is AD? We will use examples from the Python-based Jax (diffrax) and PyTorch (torchdiffeq) libraries in order to demonstrate how canonical formulations of AD and adjoint methods can give inaccurate gradients in the context of ODEs and PDEs. We demonstrate cases where the methodologies are “mathematically correct”, but due to the intricacies of numerical error propagation, their approaches can give 60% and greater error even in simple cases like linear ODEs. We’ll then describe some of the non-standard modifications to AD which are done in the Julia SciML libraries to overcome these numerical instabilities and achieve accurate results, crucially also describing the engineering trade-offs which are required to be made in the process. The audience should leave with a greater appreciation of the greater numerical challenges which still need to be addressed in the field of AD for SciML.

The post The Numerical Analysis of Differentiable Simulation: Automatic Differentiation Can Be Incorrect appeared first on Stochastic Lifestyle.

JuliaHub Audit Features for Pharmacometrics Software Records

By: Mridul Upadhyay

Re-posted from: https://info.juliahub.com/blog/juliahub-audit-features

Ensuring Reproducibility and Compliance through Robust Auditability and Traceability

In the dynamic realm of scientific computing and data analysis, the importance of maintaining the integrity of every artifact and computational process cannot be overstated. Meticulous tracking and documentation of every action on data and code are crucial for valid research and regulatory compliance. JuliaHub provides robust audit trail and traceability features to meet these demands.

The Foundation of Trust: Audit Trails and Traceability

Audit trails are secure, time-stamped records detailing who did what, when, and often where. They are vital for accountability, issue diagnosis, and system validation, especially for regulatory compliance. Traceability extends this by tracking data and artifact lineage from origin to final use, ensuring data accuracy, governance, security, and regulatory adherence. JuliaHub provides comprehensive audit logs which include user actions, controls access, and tracks data and code provenance, crucial for regulated and collaborative research.

Audit Log in the JuliaHub Platform

Furthermore, The Traceability Dashboard view gives users each event in a human readable format. The Dashboard allows administrators to view, filter, sort, and download audit events related to compliance, privacy, and data modifications. Events are organized by resource type (datasets, folders, packages, notebooks). For example, a new dataset version triggers an “add_version” event with details. Anytime an artifact is uploaded, modified, deleted, or copied – the event is tracked. Administrators can filter by user or date for targeted audits and download data for further analysis.

The Traceability Dashboard: Your Computational History at a Glance

Traceability in Practice: Tracking Code and Data Lineage

JuliaHub’s traceability features are multifaceted. Git version control in Projects tracks and allows rollback of changes. The package manager records dependencies in a manifest file. Private Git repositories are supported. The Traceability Dashboard tracks artifact lineage. The Time Capsule feature records batch jobs for reproducibility, and the Data API offers secure, versioned, auditable storage.

More Features of the JuliaHub Platform:

Granular Access Control: Securing Your Research Environment

JuliaHub implements strong access controls. The Projects feature facilitates team collaboration with role-based access (Viewer, Editor, Owner). Integration with organizational identity providers and support for individual users ensure secure access to resources like datasets and private Julia package registries.  

Compliance and Security: Core Principles of JuliaHub

JuliaHub prioritizes security and compliance, holding SOC 2 compliance and meeting standards like FDA 21 CFR Part 11 and GAMP 5. Detailed audit logs and a Trust and Security Portal provide transparency.

Conclusion: JuliaHub – Your Partner for Reliable Scientific Research

JuliaHub’s audit and traceability features offer significant benefits in regulated and collaborative pharmaceutical environments, streamlining compliance. In conjunction with Pumas-AI, JuliaHub provides a robust set of tools for pharmacometric workflows.

JuliaHub’s comprehensive audit trail and traceability features, including detailed audit logging, access controls, Git versioning, software bill of materials, and Traceability Dashboard view, provide significant records for regulated industries. Its focus on compliance and data integrity, combined with collaborative tools, positions JuliaHub as a strong platform for the pharmaceutical and bio-tech industries as a whole.

To learn more, and try JuliaHub today, visit us and then schedule a free consultation for more information.

PID Autotuning and Controls with JuliaSim: Revolutionizing Simulation and Modeling

By: Ranjan Anantharaman

Re-posted from: https://info.juliahub.com/blog/pid-autotuning-and-controls-with-juliasim

For engineers and researchers, achieving seamless integration between prototyping and deployment has always been a challenge. JuliaSim, powered by the Julia programming language, is reimagining how we approach modeling, simulation, and control systems. This blog post explores PID autotuning and controls with JuliaSim, showcasing its capabilities and potential for innovation.