{"id":"assignment-hungarian-solve","version":"1.0.0","description":"Solve a bounded rectangular integer minimum-cost assignment with explicit unmatched costs.","supported_operations":["solve minimum cost assignment","run Hungarian assignment","assign rows to columns","optimize rectangular matching","compute bipartite assignment","handle unmatched assignment rows","find deterministic optimal matching"],"unsupported_operations":["maximum-weight matching without cost conversion","capacitated or many-to-one assignment"],"semantics":["An r-by-c input becomes an (r+c)-square assignment: c dummy rows charge unmatched column costs, r dummy columns charge unmatched row costs, and dummy-to-dummy edges cost zero.","Among equal-cost solutions, the public row-to-column sequence is lexicographically smallest, with real columns before the null unmatched choice.","The returned total is an exact safe integer; an unsafe total is rejected instead of rounded."],"limits":{"max_dimension":20,"max_abs_cost":9007199254740991},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","additionalProperties":false,"properties":{"costs":{"type":"array","maxItems":20,"items":{"type":"array","maxItems":20,"items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}},"unmatched_row_cost":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"unmatched_column_cost":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["costs","unmatched_row_cost","unmatched_column_cost"]},"output_schema":{"type":"object","additionalProperties":false,"properties":{"assignments":{"type":"array","maxItems":20,"items":{"type":"object","additionalProperties":false,"properties":{"row":{"type":"integer","minimum":0,"maximum":19},"column":{"type":["integer","null"],"minimum":0,"maximum":19},"cost":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["row","column","cost"]}},"unmatched_columns":{"type":"array","maxItems":20,"items":{"type":"integer","minimum":0,"maximum":19},"uniqueItems":true},"total_cost":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["assignments","unmatched_columns","total_cost"]},"examples":[{"input":{"costs":[[4,1],[2,3]],"unmatched_row_cost":9,"unmatched_column_cost":9},"output":{"assignments":[{"row":0,"column":1,"cost":1},{"row":1,"column":0,"cost":2}],"unmatched_columns":[],"total_cost":3}},{"input":{"costs":[[5],[1]],"unmatched_row_cost":3,"unmatched_column_cost":7},"output":{"assignments":[{"row":0,"column":null,"cost":3},{"row":1,"column":0,"cost":1}],"unmatched_columns":[],"total_cost":4}}],"execute_url":"/v1/tools/assignment-hungarian-solve/versions/1.0.0/execute"}