ฉันต้องการเรียนรู้บางอย่างเกี่ยวกับปัญหาการปรับให้เหมาะสมนี้: สำหรับตัวเลขทั้งหมดที่ไม่เป็นลบให้หาฟังก์ชันเพื่อลดนิพจน์
An example using a different formulation might make it clearer: You're given a set of sets of vectors like
{
{(3, 0, 0, 0, 0), (1, 0, 2, 0, 0)},
{(0, 1, 0, 0, 0), (0, 0, 0, 1, 0)},
{(0, 0, 0, 2, 0), (0, 1, 0, 1, 0)}
}
Choose one vector from each set, so that the maximum component of their sum is minimal. For example, you may choose
(1, 0, 2, 0, 0) + (0, 1, 0, 0, 0) + (0, 1, 0, 1, 0) = (1, 1, 2, 1, 0)
with the maximum component equal to 2, which is clearly optimal here.
I'm curious if this is a well-known problem and what problem-specific approximate solution methods are available. It should be fast and easy to program (no ILP solver, etc.). No exact solution is needed as it's only an approximation of the real problem.
I see that I should have added some details about the problem instances I'm interested in:
- , i.e., there're always 64 rows (when written as in the above example).
- , i.e., there're only 2 vectors per row.
- where (the vector length) is between 10 and 1000.
Moreover, on each row the sum of the elements of all vectors is the same, i.e.,
and the sum of the elements of the sum vector is less than its length, i.e.,