{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/learning-neural-contracting-dynamics-extended","title":"Learning Neural Contracting Dynamics: Extended Linearization and Global Guarantees","arxiv_id":"2402.08090","date":"2024-02-12","proceeding":null,"authors":["Sean Jaffe","Alexander Davydov","Deniz Lapsekili","Ambuj Singh","Francesco Bullo"],"abstract":"Global stability and robustness guarantees in learned dynamical systems are essential to ensure well-behavedness of the systems in the face of uncertainty. We present Extended Linearized Contracting Dynamics (ELCD), the first neural network-based dynamical system with global contractivity guarantees in arbitrary metrics. The key feature of ELCD is a parametrization of the extended linearization of the nonlinear vector field. In its most basic form, ELCD is guaranteed to be (i) globally exponentially stable, (ii) equilibrium contracting, and (iii) globally contracting with respect to some metric. To allow for contraction with respect to more general metrics in the data space, we train diffeomorphisms between the data space and a latent space and enforce contractivity in the latent space, which ensures global contractivity in the data space. We demonstrate the performance of ELCD on the high dimensional LASA, multi-link pendulum, and Rosenbrock datasets.","url_abs":"https://arxiv.org/abs/2402.08090v4","url_pdf":"https://arxiv.org/pdf/2402.08090v4.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"learning-neural-contracting-dynamics-extended","repo_url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2402.08090","atlas_url":"https://app.syntology.ai/?focus=2402.08090","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.08090"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics","reach":null}],"summary":{"ran":1,"ran_draft_wrong":2,"unverified":1},"by_repo_kind":{"official":{"samples":4,"ran":3,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"2c90eabfcaa148ae","entry":"ELCD","repo":"seanjaffe1/extended-linearized-contracting-dynamics","repo_kind":"official","path":"models/elcd.py","file_url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics/blob/HEAD/models/elcd.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2c90eabfcaa148ae"}},{"code_sha256_prefix":"0238ff2b3f78a2ad","entry":"batch_jacobian","repo":"seanjaffe1/extended-linearized-contracting-dynamics","repo_kind":"official","path":"models/elcd.py","file_url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics/blob/HEAD/models/elcd.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0238ff2b3f78a2ad"}},{"code_sha256_prefix":"b2152523eee0eca4","entry":"calculate_jacobian","repo":"seanjaffe1/extended-linearized-contracting-dynamics","repo_kind":"official","path":"models/elcd.py","file_url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics/blob/HEAD/models/elcd.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b2152523eee0eca4"}},{"code_sha256_prefix":"43e2ecc75ecef6bd","entry":"get_jacobian_eflow","repo":"seanjaffe1/extended-linearized-contracting-dynamics","repo_kind":"official","path":"models/elcd.py","file_url":"https://github.com/seanjaffe1/extended-linearized-contracting-dynamics/blob/HEAD/models/elcd.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"43e2ecc75ecef6bd"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}