{"id":"https://openalex.org/W2333045237","doi":"https://doi.org/10.1145/2892664.2892671","title":"Automatically selecting and optimizing constraint solver procedures for object-constraint languages","display_name":"Automatically selecting and optimizing constraint solver procedures for object-constraint languages","publication_year":2016,"publication_date":"2016-03-14","ids":{"openalex":"https://openalex.org/W2333045237","doi":"https://doi.org/10.1145/2892664.2892671","mag":"2333045237"},"language":"en","primary_location":{"id":"doi:10.1145/2892664.2892671","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892664.2892671","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 15th International Conference on Modularity","raw_type":"proceedings-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/A5083436290","display_name":"Tim Felgentreff","orcid":"https://orcid.org/0000-0002-1293-632X"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Tim Felgentreff","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5112288011","display_name":"Stefan Lehmann","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Stefan Lehmann","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5079160871","display_name":"Robert Hirschfeld","orcid":"https://orcid.org/0000-0002-4249-6003"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Robert Hirschfeld","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5088145363","display_name":"Sebastian Gerstenberg","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Sebastian Gerstenberg","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5075038939","display_name":"Jakob Reschke","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Jakob Reschke","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5084808732","display_name":"Lars R\u00fcckert","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Lars R\u00fcckert","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5017028663","display_name":"Patrick Siegler","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Patrick Siegler","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5051118344","display_name":"Jan Graichen","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Jan Graichen","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5001576421","display_name":"Christian Nicolai","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Christian Nicolai","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5002586065","display_name":"Malte Swart","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Malte Swart","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":10,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.02349505,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"65","last_page":"72"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11596","display_name":"Constraint Satisfaction and Optimization","score":0.9973999857902527,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11596","display_name":"Constraint Satisfaction and Optimization","score":0.9973999857902527,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10126","display_name":"Logic, programming, and type systems","score":0.9965999722480774,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.9919000267982483,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8452721834182739},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.7615779638290405},{"id":"https://openalex.org/keywords/constraint-programming","display_name":"Constraint programming","score":0.7218324542045593},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.6960403919219971},{"id":"https://openalex.org/keywords/constraint","display_name":"Constraint (computer-aided design)","score":0.6384419798851013},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6135167479515076},{"id":"https://openalex.org/keywords/constraint-satisfaction-problem","display_name":"Constraint satisfaction problem","score":0.5457642674446106},{"id":"https://openalex.org/keywords/object","display_name":"Object (grammar)","score":0.5441502332687378},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.4700058102607727},{"id":"https://openalex.org/keywords/constraint-satisfaction","display_name":"Constraint satisfaction","score":0.4623815417289734},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.43394678831100464},{"id":"https://openalex.org/keywords/concurrent-constraint-logic-programming","display_name":"Concurrent constraint logic programming","score":0.42754095792770386},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.402408629655838},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.3307320475578308},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.23973190784454346},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.1868169605731964},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.17503511905670166},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.08867236971855164},{"id":"https://openalex.org/keywords/stochastic-programming","display_name":"Stochastic programming","score":0.07772213220596313},{"id":"https://openalex.org/keywords/functional-logic-programming","display_name":"Functional logic programming","score":0.07742035388946533}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8452721834182739},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.7615779638290405},{"id":"https://openalex.org/C173404611","wikidata":"https://www.wikidata.org/wiki/Q528588","display_name":"Constraint programming","level":3,"score":0.7218324542045593},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.6960403919219971},{"id":"https://openalex.org/C2776036281","wikidata":"https://www.wikidata.org/wiki/Q48769818","display_name":"Constraint (computer-aided design)","level":2,"score":0.6384419798851013},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6135167479515076},{"id":"https://openalex.org/C199622910","wikidata":"https://www.wikidata.org/wiki/Q1128326","display_name":"Constraint satisfaction problem","level":3,"score":0.5457642674446106},{"id":"https://openalex.org/C2781238097","wikidata":"https://www.wikidata.org/wiki/Q175026","display_name":"Object (grammar)","level":2,"score":0.5441502332687378},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.4700058102607727},{"id":"https://openalex.org/C44616089","wikidata":"https://www.wikidata.org/wiki/Q30158686","display_name":"Constraint satisfaction","level":3,"score":0.4623815417289734},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.43394678831100464},{"id":"https://openalex.org/C204306468","wikidata":"https://www.wikidata.org/wiki/Q5159106","display_name":"Concurrent constraint logic programming","level":5,"score":0.42754095792770386},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.402408629655838},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.3307320475578308},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.23973190784454346},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.1868169605731964},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.17503511905670166},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.08867236971855164},{"id":"https://openalex.org/C137631369","wikidata":"https://www.wikidata.org/wiki/Q7617831","display_name":"Stochastic programming","level":2,"score":0.07772213220596313},{"id":"https://openalex.org/C96315309","wikidata":"https://www.wikidata.org/wiki/Q5508829","display_name":"Functional logic programming","level":4,"score":0.07742035388946533},{"id":"https://openalex.org/C49937458","wikidata":"https://www.wikidata.org/wiki/Q2599292","display_name":"Probabilistic logic","level":2,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2892664.2892671","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892664.2892671","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 15th International Conference on Modularity","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":30,"referenced_works":["https://openalex.org/W1518554892","https://openalex.org/W1519503479","https://openalex.org/W1964031104","https://openalex.org/W2019153550","https://openalex.org/W2045398665","https://openalex.org/W2053637323","https://openalex.org/W2065131671","https://openalex.org/W2073536284","https://openalex.org/W2078404830","https://openalex.org/W2085158159","https://openalex.org/W2099625934","https://openalex.org/W2103729840","https://openalex.org/W2107596222","https://openalex.org/W2126647275","https://openalex.org/W2132233302","https://openalex.org/W2144171313","https://openalex.org/W2148542244","https://openalex.org/W2163671349","https://openalex.org/W2168617729","https://openalex.org/W2325401288","https://openalex.org/W2475690632","https://openalex.org/W2510481144","https://openalex.org/W2555448203","https://openalex.org/W2763801910","https://openalex.org/W2914764211","https://openalex.org/W4285719527","https://openalex.org/W4402858536","https://openalex.org/W6605595081","https://openalex.org/W6631080801","https://openalex.org/W6758074993"],"related_works":["https://openalex.org/W2097415053","https://openalex.org/W1531664660","https://openalex.org/W1486916474","https://openalex.org/W2500041535","https://openalex.org/W1563755460","https://openalex.org/W4303044088","https://openalex.org/W1820477541","https://openalex.org/W4239133097","https://openalex.org/W2386374330","https://openalex.org/W2032348095"],"abstract_inverted_index":{"Object-constraint":[0],"programming":[1,11,44,186],"provides":[2],"a":[3,99,145],"design":[4],"to":[5,16,47,55,74,97,106,115,175],"integrate":[6],"constraints":[7,19,30,156],"with":[8,51,92],"dynamic,":[9],"object-oriented":[10,27],"languages.":[12],"It":[13],"allows":[14],"developers":[15,95],"encode":[17],"multi-way":[18],"over":[20],"objects":[21],"and":[22,57,87,168,193],"object":[23],"collections":[24],"using":[25],"existing,":[26],"abstractions.":[28],"These":[29],"are":[31,158],"automatically":[32,121,174],"maintained":[33],"at":[34,80,150],"run-time.":[35],"One":[36],"original":[37],"goal":[38],"of":[39,42,61,72,102,154,195],"the":[40,52,103,118,124,151,191],"Babelsberg-family":[41],"object-constraint":[43,185],"languages":[45],"was":[46],"allow":[48],"users":[49],"familiar":[50],"imperative":[53],"paradigm":[54],"quickly":[56],"efficiently":[58],"make":[59,184],"use":[60,107],"constraint":[62],"solver":[63,83,119,136,177],"capabilities.":[64],"Yet,":[65],"practical":[66,188],"problems":[67],"often":[68],"require":[69],"careful":[70],"selection":[71,137],"solvers":[73,90,162],"find":[75],"good":[76,100],"solutions":[77],"(or":[78],"any":[79],"all).":[81],"Furthermore,":[82],"performance":[84,152,194],"can":[85,171],"vary":[86],"while":[88],"most":[89],"come":[91],"various":[93],"optimizations,":[94],"have":[96,98],"understanding":[101],"solving":[104],"process":[105],"these":[108,182],"optimizations":[109],"effectively.":[110],"This,":[111],"however,":[112],"is":[113,120],"difficult":[114],"achieve":[116],"if":[117],"selected":[122],"by":[123,189],"system.":[125],"In":[126],"this":[127],"work,":[128],"we":[129,139,148],"discuss":[130],"three":[131],"different":[132],"implementations":[133],"for":[134],"automatic":[135],"that":[138,157,181],"used":[140],"in":[141,160],"Babelsberg":[142],"implementations.":[143],"As":[144],"second":[146],"step,":[147],"look":[149],"potential":[153],"edit":[155],"available":[159],"some":[161],"such":[163],"as":[164],"Cassowary":[165],"or":[166],"DeltaBlue,":[167],"how":[169],"they":[170],"be":[172],"applied":[173],"improve":[176],"performance.":[178],"We":[179],"argue":[180],"techniques":[183],"more":[187],"improving":[190],"quality":[192],"solutions.":[196]},"counts_by_year":[],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
