Uprość swój przepływ pracy: Wyszukaj miniwebtool.
Dodaj
Strona główna > Matematyka > Zaawansowane działania matematyczne > Solver Programowania Liniowego
 

Solver Programowania Liniowego

Rozwiązuj problemy programowania liniowego online za pomocą metody simplex. Obsługuje funkcje celu typu maksimum lub minimum, mieszane ograniczenia ≤/≥/=, do 8 zmiennych decyzyjnych, a dla problemów z 2 zmiennymi wyświetla interaktywny wykres obszaru dopuszczalnego z zaznaczonymi wierzchołkami i punktem optymalnym.

Solver Programowania Liniowego
Pierwsza linia to funkcja celu (Maximize lub Minimize …). Każda kolejna linia to ograniczenie liniowe. Użyj <=, >= lub =. Skrót: x, y >= 0 deklaruje nieujemność dla kilku zmiennych. Do 8 zmiennych i 20 ograniczeń.

Embed Solver Programowania Liniowego Widget

O Solver Programowania Liniowego

Solver Programowania Liniowego to kalkulator online, który znajduje maksimum lub minimum liniowej funkcji celu podlegającej układowi liniowych nierówności lub równań. Wykorzystuje on metodę simpleks (wariant Big-M), dzięki czemu ograniczenia <=, >= oraz = mogą być dowolnie mieszane. W przypadku problemów z 2 zmiennymi narzędzie rysuje interaktywny wykres obszaru dopuszczalnego z wyróżnieniem każdego wierzchołka i punktu optymalnego.

Co to jest programowanie liniowe?

Problem programowania liniowego (LP) stawia pytanie:

Maksymalizuj (lub minimalizuj): Z = c1 x1 + c2 x2 + … + cn xn przy ograniczeniach: a11 x1 + … + a1n xn (≤, ≥, lub =) b1 a21 x1 + … + a2n xn (≤, ≥, lub =) b2 … am1 x1 + … + amn xn (≤, ≥, lub =) bm x1, x2, …, xn ≥ 0

Zbiór punktów spełniających każde ograniczenie nazywany jest obszarem dopuszczalnym, który jest wielościanem wypukłym. Podstawowe twierdzenie programowania liniowego mówi, że jeśli problem LP posiada skończone optimum, jest ono osiągane w wierzchołku (punkcie ekstremalnym) tego wielościanu. Dlatego metoda simpleks — która przemieszcza się od wierzchołka do wierzchołka — jest tak skuteczna.

Jak działa metoda simpleks

Zaczynając od wierzchołka dopuszczalnego, metoda simpleks wielokrotnie poprawia wartość funkcji celu, przechodząc do sąsiedniego wierzchołka o lepszej wartości. Mechanika procesu:

  1. Postać standardowa: przekształcenie problemu do postaci max cTx przy Ax = b, x ≥ 0. Dla ograniczeń <= dodaje się zmienne swobodne (slack); dla >= odejmuje się nadwyżkę (surplus) i dodaje zmienną sztuczną z dużą karą −M; dla równości dodaje się zmienną sztuczną.
  2. Tablica początkowa: baza składa się ze zmiennych swobodnych i sztucznych, co daje oczywisty wierzchołek startowy.
  3. Zmienna wchodząca: wybór zmiennej niebazowej o największym dodatnim koszcie zredukowanym \( c_j - z_j \). Jeśli taka zmienna nie istnieje, bieżące rozwiązanie jest optymalne.
  4. Zmienna wychodząca: dla kolumny wchodzącej wykonuje się test ilorazów — dzieli się RHS każdego wiersza przez jego dodatni element w kolumnie wchodzącej i wybiera wiersz z najmniejszym ilorazem. Jeśli brak dodatnich elementów, problem LP jest nieograniczony.
  5. Obrót (piwot): użycie eliminacji Gaussa, aby kolumna wchodząca stała się wektorem jednostkowym z jedynką w wierszu wychodzącym.
  6. Powtarzanie do momentu spełnienia kryterium stopu.

Jeśli po zakończeniu jakakolwiek zmienna sztuczna pozostaje w bazie z wartością dodatnią, pierwotny problem LP jest sprzeczny.

