Вы можете записать точки в корпусе в виде столбцов в матрице, а затем иметь вектор, который говорит вам, какую комбинацию точек взять:
(X1 X2) (a) (X1a + X2b)
(Y1 Y2) (b) = (Y1a + Y2b)
(Z1 Z2) (Z1a + Z2b)
Чтобы сгенерировать целевую точку, которую вы хотите найтивектор, который решает это, с учетом ограничений, что элементы вектора находятся между 0 и 1, и что элементы вектора складываются до 1. Вы можете решить проблему такого рода - если есть решение - с помощью линейногопрограммирование, которое может включать в себя использование http://en.wikipedia.org/wiki/Simplex_algorithm.
Существует множество приемов, чтобы привести это в строгую форму.Добавление еще одной строки в матрицу позволит вам сказать a + b = 1. Чтобы заставить b <= 1, вы могли бы иметь b + q = 1 и q> = 0, хотя, как указал Тед Хопп ниже, в этом случае b<= 1, потому что a + b = 1, а a и b равны> = 0.