Ved simple problemer finder Solver i Excel normalt hurtigt de optimale Solver-variableværdier for objektivfunktionen. Men i nogle tilfælde har Solver problemer med at finde de Solver-variableværdier, der optimerer objektivfunktionen. I disse tilfælde viser Solver typisk en meddelelse eller en fejlmeddelelse, der beskriver eller diskuterer de problemer, den har med dit problem.
Solver har fundet en løsning
Meddelelsen fortæller dig, at Solver har gjort sit arbejde og fundet et sæt variable værdier, der opfylder dine begrænsninger.
Solver er konvergeret til den nuværende løsning
Meddelelsen fortæller dig, at Excel har fundet en løsning, men ikke er særlig sikker på løsningen. I det væsentlige advarer denne meddelelse dig om muligheden for, at der muligvis findes en bedre løsning på dit optimeringsmodelleringsproblem. For at lede efter en bedre løsning skal du justere indstillingen Konvergens i dialogboksen Løsningsindstillinger, så Excel arbejder med et højere præcisionsniveau.
Solver kan ikke forbedre den nuværende løsning
Meddelelsen fortæller dig, at Excel har beregnet en groft, temmelig nøjagtig løsning, men igen, du kan måske finde en bedre løsning. For at fortælle Excel, at det skal lede efter en bedre løsning, skal du øge den præcisionsindstilling, som Solver bruger.
Det betyder selvfølgelig, at Excel vil tage længere tid. Men den ekstra tid kan resultere i, at den finder en bedre løsning. For at justere præcisionen bruger du igen dialogboksen Løsningsindstillinger.
Stop valgt, når den maksimale tidsgrænse blev nået
Meddelelsen fortæller dig, at Excel løb tør for tid. Du kan prøve at løse optimeringsmodelleringsproblemet igen med en større Max Time-indstilling. Bemærk dog, at hvis du ser denne meddelelse, skal du gemme det arbejde, som Excel allerede har udført som en del af optimeringsmodelleringsproblemløsningen.
Gem det arbejde, som Excel allerede har udført, ved at klikke på knappen Behold løserresultater, når Excel viser denne meddelelse. Excel vil være tættere på den endelige løsning, næste gang den begynder at lede efter den optimale løsning.
Løser stoppet på brugerens anmodning
Eh, indlysende ikke? Løser god hund. Solver stoppede, fordi mester bad den stoppe. Løser få godbid.
Stop valgt, når den maksimale iterationsgrænse blev nået
Meddelelsen fortæller dig, at Excel løb tør for gentagelser, før det fandt den optimale løsning. Du kan omgå dette problem ved at indstille en større iterationsværdi i dialogboksen Løsningsindstillinger.
Objektive Celleværdier konvergerer ikke
Meddelelsen fortæller dig, at objektivfunktionen ikke har en optimal værdi. Med andre ord, objektivfunktionen bliver ved med at blive større, selvom begrænsningsformlerne er opfyldt. Med andre ord finder Excel ud af, at den bliver ved med at få en bedre objektiv funktionsværdi med hver iteration, men den ser ikke ud til at være tættere på en endelig objektiv funktionsværdi.
Hvis du støder på denne fejl, har du sandsynligvis ikke defineret og beskrevet dit optimeringsmodelleringsproblem korrekt. Din objektive funktion giver måske ikke meget mening eller er måske ikke kongruent med dine begrænsningsformler. Eller måske giver en eller flere af dine begrænsningsformler - eller sandsynligvis flere af dem - ikke rigtig mening.
Solver kunne ikke finde en gennemførlig løsning
Meddelelsen fortæller dig, at dit optimeringsmodelleringsproblem ikke har et svar. Som en praktisk sag, når du ser denne besked, betyder det, at dit sæt af begrænsninger udelukker ethvert muligt svar.
Antag for eksempel, at det tager 3.000 timer at skrive en bog, og at der kun er 2.000 timer til arbejde på et år. Hvis du sagde, at du ville skrive mindst én bog om året, er der ingen løsning på den objektive funktion.
En bog kræver op til 3.000 timers arbejde, men du har kun 2.000 timer til at gennemføre et 3.000 timers projekt. Det er selvfølgelig umuligt. Der findes ingen optimal værdi for den objektive funktion.
Linearitetsbetingelser, der kræves af denne LP Solver, er ikke opfyldt
Meddelelsen indikerer, at selvom du valgte Simplex LP-løsningsmetoden, har Excel nu fundet ud af, at din model faktisk ikke er lineær. Og den er gal for pokker. Så den viser dig denne meddelelse for at indikere, at den ikke kan løse problemet, hvis den skal antage, at dine objektive funktions- og begrænsningsformler er lineære.
Hvis du ser denne meddelelse, så prøv den ikke-lineære GRG-løsningsmetode.
Problemet er for stort til at Solver kan håndtere det
Meddelelsen betyder, at du har et problem, der er for stort til at løse problemet, enten fordi du har forsøgt at modellere med mere end 200 beslutningsvariable eller mere end 100 begrænsninger. For at omgå dette problem kan du muligvis prøve at minimere antallet af variabler eller begrænsninger, så deres antal falder under begrænsningen "hey ven, det er bare for stort".
Løseren stødte på en fejlværdi i en mål- eller begrænsningscelle
Meddelelsen betyder, at en af dine formler resulterer i en fejlværdi, eller at du har tudet ved at beskrive eller definere en begrænsning. For at omgå dette problem skal du rette den falske formel eller den fjollede begrænsning.
Der er ikke nok hukommelse til at løse problemet
Budskabet er selvbeskrivende. Hvis du ser denne meddelelse, har Solver ikke nok hukommelse til at løse optimeringsmodelleringsproblemet, som du arbejder på. Din eneste udvej er at forsøge at frigøre hukommelse, måske ved at lukke andre åbne programmer og unødvendige dokumenter eller projektmapper.
Hvis det ikke virker, vil du måske også tilføje mere hukommelse til din computer, især hvis du ofte skal lave optimeringsmodelleringsproblemer. Hukommelse er billig.
Fejl i modellen. Bekræft venligst, at alle celler og begrænsninger er gyldige
Beskeden betyder, at du har noget fjollet - sikkert også noget, der kan fikses - i dit optimeringsproblem. Tjek dine formler og dine inputværdier. Sørg for, at der ikke er noget åbenlyst galt. Åh, og en anden ting: Sørg for, at du ikke bruger ordet "solver" i nogen af dine navngivne variable. Det kan forvirre Solver.
Eksempel på en Solver-evaluering
I det følgende eksempel påvirker annonceringsniveauet i hvert kvartal antallet af solgte enheder, hvilket indirekte bestemmer mængden af salgsindtægter, de tilknyttede udgifter og fortjenesten. Solver kan ændre de kvartalsvise budgetter for annoncering (beslutningsvariable celler B5:C5), op til en samlet budgetbegrænsning på $20.000 (celle F5), indtil det samlede overskud (målcelle F7) når det maksimalt mulige beløb. Værdierne i de variable celler bruges til at beregne overskuddet for hvert kvartal, så de er relateret til formlens mål celle F7, =SUM (Q1 Profit:Q2 Profit).
1. Variable celler
2. Begrænset celle
3. Målcelle
Efter at Solver er kørt, er de nye værdier som følger.
Definer og løs et problem
På Data fanen i Analyse gruppen , klik på Løser.
Bemærk: Hvis Solver kommandoen eller Analysis gruppen er ikke tilgængelig, du skal aktivere Solver-tilføjelsen. Se: Sådan aktiverer du Solver-tilføjelsen.
I feltet Angiv mål indtast en cellereference eller et navn til målcellen. Objektcellen skal indeholde en formel.
Gør et af følgende:
-
Hvis du ønsker, at værdien af målcellen skal være så stor som muligt, skal du klikke på Maks.
-
Hvis du ønsker, at værdien af målcellen skal være så lille som muligt, skal du klikke på Min.
-
Hvis du ønsker, at målcellen skal have en bestemt værdi, skal du klikke på Værdi af og derefter skrive værdien i feltet. a>
-
I feltet Ved at ændre variable celler indtast et navn eller en reference for hvert celleområde for beslutningsvariabler. Adskil de ikke-tilstødende referencer med kommaer. De variable celler skal være relateret direkte eller indirekte til den objektive celle. Du kan angive op til 200 variable celler.
I feltet Med forbehold for begrænsningerne indtast eventuelle begrænsninger, som du vil anvende ved at gøre følgende:
I Solver Parameters dialogboksen skal du klikke Tilføj .
I feltet Cellereference indtast cellereferencen eller navnet på det celleområde, som du vil begrænse værdien for.
Klik på relationen ( <=, , >=, int, bin eller dif ), som du ønsker mellem den refererede celle og begrænsningen. Hvis du klikker vises i binær, bin boks. Hvis du klikker på begrænsningen vises i heltal, int -boks. Hvis du klikker på dif, alldifferent vises i < en i=29>Begrænsning boks.
Hvis du vælger <=, = eller >= for relationen i Begrænsning boksen, skal du indtaste et tal, en celle reference eller navn eller en formel.
Gør et af følgende:
-
For at acceptere begrænsningen og tilføje en anden skal du klikke på Tilføj.
-
For at acceptere begrænsningen og vende tilbage til Solver Parameters dialogboks skal du klikke på OK a>.
Bemærk Du kan anvende int , bin og dif relationer kun i begrænsninger på beslutningsvariable celler.
Du kan ændre eller slette en eksisterende begrænsning ved at gøre følgende:
I Solver Parameters dialogboksen skal du klikke på den begrænsning, du vil ændre eller slette.
Klik Skift og foretag derefter dine ændringer, eller klik Slet.
Klik Løs og gør et af følgende:
-
For at beholde løsningsværdierne på regnearket skal du i Solver Results dialogboksen klikke på Behold Løsningsløsning.
-
For at gendanne de oprindelige værdier, før du klikkede Løs, skal du klikke Gendan oprindelige værdier .
-
Du kan afbryde løsningsprocessen ved at trykke på Esc. Excel genberegner regnearket med de sidste værdier, der findes for beslutningsvariablecellerne.
-
For at oprette en rapport, der er baseret på din løsning, efter at Solver har fundet en løsning, kan du klikke på en rapporttype i Rapporter boksen og klik derefter på OK. Rapporten oprettes på et nyt arbejdsark i din projektmappe. Hvis Solver ikke finder en løsning, er kun visse rapporter eller ingen rapporter tilgængelige.
-
For at gemme dine beslutningsvariable celleværdier som et scenarie, som du kan vise senere, skal du klikke på Gem scenarie i Løserresultater dialogboksen, og skriv derefter et navn til scenariet i Scenarionavn boksen.< /span>
Gå gennem prøveløsninger fra Solver
Når du har defineret et problem, skal du klikke på Indstillinger i Solver-parametre dialogboks.
I Indstillinger dialogboksen skal du vælge Vis iterationsresultater afkrydsningsfeltet for at se værdierne for hver prøveløsning, og klik derefter OK.
I Solver Parameters dialogboksen skal du klikke Løs .
Gør et af følgende i Vis prøveløsning dialogboksen:
Ændre, hvordan Solver finder løsninger
I Solver Parameters dialogboksen skal du klikke på Indstillinger .
Vælg eller indtast værdier for en af mulighederne på Alle metoder, GRG ikke-lineær a> og Evolutionære faner i dialogboksen.
Gem eller indlæs en problemmodel
I Solver Parameters dialogboksen skal du klikke Indlæs/Gem.
Indtast et celleområde for modelområdet, og klik enten Gem eller Indlæs.
Når du gemmer en model, skal du indtaste referencen for den første celle i et lodret område af tomme celler, hvori du vil placere problemmodellen. Når du indlæser en model, skal du indtaste referencen for hele rækken af celler, der indeholder problemmodellen.
Tip: Du kan gemme de sidste valg i Solver Parameters dialogboksen med et regneark ved at gemmer projektmappen. Hvert regneark i en projektmappe kan have sine egne Solver-valg, og dem alle gemmes. Du kan også definere mere end ét problem for et regneark ved at klikke på Indlæs/Gem for at gemme problemer individuelt.
Løsningsmetoder brugt af Solver
Du kan vælge en af følgende tre algoritmer eller løsningsmetoder i Solver Parameters dialogboksen:
-
Generalized Reduced Gradient (GRG) ikke-lineær Bruges til problemer, der er glatte ikke-lineære.
-
LP Simplex Bruges til problemer, der er lineære.
-
Evolutionær Bruges til problemer, der er ujævne.