Metoda graficzna (dla 2 zmiennych)

Dla problemów z dwiema zmiennymi obszar dopuszczalny jest dwuwymiarowym wielokątem wypukłym. Ponieważ optimum zawsze znajduje się w wierzchołku, wyliczenie wszystkich wierzchołków i sprawdzenie w nich wartości funkcji celu wystarczy do rozwiązania problemu. Ten kalkulator dokonuje wyliczenia poprzez przecinanie każdej pary granic ograniczeń, zachowując tylko te punkty, które spełniają pozostałe warunki, i sortując je przeciwnie do ruchu wskazówek zegara na potrzeby wizualizacji.

Składnia wprowadzania danych

Wpisz funkcję celu w pierwszej linii, a następnie jedno ograniczenie na linię. Nazwy zmiennych mogą być dowolnymi identyfikatorami (x, y, x1, zysk…). Operatorzy to <=, >= oraz =. Warunek nieujemności można zapisać skrótem x, y >= 0.

Maximize 3x + 5y x + y <= 10 2x + y <= 16 x + 3y <= 18 x, y >= 0

Puste linie i komentarze zaczynające się od # są ignorowane. Solver akceptuje do 8 zmiennych decyzyjnych i 20 ograniczeń.

Przykład z rozwiązaniem

Rozważmy warsztat meblowy produkujący stoły i krzesła. Każdy stół daje 3 \$ zysku i wymaga 1 jednostki drewna oraz 2 jednostek pracy. Każde krzesło daje 5 \$ zysku i wymaga 1 jednostki drewna, 1 jednostki pracy i 3 jednostek lakieru. Dostępne zasoby: 10 drewna, 16 pracy, 18 lakieru. Przyjmując x = stoły i y = krzesła, problem LP to:

Maximize Z = 3x + 5y x + y <= 10 (drewno) 2x + y <= 16 (praca) x + 3y <= 18 (lakier) x, y >= 0

Obszar dopuszczalny jest pięciokątem. Obliczając Z w każdym wierzchołku:

Wierzchołek (x, y)Z = 3x + 5yDopuszczalny?
(0, 0)0Tak
(8, 0)24Tak
(6, 4)38 ← optimumTak
(0, 6)30Tak

Zatem warsztat powinien wyprodukować 6 stołów i 4 krzesła, aby osiągnąć maksymalny zysk wynoszący 38 $. Ograniczenia dotyczące drewna i pracy są aktywne (w optimum są równe dostępnym zasobom); lakier ma luz wynoszący 0 (również aktywny w tym przypadku), co oznacza wyczerpanie wszystkich trzech zasobów.

Typowe problemy i co wykrywa solver

SytuacjaObjawJak naprawić
Nieograniczony problem LP Solver zgłasza "Nieograniczony" Dodaj brakujące ograniczenie górne. Funkcja celu może rosnąć bez końca, ponieważ obszar dopuszczalny jest otwarty w kierunku poprawy.
Sprzeczny problem LP Solver zgłasza "Sprzeczny" Ograniczenia wykluczają się wzajemnie (np. x >= 10 i x <= 5). Przejrzyj wszystkie pary warunków.
Alternatywne optima Odznaka ostrzegawcza; wierzchołek optymalny jest unikalny, ale Z jest osiągane wzdłuż krawędzi Dzieje się tak, gdy wektor funkcji celu jest równoległy do aktywnej krawędzi. Dowolna kombinacja wypukła dwóch wierzchołków na tej krawędzi również jest optymalna.
Degeneracja / cykle Simpleks wykonuje iteracje bez poprawy Z Rzadkie w problemach akademickich; można rozwiązać regułą Blanda. Ten solver ogranicza liczbę iteracji, aby uniknąć pętli nieskończonych.

Zastosowania

