Próbując rozwiązać problem, ostatecznie wyraziłem jego część jako następujący program liczbowy całkowity. Tutaj są dodatnimi liczbami całkowitymi podanymi jako część danych wejściowych. Określony podzbiór zmiennych jest ustawiony na zero, a reszta może przyjmować dodatnie wartości całki:
Zminimalizować
Z zastrzeżeniem:
Chciałbym wiedzieć, czy ten program liczb całkowitych można rozwiązać w czasie wielomianowym; mój pierwotny problem został rozwiązany, jeśli tak, i muszę spróbować w inny sposób, jeśli tak nie jest. Więc moje pytanie brzmi:
Jak dowiedzieć się, czy dany program liniowy może być rozwiązany w czasie wielomianowym? Które całkowite programy liniowe są znane jako łatwe? W szczególności, czy powyższy program można rozwiązać w czasie wielomianowym? Czy mógłbyś wskazać mi jakieś odniesienia na ten temat?
źródło
Ogólnie trudno powiedzieć. Ale wystarczającym warunkiem jest to, że macierz ograniczeń jest całkowicie niemodularna, a prawa strona jest zawsze liczbą całkowitą (w tym przypadku prawa strona jest liczbą całkowitą, ale nadal musisz sprawdzić brak jednomodliwości)
Powinieneś spojrzeć na to: http://en.wikipedia.org/wiki/Linear_program#Integer_unknowns
źródło
Program liczb całkowitych o tylko równościach można rozwiązać za pomocą programu liniowego.
źródło