{"id":"https://openalex.org/W4285140529","doi":"https://doi.org/10.1109/lcsys.2022.3173209","title":"Embedded Code Generation With CVXPY","display_name":"Embedded Code Generation With CVXPY","publication_year":2022,"publication_date":"2022-01-01","ids":{"openalex":"https://openalex.org/W4285140529","doi":"https://doi.org/10.1109/lcsys.2022.3173209"},"language":"en","primary_location":{"id":"doi:10.1109/lcsys.2022.3173209","is_oa":false,"landing_page_url":"https://doi.org/10.1109/lcsys.2022.3173209","pdf_url":null,"source":{"id":"https://openalex.org/S4306422535","display_name":"IEEE Control Systems Letters","issn_l":"2475-1456","issn":["2475-1456"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Control Systems Letters","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5014144402","display_name":"Maximilian Schaller","orcid":"https://orcid.org/0000-0003-3743-3638"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Maximilian Schaller","raw_affiliation_strings":["Department of Information Technology and Electrical Engineering, ETH Z&#x00FC;rich, Z&#x00FC;rich, Switzerland"],"raw_orcid":"https://orcid.org/0000-0003-3743-3638","affiliations":[{"raw_affiliation_string":"Department of Information Technology and Electrical Engineering, ETH Z&#x00FC;rich, Z&#x00FC;rich, Switzerland","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5087769467","display_name":"Goran Banjac","orcid":"https://orcid.org/0000-0001-6038-1587"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Goran Banjac","raw_affiliation_strings":["Department of Information Technology and Electrical Engineering, ETH Z&#x00FC;rich, Z&#x00FC;rich, Switzerland"],"raw_orcid":"https://orcid.org/0000-0001-6038-1587","affiliations":[{"raw_affiliation_string":"Department of Information Technology and Electrical Engineering, ETH Z&#x00FC;rich, Z&#x00FC;rich, Switzerland","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5065985674","display_name":"Steven Diamond","orcid":"https://orcid.org/0000-0002-5523-9970"},"institutions":[{"id":"https://openalex.org/I132446568","display_name":"Campbell University","ror":"https://ror.org/00dv9q566","country_code":"US","type":"education","lineage":["https://openalex.org/I132446568"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Steven Diamond","raw_affiliation_strings":["Gridmatic, Campbell, CA, USA","Gridmatic, Campbell CA 95008, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Gridmatic, Campbell, CA, USA","institution_ids":["https://openalex.org/I132446568"]},{"raw_affiliation_string":"Gridmatic, Campbell CA 95008, USA","institution_ids":["https://openalex.org/I132446568"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5112643057","display_name":"Akshay Agrawal","orcid":null},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Akshay Agrawal","raw_affiliation_strings":["Department of Electrical Engineering, Stanford University, Stanford, CA, USA","Department of Electrical Engineering, Stanford University, Stanford CA 94305, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Electrical Engineering, Stanford University, Stanford, CA, USA","institution_ids":["https://openalex.org/I97018004"]},{"raw_affiliation_string":"Department of Electrical Engineering, Stanford University, Stanford CA 94305, USA","institution_ids":["https://openalex.org/I97018004"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5081461094","display_name":"Bartolomeo Stellato","orcid":"https://orcid.org/0000-0003-4684-7111"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Bartolomeo Stellato","raw_affiliation_strings":["Department of Operations Research and Financial Engineering, Princeton University, Princeton, NJ, USA","Department of Operations Research and Financial Engineering, Princeton University, Princeton NJ 08544, USA"],"raw_orcid":"https://orcid.org/0000-0003-4684-7111","affiliations":[{"raw_affiliation_string":"Department of Operations Research and Financial Engineering, Princeton University, Princeton, NJ, USA","institution_ids":["https://openalex.org/I20089843"]},{"raw_affiliation_string":"Department of Operations Research and Financial Engineering, Princeton University, Princeton NJ 08544, USA","institution_ids":["https://openalex.org/I20089843"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5011176205","display_name":"Stephen Boyd","orcid":"https://orcid.org/0000-0001-8353-6000"},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Stephen Boyd","raw_affiliation_strings":["Department of Electrical Engineering, Stanford University, Stanford, CA, USA","Department of Electrical Engineering, Stanford University, Stanford CA 94305, USA"],"raw_orcid":"https://orcid.org/0000-0001-8353-6000","affiliations":[{"raw_affiliation_string":"Department of Electrical Engineering, Stanford University, Stanford, CA, USA","institution_ids":["https://openalex.org/I97018004"]},{"raw_affiliation_string":"Department of Electrical Engineering, Stanford University, Stanford CA 94305, USA","institution_ids":["https://openalex.org/I97018004"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":6,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":2.434,"has_fulltext":false,"cited_by_count":17,"citation_normalized_percentile":{"value":0.90190497,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":"6","issue":null,"first_page":"2653","last_page":"2658"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10848","display_name":"Advanced Multi-Objective Optimization Algorithms","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10848","display_name":"Advanced Multi-Objective Optimization Algorithms","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9958999752998352,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12101","display_name":"Advanced Bandit Algorithms Research","score":0.9624000191688538,"subfield":{"id":"https://openalex.org/subfields/1803","display_name":"Management Science and Operations Research"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.8264796733856201},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7842751741409302},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6749903559684753},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.6124323606491089},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.5725710391998291},{"id":"https://openalex.org/keywords/quadcopter","display_name":"Quadcopter","score":0.553901195526123},{"id":"https://openalex.org/keywords/rapid-prototyping","display_name":"Rapid prototyping","score":0.49486225843429565},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.4677788019180298},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.43102747201919556},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.33042222261428833},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.15156713128089905}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.8264796733856201},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7842751741409302},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6749903559684753},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.6124323606491089},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.5725710391998291},{"id":"https://openalex.org/C2779199153","wikidata":"https://www.wikidata.org/wiki/Q43965","display_name":"Quadcopter","level":2,"score":0.553901195526123},{"id":"https://openalex.org/C2780395129","wikidata":"https://www.wikidata.org/wiki/Q1128971","display_name":"Rapid prototyping","level":2,"score":0.49486225843429565},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.4677788019180298},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.43102747201919556},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.33042222261428833},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.15156713128089905},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0},{"id":"https://openalex.org/C146978453","wikidata":"https://www.wikidata.org/wiki/Q3798668","display_name":"Aerospace engineering","level":1,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/lcsys.2022.3173209","is_oa":false,"landing_page_url":"https://doi.org/10.1109/lcsys.2022.3173209","pdf_url":null,"source":{"id":"https://openalex.org/S4306422535","display_name":"IEEE Control Systems Letters","issn_l":"2475-1456","issn":["2475-1456"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Control Systems Letters","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G6421654716","display_name":null,"funder_award_id":"787845","funder_id":"https://openalex.org/F4320334678","funder_display_name":"European Research Council"}],"funders":[{"id":"https://openalex.org/F4320334678","display_name":"European Research Council","ror":"https://ror.org/0472cxd90"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":27,"referenced_works":["https://openalex.org/W1918816242","https://openalex.org/W2001728872","https://openalex.org/W2016278923","https://openalex.org/W2073787051","https://openalex.org/W2101855829","https://openalex.org/W2101986122","https://openalex.org/W2116773335","https://openalex.org/W2117402460","https://openalex.org/W2126004407","https://openalex.org/W2129516068","https://openalex.org/W2178935672","https://openalex.org/W2288174618","https://openalex.org/W2536620281","https://openalex.org/W2607001947","https://openalex.org/W2769646558","https://openalex.org/W2770374498","https://openalex.org/W2782618081","https://openalex.org/W3085587046","https://openalex.org/W3101798601","https://openalex.org/W3105558219","https://openalex.org/W3207305612","https://openalex.org/W4205355221","https://openalex.org/W4236670843","https://openalex.org/W4250589301","https://openalex.org/W4297825594","https://openalex.org/W6696497002","https://openalex.org/W6767977373"],"related_works":["https://openalex.org/W3122369893","https://openalex.org/W2794657471","https://openalex.org/W1970499202","https://openalex.org/W2407476586","https://openalex.org/W818898529","https://openalex.org/W2750654225","https://openalex.org/W1963927741","https://openalex.org/W4245356976","https://openalex.org/W307712065","https://openalex.org/W2134525851"],"abstract_inverted_index":{"We":[0,67],"introduce":[1],"CVXPYgen,":[2],"a":[3,16,28,34,53,58,74,78,84],"tool":[4,88],"for":[5,11,42,61],"generating":[6],"custom":[7,54],"C":[8,50],"code,":[9],"suitable":[10],"embedded":[12],"applications,":[13],"that":[14,32],"solves":[15],"parametrized":[17],"class":[18],"of":[19,52,73,91],"convex":[20,44],"optimization":[21,45,80],"problems.":[22,46],"CVXPYgen":[23,56,82,103],"is":[24],"based":[25],"on":[26],"CVXPY,":[27],"Python-embedded":[29],"domain-specific":[30],"language":[31],"supports":[33],"natural":[35],"syntax":[36],"(that":[37],"follows":[38],"the":[39,49,105],"mathematical":[40],"description)":[41],"specifying":[43],"Along":[47],"with":[48],"implementation":[51],"solver,":[55],"creates":[57],"Python":[59],"wrapper":[60],"prototyping":[62],"and":[63,76,100,104],"desktop":[64],"(non-embedded)":[65],"applications.":[66],"give":[68],"two":[69],"examples,":[70],"position":[71],"control":[72],"quadcopter":[75],"back-testing":[77],"portfolio":[79],"model.":[81],"outperforms":[83],"state-of-the-art":[85],"code":[86,98],"generation":[87],"in":[89],"terms":[90],"problem":[92],"size":[93],"it":[94],"can":[95],"handle,":[96],"binary":[97],"size,":[99],"solve":[101],"times.":[102],"generated":[106],"solvers":[107],"are":[108],"open-source.":[109]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":11},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":2}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