Jak korzystać z tego kalkulatora

  1. Wpisz swój problem LP w polu tekstowym. Pierwsza linia musi zaczynać się od Maximize lub Minimize. Każda kolejna linia to jedno ograniczenie.
  2. Użyj skrótu x, y >= 0, aby zadeklarować nieujemność dla wszystkich wymienionych zmiennych jednocześnie.
  3. Kliknij Rozwiąż problem LP. Solver poda optymalną wartość Z, optymalne wartości każdej zmiennej decyzyjnej, listę aktywnych ograniczeń, a dla problemów z 2 zmiennymi wyświetli interaktywny wykres obszaru dopuszczalnego.
  4. Najedź na wierzchołek na wykresie, aby zobaczyć jego współrzędne i wartość Z. Optimum jest oznaczone gwiazdką.
  5. Przejrzyj tablice simpleksowe, aby zobaczyć każdy krok (obrót) i prześledzić, jak metoda poprawia wartość Z. Kolumna wchodząca jest podświetlona na bursztynowo, a wiersz wychodzący na czerwono.

Najczęściej zadawane pytania

Co to jest problem programowania liniowego?

Problem programowania liniowego (LP) polega na znalezieniu maksimum lub minimum liniowej funkcji celu na zbiorze zmiennych decyzyjnych spełniających układ liniowych nierówności lub równań. Zbiór dopuszczalny to wielościan wypukłym, a optimum zawsze znajduje się w jednym z jego wierzchołków — to kluczowy fakt wykorzystywany przez metodę simpleks.

Jak działa metoda simpleks?

Metoda simpleks przemieszcza się po wierzchołkach wielościanu dopuszczalnego. Każdy krok ("piwot") wymienia zmienną w bazie na inną, przechodząc do sąsiedniego wierzchołka o ściśle lepszej wartości funkcji celu. Algorytm kończy pracę, gdy żaden piwot nie może poprawić Z — bieżący wierzchołek jest wtedy optymalny. To narzędzie używa wariantu Big-M do obsługi ograniczeń <=, >= oraz =.

Co to jest obszar dopuszczalny?

Obszar dopuszczalny to zbiór wszystkich wartości zmiennych spełniających jednocześnie każde ograniczenie. Dla 2 zmiennych jest to dwuwymiarowy wielokąt wypukły; dla n zmiennych to n-wymiarowy wielościan. Pusty wielościan oznacza, że problem LP jest sprzeczny; wielościan rozciągający się w nieskończoność w kierunku poprawy oznacza, że problem jest nieograniczony.

Co oznacza "nieograniczony" w programowaniu liniowym?

Problem LP jest nieograniczony, gdy obszar dopuszczalny ciągnie się do nieskończoności w kierunku, w którym funkcja celu stale się poprawia. Na przykład Maximize x przy x ≥ 0 nie ma skończonego maksimum. W rzeczywistych problemach wynik ten zwykle sugeruje brakujące ograniczenie — często limit zasobów lub zmiennej.

Co oznacza "alternatywne optima"?

Alternatywne optima występują, gdy więcej niż jeden punkt osiąga tę samą, najlepszą wartość funkcji celu. Geometrycznie funkcja celu jest równoległa do krawędzi wielokąta, więc każdy punkt na tej krawędzi jest optymalny. Solver sygnalizuje to, gdy jakakolwiek zmienna niebazowa ma zerowy koszt zredukowany w rozwiązaniu końcowym.

Ile zmiennych i ograniczeń akceptuje solver?

Do 8 zmiennych decyzyjnych i 20 ograniczeń. Interaktywny wykres obszaru dopuszczalnego jest generowany tylko dla problemów z 2 zmiennymi; dla 3 i więcej zmiennych nadal otrzymasz pełne rozwiązanie numeryczne, tablice krok po kroku i raport ograniczeń.

Dalsza lektura

Cytuj ten materiał, stronę lub narzędzie w następujący sposób:

"Solver Programowania Liniowego" na https://MiniWebtool.com/pl/solver-programowania-liniowego/ z MiniWebtool, https://MiniWebtool.com/

przez zespół miniwebtool. Aktualizacja: 21 kwietnia 2026

Możesz także wypróbować nasz AI Rozwiązywacz Matematyczny GPT, aby rozwiązywać swoje problemy matematyczne poprzez pytania i odpowiedzi w języku naturalnym.

Inne powiązane narzędzia:

Zaawansowane działania matematyczne:

Polecane narzędzia:

