Assignment Problem

แอปพลิเคชันนี้ใช้คำนวณหาคำตอบของ assignment problem โดยใช้ Hungarian algorithm

ตัวอย่างของปัญหาลักษณะนี้ เช่น เราต้องการจ้างคนงานสามคนเพื่อทำงานสามอย่าง โดยคนงานทั้งสามคนสามารถทำงานได้ทั้งสามอย่างแต่ค่าจ้างต่างกัน และตารางข้างล่างนี้แสดงค่าจ้างของคนงานแต่ละคนสำหรับงานทั้งสาม

ค่าจ้างงานที่ 1 ค่าจ้างงานที่ 2 ค่าจ้างงานที่ 3
คนงานที่ 1 85 58 41
คนงานที่ 2 54 82 95
คนงานที่ 3 92 72 98

เราต้องการรู้ว่าจะจ้างใครทำงานอะไรเพื่อให้มีค่าใช้จ่ายน้อยที่สุด    หรืออีกกรณีหนึ่งคือ สมมติว่าตารางข้างบนแสดงผลกำไรที่เกิดจากหุ่นยนต์สามตัวทำงานสามอย่าง    เราอยากจะรู้ว่าจะให้หุ่นยนต์ไหนทำงานอะไรเพื่อให้มีกำไรมากที่สุด

ข้อมูลอินพุท

ข้อมูลอินพุทมีอยู่สองส่วน
     ส่วนแรกเหมือนตัวอย่างตารางข้างบน เรียกว่าเมตริกซ์กำหนดราคา $C$ ซึ่งเป็นเมตริกซ์ขนาด $n\times n$ ของจำนวนเต็มบวกหรือศูนย์    โดย $C_{ij}$ แทนราคาของการจ้างคนงานที่ $i$ ทำงานที่ $j$ ดูรายละเอียดการใส่ข้อมูลเมตริกซ์ได้ที่ ข้อมูลเมตริกซ์
     ส่วนที่สองของข้อมูลอินพุทเป็น min หรือ max ขึ้นอยู่กับว่าเราต้องการค่าน้อยที่สุดหรือค่ามากที่สุดจาก assignment problem นี้

คำนวณคำตอบของ Assignment Problem