Skip to main content

Co to jest programowanie liniowe Integer?

Problemy z programowaniem liniowym liczb całkowitych pojawiają się podczas próby rozwiązania systemów liniowych przy jednoczesnym określeniu, że wszystkie nieznane zmienne muszą być liczbami całkowite lub liczbami.Systemy liniowe są zestawami równań opisujących sytuację, dla której programista próbuje znaleźć rozwiązanie.Zazwyczaj składają się z jednego równania, które należy zmaksymalizować lub zminimalizować, oraz jedno lub więcej równania ograniczającego, które ograniczają nieznane zmienne.Aby system był liniowy, każde ograniczenie musi być równaniem liniowym;Oznacza to, że nie musi zawierać żadnych przypadków nieznanej zmiennej z wykładnikami większymi niż jeden.

Zwykłe systemy liniowe można łatwo rozwiązać za pomocą komputera.Program może zidentyfikować rozwiązanie, znajdując pochodną i ustawiając je równe zero.Może następnie sprawdzić, czy punkt jest maksymalny lub minimalny, sprawdzając jego bezpośrednią okolicę funkcji.Dopóki pochodna jest zdefiniowana w każdym punkcie wzdłuż funkcji, komputer ma tylko ograniczoną liczbę możliwych rozwiązań do sprawdzenia.

Programowanie liniowe staje się programowaniem liniowym całkowitym przy dodaniu ograniczenia liczb całkowitych.Oznacza to, że problem pozostaje taki sam, ale odpowiedź musi składać się z wartości liczb całkowitych dla nieznanych wartości: muszą być liczbami całkowitymi.Czasami oznacza to, że rozwiązanie będzie nieoptymalne w porównaniu z przypadkiem, w którym frakcje są dozwolone;Jest to jednak refleksyjne światowe świat, w którym przedmioty często występują w dyskretnych, niepodzielnych jednostkach.To sprawia, że programowanie liniowe Integer jest ważne dla aplikacji biznesowych, ponieważ firmy chcą maksymalizować zyski jak najwięcej, ale nie mogą sprzedać ułamka produktu.

Po wprowadzeniu ograniczeń liczb całkowitych problemem rozwiązywania systemu liniowego jest NP-kompletny.Oznacza to, że czas niezbędny do rozwiązania komputera jest nieokreślony.W przypadku ograniczeń liczb całkowitych komputery nie mogą używać narzędzia pochodnej, ponieważ nie ma gwarancji, że zerowy punkt pochodnej spadnie na liczbę całkowitą.Rozwiązaniem będzie liczba całkowita o najwyższej lub najniższej wartości spośród wszystkich liczb całkowitych, więc komputer musiałby je sprawdzić wszystkie mdash;Proces, który może zająć nieskończoną ilość czasu.

Programiści opracowali heurystykę lub metody rozwiązywania problemów, w celu radzenia sobie ze złożonością tych problemów.Jedną z metod rozwiązywania problemów z programowaniem liniowym jest gałąź i algorytm związany, w którym komputer rozwiązuje serię problemów związanych z oryginalnym, aby zawęzić dostępny zakres wartości do jednego rozwiązania.W przypadku złożonych problemów może to zająć dużo czasu.