Kalkulator Kompatybilności MiłosnejKalkulator znaków słońca, księżyca i ascendentu 🌞🌙✨Losowy Generator GrupKalkulator Znaku WenusRozdzielacz obrazówPrzelicznik stóp na metryKalkulator numerów aniołaKalkulator kompatybilności znaków KsiężycaKonwerter Radianów na StopnieLosowanie listyGenerator Prawda czy WyzwanieGenerator losowych słów angielskichLosowy generator zwierzątKalkulator Liczby ImieniaLosowy generator przedmiotówLosowy selektor filmówwyszukiwanie-adresu-MACMagiczna Kula 8Kalkulator Obwodu ElipsyKalkulator ciąży u psaSortować alfabetycznieNotatnik OnlineKalkulator pochodnych cząstkowychCyfrowy Kalkulator DuszyGenerator losowej godzinyKalkulator prędkości jazdy na rowerzeGenerator wykreślanekGenerator kodu Morse'aLosowy Generator Drabinki TurniejowejKalkulator PrzeciwprostokątnejKalkulator liczby ścieżek życiaKalkulator testu chi-kwadratGenerator krzyżówekKalkulator przedawkowania kofeinyGenerator losowych krajówKalkulator Dnia Roku - Który Dzień Roku Jest Dzisiaj?Konwerter liczb rzymskichRozdzielacz AudioKalkulator współczynnika zmienności⏱️ Kalkulator GodzinKalkulator znaku księżycowegoLosowy Generator KolorówGenerator Losowych UrodzinKalkulator nachylenia i stopniaZaawansowany analizator kompatybilności znaków zodiakuKonwerter szesnastkowy na binarnyGenerator Losowych PosiłkówKonwerter ułamkowy czasuJaki jest mój szczęśliwy numer?Kalkulator Trójkąta ProstokątnegoGenerator losowych ciągówSortuj LiczbyUsuwacz Niewidocznych ZnakówGenerator losowych datKalkulator schodówKalkulator zarobków YouTubeStatystyki Kanału YouTubeKalkulator inflacji w USAKalkulator nachylenia dachuKalkulator odwrotnej transformaty Laplace'aGenerator Małego Tekstu ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾Kalkulator transformaty Laplace'aKalkulator Czasu TrwaniaKalkulator Liczby OsobowościKalkulator Wspolczynnika KorelacjiKonwerter dziesiętny na szesnastkowyPołącz filmyGenerator Kart BingoKalkulator bonusówKalkulator Szczęśliwych LiczbKalkulator konwersji skali modeluKonwerter binarny na szesnastkowyGenerator szablonu rozwinięcia stożkaKalkulator Względnego Odchylenia StandardowegoDetektor treści AIKalkulator Znaku MarsaRzut kostkąUsuń dźwięk z wideoKalkulator arcus tangensaKalkulator decybeli (dB)Kalkulator ułamka zwykłego na dziesiętnyGenerator anagramówGenerator losowych kart kredytowychKalkulator TransformatoraKonwerter szesnastkowy na dziesiętnyKalkulator wiekuKonwerter binarny na dziesiętnyKalkulator rozkładu dwumianowegoKalkulator ilości cyfrPrzelicznik cm na stopy i caleNazwij generator losowyKalkulator Długości ŁukuKonwerter HTML na tekstPrzelicznik Metrów na StopyGenerator schematów kolorówKalkulator podwójnych całekKalkulator prawdopodobieństwa kościGenerator losowego adresu IPKalkulator deficytu kalorycznegoSprawdzanie Ścieżki HamiltonaSolver Problemu Komiwojażera (TSP)Solver Programowania LiniowegoKalkulator Włączeń i WyłączeńSolver Zależności RekurencyjnychKalkulator Macierzy SąsiedztwaKalkulator Sortowania TopologicznegoKalkulator Kolorowania GrafówSymulator Bramek LogicznychSolver Tablicy Karnaugha (K-Map)Upraszczacz Algebry Boole’aKalkulator Funkcji PodziałuKalkulator Pierwiastka CyfrowegoSprawdzacz Liczb FibonacciegoKalkulator ułamków egipskichKalkulator Funkcji MöbiusaWeryfikator Hipotezy GoldbachaTest Liczb Pierwszych Mersenne’aWyszukiwarka Liczb Pierwszych BliźniaczychSprawdzacz Liczb ZaprzyjaźnionychSprawdzacz Liczb DoskonałychKalkulator Potęgowania ModularnegoKalkulator Permutacji z PowtórzeniamiKalkulator Wielkości EfektuKalkulator Ryzyka WzględnegoKalkulator Ilorazu SzansKalkulator Tabeli KontyngencjiKalkulator Dokładnego Testu FisheraKalkulator Korelacji Rangowej SpearmanaKalkulator Rozkładu BetaKalkulator Rozkładu WeibullaKalkulator Rozkładu WykładniczegoKalkulator Rozkładu GeometrycznegoKalkulator Rozkładu Ujemnego DwumianowegoKalkulator Rozkładu HipergeometrycznegoKalkulator Testu F i Rozkładu FKalkulator Twierdzenia BayesaKalkulator Wielomianu CharakterystycznegoKalkulator Potęgi MacierzyKalkulator Dekompozycji CholeskiegoKalkulator Rozkładu QRKalkulator Diagonalizacji MacierzyKalkulator Wzory CrameraKalkulator Przestrzeni KolumnowejNull Space CalculatorKalkulator Kąta Między WektoramiKalkulator Wektora JednostkowegoKalkulator Długości WektoraKalkulator Iloczynu WektorowegoKalkulator Iloczynu SkalarnegoKalkulator Mnożenia MacierzyKalkulator Macierzy OdwrotnejKalkulator RREF (Postać Schodkowa Zredukowana)Kalkulator Metody NewtonaKalkulator Macierzy JakobianuKalkulator Całki PowierzchniowejKalkulator Całki KrzywoliniowejKalkulator RotacjiKalkulator DywergencjiKalkulator Gradientu WielozmiennowyKalkulator Optymalizacji (Rachunek Różniczkowy)Kalkulator Pochodnych PowiązanychKalkulator Chwilowego Tempa ZmianKalkulator Średniego Tempa ZmianKalkulator Sumy Szeregów NieskończonychKalkulator Testu Zbieżności SzeregówKalkulator Szeregów PotęgowychKalkulator Szeregu MaclaurinaKalkulator Reguły L'HospitalaKalkulator Całki NiewłaściwejKalkulator Reguły SimpsonaKalkulator Reguły TrapezówKalkulator Sumy RiemannaKreślarz Krzywych ParametrycznychKalkulator Powierzchni ObrotowejKalkulator Objętości Bryły ObrotowejKalkulator Odległości Geometria WspółrzędnychKalkulator Wzoru HeronaKalkulator Stycznej do OkręguKalkulator Dwusiecznej KątaKalkulator Okręgu WpisanegoKalkulator Okręgu OpisanegoKalkulator Odległości OrtodromicznejKalkulator Odległości 3DKalkulator TorusaKalkulator Ściętego StożkaKalkulator Pola Wielokąta NieregularnegoKalkulator Wielokąta ForemnegoIdentyfikator Przekroju StożkowegoKalkulator HiperboliKalkulator ParaboliKalkulator Rozwinięcia DwumianowegoGenerator Trójkąta PascalaKalkulator Notacji Iloczynowej (Notacja Pi)Kalkulator Notacji Sigma (Sumowanie)Kalkulator Twierdzenia o Pierwiastkach WymiernychKalkulator Reguły Znaków KartezjuszaKalkulator Linii Równoległych i ProstopadłychKalkulator Równania ProstejKonwerter Postaci Ogólnej na KierunkowąKalkulator Formy Punkt-NachylenieRozwiązywacz Układu Równań NieliniowychRozwiązywanie Równań WymiernychRozwiązywanie Równań LiterowychRozwiązywacz Równań TrygonometrycznychRozwiązywanie Równań WykładniczychKalkulator Równań LogarytmicznychKalkulator Równania Czwartego StopniaKalkulator Równania SześciennegoKalkulator SzacowaniaKonwerter Liczby na UłamekGenerator Liczenia ze SkokiemKalkulator Ceny JednostkowejKalkulator Funkcji Sufitu i PodłogiKalkulator Wartości BezwzględnejWyszukiwarka Wzorców LiczbowychGenerator Wykresu Wartości PozycyjnejKalkulator Kolejności Działań PEMDASKalkulator Dodawania i Odejmowania PisemnegoKalkulator Mnożenia PisemnegoGenerator Tabliczki Mnożenia🎮 Konwerter Waluty Gry🎲 Kalkulator Prawdopodobieństwa Dropu🎰 Kalkulator Pity Gacha⚔️ Kalkulator DPS🎮 Konwerter Czułości Gier❄️ Kalkulator Dnia Śnieżnego🚚 Kalkulator Kosztów Przeprowadzki🔍 Sprawdzacz Plagiatu📷 OCR / Obraz na Tekst📈 Kreator Wykresów Liniowych🥧 Kreator Wykresów Kołowych📊 Kreator Wykresów Słupkowych🔊 Generator Tonów🖱️ Licznik Kliknięć⬛ Kalkulator Proporcji Ekranu🌍 Kalkulator Śladu Węglowego👙 Kalkulator Rozmiaru BiustonoszaKalkulator Rozmiaru OponKalkulator Kosztów Paliwa💧 Kalkulator Punktu Rosy🌡️ Kalkulator Indeksu Cieplnego🌬️ Kalkulator Odczuwalnej Temperatury Wiatru⏰ Budzik Online⏰ Kalkulator Karty Czasu Pracy📅 Kalkulator Różnicy Dat🕐 Konwerter Czasu Wojskowego⏱️ Stoper Online⏱️ Timer Odliczania🌐 Konwerter Stref CzasowychKalkulator DywanówKalkulator Muru OporowegoKalkulator Doboru HVACKalkulator IzolacjiKalkulator Kostki BrukowejKalkulator ZbrojeniaKalkulator DrewnaKalkulator PowierzchniKalkulator Mnożenia KrzyżowegoKalkulator Podsumowania Pięciu LiczbKalkulator PercentylaKalkulator Rozkładu NormalnegoKalkulator Wartości pKalkulator ProporcjiKalkulator Uzupełniania KwadratuKalkulator ZaokrąglaniaKalkulator Dzielenia PisemnegoKalkulator NaukowyMinutnik Pomodoro do naukiKalkulator Cyfr ZnaczącychKalkulator Wyników TestuKalkulator Ocen WażonychKalkulator Oceny KońcowejKalkulator OcenKalkulator częstotliwości rezonansowejKalkulator impedancjiKalkulator Współczynnika MocyKalkulator stałej czasowej RCKalkulator przekroju przewoduKalkulator Timera 555Kalkulator KondensatoraKalkulator Rezystancji RównoległejKalkulator Dzielnika NapięciaKalkulator Rezystora LEDKonwerter Mol/Gram/CząstkaKalkulator MiareczkowaniaKalkulator Temperatury WrzeniaKalkulator Wzoru EmpirycznegoKalkulator Wydajności ProcentowejKalkulator StechiometriiBilansowanie Równań ChemicznychKalkulator RozcieńczaniaKalkulator Koni MechanicznychKalkulator Momentu ObrotowegoKalkulator swobodnego spadkuKalkulator równania stanu gazu doskonałegoKalkulator CiśnieniaKalkulator GęstościKalkulator Pracy i MocyKalkulator Energii PotencjalnejKalkulator Energii KinetycznejKalkulator Ruchu PociskuKalkulator PęduKalkulator PrędkościKalkulator PrzyspieszeniaKalkulator SiłyKalkulator ROI InfluenceraKalkulator ROASKalkulator CTRSprawdzacz Nazwy Użytkownika w Mediach SpołecznościowychOptymalizator Czasu Publikacji w Mediach SpołecznościowychKalkulator ROI Mediów SpołecznościowychKalkulator Kosztów Reklam na FacebookuKalkulator Monetyzacji YouTube ShortsKalkulator Zarobków na TwitchKalkulator Czasu Oglądania YouTubeKonwerter Znacznika Czasu Twitter/XKalkulator Zarobków na TikTokuPrzewodnik po Rozmiarach Obrazów w Mediach SpołecznościowychGenerator Czcionek na InstagramLicznik Znaków Twitter/XLosowanie komentarzy YouTubeEkstraktor tagów YouTubePobieracz Miniatur YouTubeLosowy Generator Postaci RPG