Zasady pracy w arkuszu kalkulacyjnym Microsoft Excel z dodatkiem Solver
Microsoft Excel Solver jest narzędziem umożliwiającym optymalizację problemów i wspomagającym proces podejmowania różnorodnych decyzji. Solver może być wykorzystywany zarówno do rozwiązywania równań jak i do rozwiązywania problemów optymalizacyjnych z ograniczeniami (zastosowanie w zagadnieniach programowania liniowego, programowania nieliniowego i całkowitoliczbowego). Dodatek Solver wykorzystuje się, gdy trzeba znaleźć optymalną wartość dla określonej w komórce zależności funkcyjnej za pomocą podstawiania wartości zmiennych umieszczonych w kilku innych komórkach lub nałożyć specjalne ograniczenia na jedną lub więcej wartości używanych w obliczeniach. Innym sposobem szukania ustalonej wartości dla określonej komórki za pomocą podstawiania wartości tylko jednej innej komórki jest opcja z menu Excela - Szukaj wyniku. Formułowanie w arkuszu kalkulacyjnym modelu zadania Aby użyć dodatku Microsoft Excel Solver, należy zdefiniować w arkuszu kalkulacyjnym problem, który ma być rozwiązany. Dokonuje się tego przez ustalenie adresów komórek arkusza (jednej komórki lub zakresów komórek), w których wpisane są wartości lub formuły tworzące model zadania. Są to tzw.: komórki celu, komórki zmieniane, warunki ograniczające. Po zdefiniowaniu problemu i rozwiązywaniu go za pomocą dodatku Solver, będą znalezione takie wartości w komórkach zmienianych, które spełniają warunki ograniczające i które spowodują obliczenie żądanej wartości dla komórki celu. Obliczone wartości są następnie wyświetlane w arkuszu. Komórka celu (zawierająca wpis w postaci funkcji celu) jest komórką w modelu arkusza, która w wyniku zastosowania Solvera ma przyjąć wartość minimalną, maksymalną lub ustaloną (w postaci liczby rzeczywistej). Rys. 1. Widok fragmentu arkusza kalkulacyjnego z oknem Solver-Parametry Komórki zmieniane (zwane również zmiennymi decyzyjnymi) są komórkami, w których wartości mają wpływ na wartość komórki celu. Ich wartości są zmieniane iteracyjnie i podstawiane przez dodatek Solver do funkcji celu, dopóki nie zostanie znalezione rozwiązanie (np. minimalna wartość funkcji celu). 2
Warunek ograniczający jest najczęściej formułą w komórce arkusza, której wartość musi mieścić się w określonych granicach lub spełniać wartości docelowe. Warunki ograniczające mogą być zastosowane w stosunku do wartości komórki celu i komórek zmienianych. Po określeniu komórki celu, komórek zmienianych i warunków ograniczających można rozpocząć rozwiązywanie problemu. Można też zmieniać parametry sterujące opcjami raportu, dokładnością oraz matematycznym podejściem do metody rozwiązywania problemu. Ustawienia dodatku Solver Dodatek Solver zintegrowany jest z arkuszem, w którym został uruchomiony. Dlatego po zdefiniowaniu problemu w arkuszu zapamiętywane są ustawienia wprowadzone w oknach dialogowych - Solver-Parametry i Solver-Opcje. Ustawienia dla różnych problemów zdefiniowanych na oddzielnych arkuszach w skoroszycie są zapamiętywane osobno dla każdego arkusza. Przy otwarciu skoroszytu i uruchomieniu dodatku Solver ustawienia dla każdego arkusza pojawią się automatycznie. Żeby znaleźć najlepszą metodę rozwiązania problemu sformułowanego w arkuszu można próbować różnych ustawień parametrów Solvera i zachować grupy ustawień jako model. Typy zagadnień analizowanych przez dodatek Solver Dodatek Solver umożliwia analizowanie problemów optymalizacji typu: liniowego, nieliniowego, całkowitoliczbowego i binarnego. Jeśli wiadomo, że rozwiązywany problem jest zagadnieniem programowania liniowego lub jego model w arkuszu jest liniowym układem równań i nierówności, to można znacznie przyspieszyć proces rozwiązywania zaznaczając pole wyboru Przyjmij model liniowy w oknie dialogowym Solver Opcje. Jest to szczególnie ważne, gdy model w arkuszu jest złożony i obliczenia mogą zająć wiele czasu. Problemy całkowitoliczbowe występują gdy zastosuje się w modelu całkowitoliczbowe warunki ograniczające. Należy używać ich wtedy, gdy wielkość zmieniana występująca w zagadnieniu lub wynik musi przyjmować wartość całkowitą (np. przy obliczaniu liczby sztuk). Z kolei z binarnością mamy do czynienia wtedy, gdy zmienne decyzyjne lub wartość funkcji celu muszą przyjmować wartość logiczną tak lub nie (albo 1 lub 0). Uruchomienie dodatku Solver Dodatek Solver uruchamiamy przez otwarcie modelu arkusza i wybranie polecenia Solver z menu Narzędzia. Ilustruje to rysunek 2. Rys. 2. Uruchomienie Solvera 3
Ustalenie komórki celu (funkcji celu) ❶ ❹ ❷ ❸ Rys. 3. Okno dialogowe Solver-Parametry: 1- pole adresu komórki celu, 2 pole adresów komórek zmienianych, 3 pole adresów warunków ograniczających, 4 przycisk uruchamiający proces rozwiązywania problemu Po uruchomieniu dodatku Solver w polu Komórka celu (rys. 3) należy wprowadzić adres lub nazwę komórki, której wartość ma zostać zminimalizowana, zmaksymalizowana lub ustalona w postaci określonej liczby. Dla zawartości komórki celu obowiązują następujące zasady: Komórka celu powinna zawierać formułę, która bezpośrednio lub pośrednio zależy od komórek zmienianych, których adresy podane są w polu Komórki zmieniane.jeśli komórka celu nie zawiera formuły, musi sama być komórką zmienianą.jeśli nie określimy komórki celu, w dodatku Solver jest poszukiwane rozwiązanie (przez podstawianie wartości do komórek zmienianych), które spełnia wszystkie warunki ograniczające. Określanie komórek zmienianych (zmiennych decyzyjnych) Komórki zmieniane zawierają kluczowe zmienne modelu (np. ceny towarów, liczby sztuk wyrobów itp.). W oknie Solver- Parametry (rys. 3) do pola Komórki zmieniane należy wprowadzić adresy lub nazwy komórek, w których wartości mają być zmieniane przez dodatek Solver. Zmiany te są dokonywane do momentu dopóki nie zostaną spełnione warunki ograniczające problemu i komórka celu nie osiągnie żądanego wyniku. Przy wypełnianiu pola Komórki zmieniane obowiązują następujące zasady: Jeśli w dodatku Solver mają pojawić się propozycje adresów komórek zmienianych, których adresy są wywnioskowane na podstawie formuły zawartej w komórce celu, należy wybrać przycisk Odgadnij. Jeśli korzystamy z tego przycisku, musimy wcześniej określić komórkę celu.można podać adresy do 200 komórek zmienianych. Pozycja pola Komórki zmieniane może składać się z adresu pojedynczej komórki, adresu zakresu komórek lub kilku adresów nie przylegających do siebie komórek oddzielonych średnikami. Należy pamiętać, że jeśli komórki zmieniane zawierają formuły i jeśli zdecydujemy się zachować rozwiązanie po zamknięciu Solvera, to formuły w tych komórkach zostaną zastąpione stałymi wartościami ustalonymi przez Solver w wyniku procesu kalkulacyjnego. Określanie warunków ograniczających Żeby utworzyć listę warunków ograniczających w polu Warunki ograniczające (rys. 3 i 4) należy używać przycisków Dodaj, Zmień i Usuń w oknie dialogowym Solver Parametry (rys. 4). 4
Rys. 4. Okno dialogowe Solver-Parametry Podczas określania w oknie Solvera warunków ograniczających obowiązują następujące regóły: Formuły warunków ograniczających mogą być nierównościami (typu, ), równaniami lub ograniczać wartości do zbioru liczb całkowitych ( int ) bądź binarnych ( bin ) dla dowolnej komórki w modelu, wliczając w to komórkę celu i komórki zmieniane. Rys. 5. Okno dialogowe Dodaj warunek ograniczający W oknie dialogowym Dodaj warunek ograniczający (rys. 5), w pole Adres komórki należy wprowadzić adres komórki w arkuszu kalkulacyjnym, która zawiera zazwyczaj formułę, zależącą bezpośrednio lub pośrednio od jednej lub większej liczby komórek podanych jako komórki zmieniane. Istnieje też możliwość podania zakresu adresów komórek, dla których wartość ograniczenia będzie taka sama. W pole Warunek ograniczający należy wprowadzić adres komórki w arkuszu kalkulacyjnym, która zawiera wartość ograniczenia lub bezpośrednio wpisać tę wartość w postaci liczby. Pole Warunek ograniczający wypełniane jest automatycznie w przypadku zastosowania warunków typu int i bin. Kiedy używany jest operator int (operator wartości całkowitej), wielkość jest ograniczana do liczb całkowitych. Trzeba wtedy zastosować ustawienie Tolerancja w oknie dialogowym Solver - Opcje, aby ustalić dozwolony margines błędu. Tylko wartości komórek zmienianych mogą być ograniczane do wartości całkowitych. Dla każdego zagadnienia można zaznaczyć po dwa warunki ograniczające dla każdej komórki zmienianej (granicę górną i dolną) oraz do 100 dodatkowych ograniczeń. Rozwiązywanie problemu Proces rozwiązywania problemu uruchamiany jest przyciskiem Rozwiąż (rys. 3). Czas rozwiązywania zagadnienia zależy od: liczby komórek zmienianych, rozmiaru i stopnia złożoności modelu w arkuszu, wewnętrznej trudności zagadnienia. 5
Proces rozwiązywania problemu składa się z kolejnych iteracji. Podczas każdej iteracji, do ponownych obliczeń użyty jest nowy zbiór wartości komórek zmienianych i sprawdzane są warunki ograniczające oraz wartości funkcji celu. Proces rozwiązywania kończy się, gdy: znaleziony jest wynik z możliwą do przyjęcia dokładnością lub nie może być wykonany kolejny krok lub został wykorzystany maksymalny dozwolony czas albo maksymalna liczba iteracji. Po zakończeniu procesu rozwiązywania problemu w oknie dialogowym Solver-Wyniki (rys. 6) pojawi się kilka możliwych do wyboru dalszych działań: przechowanie znalezionych rozwiązań lub przywrócenie pierwotnych wartości w arkuszu, zachowanie rozwiązań w postaci scenariusza w Menedżerze scenariuszy, sporządzenie i przejrzenie wbudowanych raportów dodatku Solver. Zapisywanie modelu lub scenariusza Rys. 6. Okno dialogowe Solver-Wyniki Przed znalezieniem rozwiązania można zapamiętać bieżące ustawienia jako model wybierając przycisk Zapisz model w oknie dialogowym Solver Opcje (rys. 7). Rys. 7. Widok okna Solver-Opcje z zaznaczonymi przyciskami opcji modelu Przy zapisaniu modelu, w odpowiednim zakresie komórek w arkuszu, zapamiętywane są: komórka celu, komórki zmieniane, warunki ograniczające i ustawienia w oknie dialogowym Solver - Opcje. Solver zapisuje model (rys. 8) w zakresie komórek począwszy od komórki podanej w polu dialogu Zapisz model. Rozmiary zakresu zależą od liczby podanych warunków ograniczających. Każdy arkusz w zeszycie może zawierać sformułowania różnych problemów dla dodatku Solver, z taką liczbą różnych modeli, jaka jest potrzebna dla każdego zagadnienia. Zapisany model można załadować przez podanie w oknie Załaduj model zakresu komórek, w którym został on zapisany 6
(rys. 7). Wtedy następuje zastąpienie aktualnych ustawień dodatku Solver zbiorem ustawień zapisanych we wczytywanym modelu. Ustawienia modelu przechowywane są jako zakres komórek zawierających formuły. Przy otwarciu arkusza automatycznie są wyświetlane te ustawienia Solvera, które były używane w momencie zamykania arkusza. Natomiast w przypadku różnych modeli ich zapisanie umożliwia wczytanie gotowych ustawień Solvera, bez konieczności ponownego ich formułowania. Rys. 8. Widok fragmentu arkusza z zapisanym modelem Stosując złożone modele można użyć Menedżera scenariuszy. Komórki zmieniane, określone w Menedżerze scenariuszy, będą automatycznie proponowane jako komórki zmieniane w dodatku Solver. Zapisywanie złożonych scenariuszy dla każdego arkusza odbywa się za pomocą przycisku Zapisz scenariusz w oknie dialogowym Solver- Wyniki (rys. 8). Rys. 9. Widok okna Solver-Wyniki z zaznaczonym przyciskiem do zapisu scenariusza Przywracanie ustawień dodatku Solver Wtedy, gdy Solver jest stosowany w nowym arkuszu do rozwiązania problemu nie określonego w nim wcześniej, okno Solver - Parametry zawiera ustawienia domyślne. Jednakże w oknie dialogowym Solver - Opcje nadal będą obowiązywać ustawienia używane podczas obecnej sesji pracy z programem Microsoft Excel. Można je przywrócić do ustawień domyślnych wybierając przycisk Przywróć wszystko w oknie dialogowym Solver - Parametry. 7
Wyniki i specjalne raporty dodatku Microsoft Excel Solver Używając dodatku Microsoft Excel Solver można tworzyć trzy typy raportów podsumowujących wyniki pomyślnie zakończonego procesu rozwiązywania problemu.w programie Microsoft Excel każdy raport tworzony jest na oddzielnym arkuszu w aktualnym skoroszycie. Raport wrażliwości zawiera informacje wskazujące, jak rozwiązanie reaguje na zmiany w formułach użytych w zagadnieniu. Istnieją dwie wersje tego raportu w zależności od tego, czy została wybrana lub nie opcja Przyjmij model liniowy w oknie dialogowym Solver - Opcje. Microsoft Excel 8.0 Raport wrażliwości Arkusz: [SOLVERPD przyklad.xls]asortyment produktów Raport utworzony: 99-03-16 18:25:22 Komórki decyzyjne Wartość Przyrost Komórka Nazwa końcowa marginalny $D$9 Liczba do produkcji-> Telewizory 160 0 $E$9 Liczba do produkcji-> Magnetofony 200 0 $F$9 Liczba do produkcji-> Kolumny 80 0 Warunki ograniczające Wartość Mnożnik Komórka Nazwa końcowa Lagrange'a $C$11 Obudowy wykorzystane 360 0 $C$12 Kineskopy wykorzystane 160 0 $C$13 Głośniki wykorzystane 800 6 $C$14 Zasilacze wykorzystane 360 0 $C$15 Podzespoły wykorzystane 600 14 Rys. 10. Przykładowy Raport wrażliwości dla problemu nieliniowego W przypadku nie wybrania opcji Przyjmij model liniowy raport podaje między innymi następujące wartości (rys. 10): Przyrost marginalny - Mierzony jest przyrost wartości w komórce celu na jednostkowy przyrost wartości w komórce zmienianej.mnożnik Lagrange a - Mierzony jest przyrost wartości w komórce celu na jednostkowy przyrost wartości odpowiedniego warunku ograniczającego. Jeśli wybrano pole wyboru Przyjmij model liniowy w oknie dialogowym Solver - Opcje, tworzona jest inna wersja raportu wrażliwości (rys. 11). W tej wersji raportu dodane są dla każdej komórki zmienianej następujące informacje: Koszt krańcowy - Zastępuje przyrost marginalny; mierzony jest przyrost wartości w komórce celu na jednostkowy przyrost wartości w komórce zmienianej, Współczynnik funkcji celu - Mierzona jest zależność względna między komórką zmienianą a komórką celu (funkcją celu), Dopuszczalny wzrost - Pokazana jest zmiana we współczynniku funkcji celu, konieczna, aby nastąpił wzrost w wartości optymalnej którejkolwiek z komórek zmienianych, Dopuszczalny spadek - Pokazana jest zmiana we współczynniku funkcji celu, konieczna, aby nastąpił spadek wartości optymalnej którejkolwiek z komórek zmienianych. 8
Microsoft Excel 8.0 Raport wrażliwości Arkusz: [SOLVERPD przyklad.xls]trasy przewozu Raport utworzony: 99-03-16 18:31:37 Komórki decyzyjne Wartość Przyrost Współczynnik Dopuszczalny Dopuszczalny Komórka Nazwa końcowa krańcowy funkcji celu wzrost spadek $C$8 Pomorze Katowice 0 6 10 1E+30 6 $D$8 Pomorze Bydgoszcz 0 3 8 1E+30 3 $E$8 Pomorze Wrocław 0 0 6 1E+30 0 $F$8 Pomorze Gdańsk 80 0 5 0 1 $G$8 Pomorze Warszawa 220 0 4 4 4 $C$9 Dln. Śląsk Katowice 0 4 6 1E+30 4 $D$9 Dln. Śląsk Bydgoszcz 0 2 5 1E+30 2 $E$9 Dln. Śląsk Wrocław 180 0 4 0 1 $F$9 Dln. Śląsk Gdańsk 80 0 3 1 0 $G$9 Dln. Śląsk Warszawa 0 4 6 1E+30 4 $C$10 Tatry Katowice 180 0 3 4 4 $D$10 Tatry Bydgoszcz 80 0 4 2 5 $E$10 Tatry Wrocław 20 0 5 1 2 $F$10 Tatry Gdańsk 0 1 5 1E+30 1 $G$10 Tatry Warszawa 0 6 9 1E+30 6 Warunki ograniczające Wartość Cena Prawa strona Dopuszczalny Dopuszczalny Komórka Nazwa końcowa dualna w. o. wzrost spadek $B$8 Pomorze Razem 300 0 310 1E+30 10 $B$9 Dln. Śląsk Razem 260-2 260 80 10 $B$10 Tatry Razem 280-1 280 80 10 $C$12 Razem: --- 180 4 180 10 80 $D$12 Razem: --- 80 5 80 10 80 $E$12 Razem: --- 200 6 200 10 80 $F$12 Razem: --- 160 5 160 10 80 $G$12 Razem: --- 220 4 220 10 220 Rys. 11. Przykładowy Raport wrażliwości dla problemu liniowego Do każdej komórki ograniczenia są dodane następujące informacje: Cena dualna - Zastępuje mnożnik Lagrange a; mierzony jest przyrost funkcji celu na jednostkowy przyrost prawej strony warunku ograniczającego. Prawa strona w.o. - Wyświetlane są podane wartości warunków ograniczających. Dopuszczalny wzrost - Pokazana jest zmiana wartości Prawa strona w.o., konieczna, aby nastąpił wzrost wartości optymalnej którejkolwiek z komórek zmienianych. Dopuszczalny spadek - Pokazana jest zmiana wartości Prawa strona w.o., konieczna, aby nastąpił spadek wartości optymalnej którejkolwiek z komórek zmienianych. W Raporcie wyników pokazywane są: wartość komórki celu, wartości w komórkach zmienianych (pierwotne i końcowe), warunki ograniczające i informacje o nich. Informacja o warunkach ograniczających pojawiają się w kolumnach Status i Luz, ukazujących na ile zostały one spełnione. W kolumnie Status wyświetlana jest jedna z następujących wartości: Wiążący - Końcowa wartość komórki jest równa wartości warunku ograniczającego, np. jeśli warunek ograniczający ma postać C 11 <=400, a status jest Wiążący, to końcowa wartość komórki będzie równa 400.Nie wiążący - Warunek ograniczający jest spełniony, ale wartość nie jest równa wartości warunku, np. jeśli komórka C11 zawiera 350, a ograniczenie wynosi C11<=400, to status warunku będzie Nie wiążący. 9
Microsoft Excel 8.0 Raport wyników Arkusz: [SOLVERPD przyklad.xls]asortyment produktów Raport utworzony: 99-03-16 18:25:22 Komórka celu (Maks) Komórka Nazwa Wartość początkowa Wartość końcowa $D$18 Razem Zysk całkowity: 10 095 zł 14 917 zł Komórki decyzyjne Komórka Nazwa Wartość początkowa Wartość końcowa $D$9 Liczba do produkcji-> Telewizory 100 160 $E$9 Liczba do produkcji-> Magnetofony 100 200 $F$9 Liczba do produkcji-> Kolumny 100 80 Warunki ograniczające Komórka Nazwa Wartość komórki formuła Status Luz $C$11 Obudowy wykorzystane 360 $C$11<=$B$11 Nie wiążące 90,10309036 $C$12 Kineskopy wykorzystane 160 $C$12<=$B$12 Nie wiążące 90,10309036 $C$13 Głośniki wykorzystane 800 $C$13<=$B$13 Wiążące 0 $C$14 Zasilacze wykorzystane 360 $C$14<=$B$14 Nie wiążące 90,10309036 $C$15 Podzespoły wykorzystane 600 $C$15<=$B$15 Wiążące 0 $D$9 Liczba do produkcji-> Telewizory 160 $D$9>=0 Nie wiążące 160 $E$9 Liczba do produkcji-> Magnetofony 200 $E$9>=0 Nie wiążące 200 $F$9 Liczba do produkcji-> Kolumny 80 $F$9>=0 Nie wiążące 80 Rys. 12. Przykładowy Raport wyników W kolumnie Luz jest zawarta różnica między wartością wyświetlaną w komórce po rozwiązywaniu i wartością pierwotnego warunku ograniczającego dla tej komórki, np. jeśli warunek ograniczający ma postać Cl1 <=400, a komórka C11 zawiera wartość 350, to luz będzie wynosił 50. Kiedy status jest Wiążący, wartość luzu wynosi zero. W Raporcie granic są wyświetlane dla komórki celu i komórek zmienianych ich wartości granic dolnej i górnej oraz wynik. Microsoft Excel 8.0 Raport granic Arkusz: [SOLVERPD przyklad.xls]asortyment produktów Raport utworzony: 99-03-16 18:25:23 Cel Komórka Nazwa końcowa $D$18 Razem Zysk całkowity: 14 917 zł Zmienne decyzyjne Dolna Cel Górna Cel Komórka Nazwa końcowa granica Wynik granica Wynik $D$9 Liczba do produkcji-> Telewizory 160 0 7698 160 14917 $E$9 Liczba do produkcji-> Magnetofony 200 0 9030 200 14917 $F$9 Liczba do produkcji-> Kolumny 80 0 13107 80 14917 Rys. 13. Przykładowy Raport granic Granica dolna - Najmniejsza wartość, którą może przyjąć komórka zmieniana, podczas gdy wszystkie inne komórki zmieniane są stałe, a warunki ograniczające są spełnione. 10
Granica górna - Największa wartość, którą może przyjąć komórka zmieniana, podczas gdy wszystkie inne komórki zmieniane są stałe, a warunki ograniczające są spełnione. Wynik - Wartość komórki celu, kiedy komórka zmieniana osiągnęła swoją granicę dolną lub górną. Porady dotyczące ustawień parametrów funkcjonowania Solvera Przypadek kiedy komórki zmieniane i komórka celu różnią się o rzędy wielkości Aby znaleźć rozwiązanie zagadnienia związanego z komórkami zmienianymi, różniącymi się od komórki celu o więcej niż jeden rząd wielkości, należy zaznaczyć pole wyboru Automatyczne skalowanie w oknie dialogowym Solver -Opcje. Na przykład, można użyć tej opcji, jeżeli planuje się zainwestowanie 10 000 000 zł w pięciu różnych akcjach i stara się znaleźć najlepszy sposób zwrotu inwestycji. Komórki zmieniane będą miały wartości w dziesiątkach milionów, a komórka celu wyrażona będzie w procentach, czyli jej wartość będzie osiem lub dziewięć rzędów wielkości mniejsza niż komórek zmienianych. W tego typu przypadkach, przy zaznaczaniu pola wyboru Automatyczne skalowanie należy upewnić się przed wybraniem przycisku Rozwiąż, że początkowe wartości komórek zmienianych mają ten sam rząd wielkości, co ich oczekiwane wartości końcowe. Wybór matematycznego podejścia używanego przez dodatek Solver Pola w górnej części okna dialogowego Solver - Opcje służą do wyboru pomiędzy wzajemnie wykluczającymi się podejściami technicznymi, używanymi przez dodatek Solver w różnych punktach procesu rozwiązywania. Domyślne ustawienia dla tych opcji są właściwe dla prawie wszystkich zagadnień. Opcje te stosują głównie osoby doświadczone w zakresie matematycznych metod programowania. Jeśli pojawią się trudności przy osiąganiu pożądanego rozwiązania, można eksperymentować z nimi próbując otrzymać lepsze wyniki. Poniżej przedstawiono opisy poszczególnych opcji okna dialogowego Solver Opcje. Okno to pozwala sterować metodami poszukiwania rozwiązań, ładować i zapisywać definicje zadań oraz definiować parametry zadań liniowych i nieliniowych. Każdej opcji odpowiada ustawienie domyślne, które jest poprawne w większości przypadków. Maksymalny czas Ogranicza czas poszukiwania rozwiązania. W polu tym można podawać wartości nie większe niż 32767, ale wartość domyślna 100 sekund jest zupełnie wystarczająca w większości przypadków. Liczba iteracji Ogranicza czas poszukiwania rozwiązania, nakładając limit na liczbę pośrednich kroków. Maksymalna liczba iteracji wynosi 32767, ale wartość domyślna 100 jest w większości przypadków zupełnie wystarczająca. Dokładność Określa dokładność rozwiązania sprawdzając czy wartość komórki celu przyjmuje wartość docelową, albo górną lub dolną granicę. Dokładność musi być określona przez liczbę ułamkową z zakresu od 0 do 1. Dokładność jest tym większa, im więcej miejsc dziesiętnych zawiera podana liczba - na przykład, 0,0001 określa większą dokładność niż 0,01. Większa dokładność związana jest z dłuższym czasem poszukiwania rozwiązania. Tolerancja Wartość procentowa informująca na ile wartość w komórce celu rozwiązania zadania z więzami całkowitymi może odbiegać od wartości optymalnej, aby można ją uznać za możliwą do zaakceptowania. Parametr ten ma zastosowanie tylko w przypadku zadań z więzami całkowitymi. Większa wartość tolerancji skraca czas poszukiwania rozwiązania. 11
Zbieżność Kiedy względna zmiana wartości w komórce celu dla pięciu ostatnich iteracji jest mniejsza niż liczba podana w polu Zbieżność, przerywane jest poszukiwanie rozwiązania. Zbieżność odnosi się tylko do zadań nieliniowych i musi być określona przez liczbę ułamkową z przedziału pomiędzy 0 a 1. Mniejszej zbieżności odpowiada liczba, która ma więcej miejsc dziesiętnych - na przykład, 0,0001 określa mniejszą względną zmianę niż 0,01. Im mniejsza jest wartość zbieżności, tym więcej czasu potrzeba na znalezienie rozwiązania. Przyjmij model liniowy Zaznacz to pole, aby przyspieszyć poszukiwanie rozwiązania w przypadku, kiedy wszystkie zależności w modelu są liniowe i chcesz rozwiązać zagadnienie liniowej optymalizacji albo zastosować liniowe przybliżenie zagadnienia nieliniowego. Pokaż wyniki iteracji Należy zaznaczyć tę opcję, aby przerywać poszukiwanie rozwiązania i wyświetlać wyniki po każdej iteracji. Automatyczne skalowanie Zaznacz, aby zastosować automatyczne skalowanie, kiedy pomiędzy danymi i wynikami występuje duża różnica wielkości - na przykład, kiedy optymalizujesz procentowy dochód wynikający z milionowych inwestycji. Przyjmij nieujemne Sprawia, że dla wszystkich komórek zmienianych, dla których w polu Warunki ograniczające w oknie dialogowym Dodaj warunek ograniczający, nie określono ograniczeń, przyjmuje się dolną granicę wartości równą 0. Estymaty Określa sposób uzyskania początkowych wartości estymat podstawowych zmiennych w każdym jednowymiarowym procesie poszukiwania. Styczna Wykorzystuje ekstrapolację liniową na podstawie wektora stycznego. Kwadratowa Wykorzystuje ekstrapolację kwadratową. Daje lepsze wyniki w przypadku zadań wyraźnie nieliniowych. Pochodne Określa sposób różniczkowania przy wyznaczaniu pochodnej cząstkowej dla funkcji celu i funkcji ograniczeń. W przód Właściwa w przypadku większości zadań, w których wartości ograniczeń zmieniają się stosunkowo wolno. Centralne Należy stosować w zadaniach, w których wartości ograniczeń zmieniają się szybko, szczególnie w pobliżu granic. Opcja ta wydłuża obliczenia, ale może być skuteczna, kiedy pojawia się komunikat, że nie można poprawić rozwiązania. Szukanie Określa algorytm używany w iteracji do wyznaczenia kierunku poszukiwania. Newtona Wykorzystuje metodę Newtona, która zwykle wymaga większego obszaru pamięci, ale mniejszej liczby iteracji niż metoda gradientu sprzężonego. Gradient sprzężony Wymaga mniejszego obszaru pamięci, ale większej liczby iteracji niż metoda Newtona dla 12
zapewnienia tej samej dokładności. Z metody tej należy korzystać w przypadku rozbudowanych zadań i małego obszaru dostępnej pamięci, a także, kiedy kolejne iteracje wykazują niewielki postęp. Komunikaty wyświetlane gdy Solver znajduje rozwiązanie Po znalezieniu rozwiązania problemu, w dodatku Solver wyświetlony zostanie jeden z następujących komunikatów: Solver znalazł rozwiązanie - Wszystkie warunki ograniczające i warunki optymalności są spełnione. Wszystkie warunki ograniczające są spełnione zgodnie z ustawieniami dokładności i tolerancji całkowitoliczbowości oraz, jeśli takie było zadanie, jest znalezione maksimum, minimum lub wartość docelowa dla komórki w polu Komórka celu. Solver zbliżył się do aktualnego rozwiązania - Wszystkie warunki ograniczające są spełnione. Wartość w komórce wymienionej w polu Komórka celu faktycznie nie ulegała zmianom przez pięć ostatnich prób rozwiązywania. Rozwiązanie może być znalezione, ale jest także możliwe, że iteracyjny proces rozwiązywania czyni bardzo małe postępy i jest daleko od rozwiązania, albo że wartość dokładności (ustalana w polu Dokładność w oknie dialogowym Solver - Opcje) jest zbyt niska lub że początkowe wartości dla komórek zmienianych są zbyt daleko od rozwiązania. Przypadek gdy Solver przerywa pracę, zanim znajdzie rozwiązanie Podczas rozwiązywania zagadnienia Solver może się zatrzymać przed uzyskaniem optymalnego lub nawet prawdopodobnego rozwiązania. W tym przypadku pojawi się pole dialogu z jednym z komunikatów zakończenia, umożliwiając zachowanie ostatnich wartości lub przywrócenie poprzedniej zawartości. Może zdarzyć się tak z następujących przyczyn: Proces rozwiązywania został przerwany przez użytkownika. Wybrano przycisk Zatrzymaj podczas krokowego wykonywania iteracji. Wybrano przycisk Zatrzymaj, kiedy został wykorzystany maksymalny czas lub maksymalna liczba iteracji. Wartość komórki z pola Komórka celu wzrasta lub zmniejsza się poza granicę. Zaznaczono opcję Przyjmij model liniowy w przypadku zagadnienia nieliniowego. Złożony model zawiera całkowitoliczbowe warunki ograniczające, a trzeba zmienić ustawienie Tolerancja na wyższą wartość procentową albo zwiększyć ustawienia Maksymalny czas lub Maksymalna liczba iteracji. Konieczne jest zaznaczenie opcji Automatyczne skalowanie, ponieważ wielkości wartości wejściowe lub wartości wejściowe i wyjściowe różnią się między sobą o kilka rzędów. Należy pamiętać, że ostateczne rozwiązania może zależeć od początkowych wartości wprowadzonych do komórek zmienianych. Ustawienie w komórkach zmienianych wartości, które przypuszczalnie są bliskie optymalnym często skraca czas rozwiązywania. Jest to szczególnie ważne, jeśli wybrano opcję Automatyczne skalowanie lub jeśli zastosowano ograniczenia w postaci liczb całkowitych. Jeżeli znalezione rozwiązanie znacznie różni się od przewidywanego, należy spróbować ponownego uruchomienia dodatku Solver z innymi wartościami początkowymi dla komórek zmienianych. 13