Excel Solver-tutorial mei stap-foar-stap foarbylden

  • Diel Dit
Michael Brown

De tutorial ferklearret hoe't jo Solver taheakje en wêr't te finen is yn ferskate Excel-ferzjes, fan 2016 oant 2003. Stap foar stap foarbylden litte sjen hoe't jo Excel Solver brûke om optimale oplossingen te finen foar lineêre programmearring en oare soarten problemen.

Elkenien wit dat Microsoft Excel in protte nuttige funksjes en krêftige ark befettet dy't jo oeren oan berekkeningen besparje kinne. Mar wisten jo dat it ek in ark hat dat jo helpe kin om optimale oplossingen te finen foar beslútproblemen?

Yn dizze tutorial sille wy alle essensjele aspekten fan 'e Excel Solver-tafoeging dekke en in stap jaan -by-step gids oer hoe't jo it meast effektyf brûke.

    Wat is Excel Solver?

    Excel Solver heart ta in spesjale set fan kommando's faak oantsjutten as What-if Analysis Tools. It is primêr bedoeld foar simulaasje en optimisaasje fan ferskate bedriuws- en yngenieurmodellen.

    De Excel Solver-tafoeging is benammen nuttich foar it oplossen fan lineêre programmearringproblemen, aka lineêre optimisaasjeproblemen, en wurdt dêrom soms in neamd. lineêre programmearring solver . Ofsjoen fan dat kin it glêde net-lineêre en net-glêde problemen omgean. Sjoch asjebleaft Excel Solver-algoritmen foar mear details.

    Hoewol't Solver net alle mooglike problemen kin kreakje, is it echt nuttich by it omgean mei allerhanne optimisaasjeproblemen wêr't jo it bêste beslút nimme moatte. Bygelyks, it kinkwantiteit besteld troch elke klant (B10: E10) moatte wurde levere. Dit binne Beheinde sellen .

  • Wat is it doel? De minimale totale kosten fan ferstjoering. En dit is ús Objektyf -sel (C12).
  • It folgjende ding foar jo te dwaan is de totale kwantiteit te berekkenjen dy't fan elk pakhús ferstjoerd is (G7:G8), en de totale guod ûntfongen troch eltse klant (B9: E9). Jo kinne dit dwaan mei ienfâldige Sum-formules demonstrearre yn 'e ûnderste skermôfbylding. Foegje ek de SUMPRODUCT-formule yn C12 yn om de totale kosten fan ferstjoering te berekkenjen:

    Om ús transportoptimalisaasjemodel makliker te begripen te meitsjen, meitsje de folgjende neamde berik:

    Beriknamme Sellen Oplosserparameter
    Products_shipped B7: E8 Fariabele sellen
    Beskikber I7:I8 Beheining
    Totaal_ferstjoerd G7:G8 Beheining
    Besteld B10:E10 Beheining
    Totaal_ûntfongen B9:E9 Beheining
    Ferstjoerkosten C12 Doel

    It lêste wat jo oerbliuwe om te dwaan is de parameters fan Excel Solver ynstelle:

    • Doel: Shipping_cost ynsteld op Min.
    • Fariabele sellen: Products_shipped
    • Beheinings: Totaal_ûntfongen = Besteld en Totaal_ferstjoerd <= Beskikber

    Betelje asjebleaft oandacht dy't wy hawwe keazende Simplex LP oplossingsmetoade yn dit foarbyld om't wy te krijen hawwe mei it lineêre programmearringprobleem. As jo ​​net wis binne hokker soarte probleem jo is, kinne jo de standert GRG Nonlinear oplossingsmetoade ferlitte. Foar mear ynformaasje, sjoch asjebleaft Excel Solver-algoritmen.

    Oplossing

    Klik op de Oplosse knop ûnderoan it finster Solver Parameters , en jo sil jo antwurd krije. Yn dit foarbyld hat de Excel Solver-tafoeging de optimale hoemannichte guod berekkene om te leverjen oan elke klant fan elk pakhús mei de minimale totale ferstjoerkosten:

    Hoe besparje en lade Excel Solver-senario's

    As jo ​​in bepaald model oplosse, kinne jo jo Fariabele -selwearden bewarje as in senario dat jo letter kinne besjen of opnij brûke.

    Bygelyks, by it berekkenjen fan de minimale tsjinstkosten yn it alderearste foarbyld besprutsen yn dizze tutorial, wolle jo miskien ferskate oantallen projekteare kliïnten per moanne besykje en sjen hoe't dat de tsjinstkosten beynfloedet. Dan wolle jo miskien it meast wierskynlike senario dat jo al berekkene hawwe opslaan en it op elk momint weromsette.

    Bewarje in Excel Solver-senario komt del op it selektearjen fan in berik fan sellen om bewarje de gegevens yn. Laden in Solver-model is gewoan in kwestje fan it leverjen fan Excel mei it berik fan sellen wêr't jo model bewarre wurdt. De detaillearre stappen folgje hjirûnder.

    It bewarjen fan demodel

    Om it Excel Solver-senario te bewarjen, fiere de folgjende stappen:

    1. Iepenje it wurkblêd mei it berekkene model en fier de Excel Solver út.
    2. Yn de Solver Parameters finster, klikje op de Laad/Bewarje knop.

  • Excel Solver sil jo fertelle hoefolle sellen nedich binne om jo senario te bewarjen. Selektearje safolle lege sellen en klik op Bewarje :
  • Excel sil jo aktuele model opslaan, dat der sa útsjen kin:
  • Tagelyk sil it finster Solver Parameters ferskine wêr't jo jo beheiningen feroarje kinne en ferskate "wat as" opsjes besykje.

    Laden it bewarre model

    As jo ​​beslute om it bewarre senario te herstellen, dwaan dan it folgjende:

    1. Yn it finster Solver Parameters klikje op de Laad/ Bewarje knop.
    2. Selektearje op it wurkblêd it berik fan sellen mei it bewarre model en klik op Laad :

  • Yn it dialoochfinster Model laden klikje op de knop Ferfange :
  • Dit sil it haadfinster fan Excel Solver iepenje mei de parameters fan it earder bewarre model. Alles wat jo hoege te dwaan is te klikken op de knop Oplosse om it opnij te berekkenjen.
  • Excel Solver-algoritmen

    As jo ​​in probleem definiearje foar de Excel Solver, kinne jo kieze ien fan 'e folgjende metoaden yn it dropdownfak Selektearje in oplossingsmetoade :

    • GRG Nonlinear. Generalisearre Reduced Gradient Nonlinear algoritme wurdt brûkt foar problemen dy't glêd netlineêr binne, dus wêryn op syn minst ien fan 'e beheiningen in glêde netlineêre funksje is fan 'e beslútfariabelen. Mear details kinne jo hjir fine.
    • LP Simplex . De Simplex LP Solving-metoade is basearre op it Simplex-algoritme makke troch in Amerikaanske wiskundige wittenskipper George Dantzig. It wurdt brûkt foar it oplossen fan saneamde Lineêre programmearring -problemen - wiskundige modellen wêrfan de easken wurde karakterisearre troch lineêre relaasjes, d.w.s. Sjoch foar mear ynformaasje op dizze side.
    • Evolúsjonêr . It wurdt brûkt foar net-glêde problemen, dy't it dreechste type optimisaasjeproblemen binne om op te lossen, om't guon fan 'e funksjes net-glêd of sels diskontinu binne, en dêrom is it lestich om te bepalen yn hokker rjochting in funksje nimt ta of ôfnimt. Sjoch foar mear ynformaasje dizze side.

    Om te feroarjen hoe't Solver in oplossing fynt, klikje jo op de knop Opsjes yn it dialoochfinster Solverparameters , en konfigurearje ien of alle opsjes op de ljeppers GRG Nonlinear , Alle metoaden , en Evolúsjonêre .

    Dit is hoe't jo Solver yn Excel brûke kinne om de bêste oplossingen te finen foar jo beslútproblemen. En no kinne jo wolledownload de Excel Solver-foarbylden besprutsen yn dizze tutorial en reverse-engineer se foar better begryp. Ik tankje jo foar it lêzen en hoopje jo nije wike op ús blog te sjen.

    helpe jo it rendemint fan ynvestearring te maksimalisearjen, kieze it optimale budzjet foar jo reklamekampanje, meitsje it bêste wurkskema foar jo meiwurkers, minimalisearje de leveringskosten, ensfh.

    Hoe kinne jo Solver tafoegje oan Excel

    De Solver-tafoeging is opnommen mei alle ferzjes fan Microsoft Excel dy't begjinne mei 2003, mar it is net standert ynskeakele.

    Om Solver oan jo Excel ta te foegjen, fiere de folgjende stappen:

    1. Klik yn Excel 2010 - Excel 365 op Triem > Opsjes .

      Klik yn Excel 2007 op de knop Microsoft Office en klik dan op Excel-opsjes .

    2. Yn it dialoochfinster Excel-opsjes klikje op Add-Ins oan de linker sydbalke, soargje derfoar dat Excel-tafoegings is selektearre yn it fak Beheare ûnderoan it finster, en klikje op Gean .
    3. Yn de Add-Ins dialoochfinster, kontrolearje it fakje Solver Add-in en klik op OK :

    Om Solver op Excel 2003 te krijen, gean nei it menu Tools , en klikje op Tafoegje-yns . Selektearje yn de list Add-Ins beskikber it fakje Solver Add-in en klik op OK .

    Noat. As Excel in berjocht toant dat de Solver-tafoeging op it stuit net op jo kompjûter is ynstalleare, klik dan op Ja om it te ynstallearjen.

    Wêr is Solver yn Excel?

    Yn 'e moderne ferzjes fan Excel ferskynt de knop Solver op it ljepblêd Data , yn 'e Analyse groep:

    Wêr isSolver yn Excel 2003?

    Neidat de Solver-tafoeging is laden yn Excel 2003, wurdt it kommando tafoege oan it menu Tools :

    No't jo witte wêr't Solver te finen is yn Excel, iepenje in nij wurkblêd en litte wy begjinne!

    Opmerking. De foarbylden besprutsen yn dit tutorial brûke Solver yn Excel 2013. As jo ​​in oare Excel-ferzje hawwe, kinne de skermôfbyldings net krekt oerienkomme mei jo ferzje, hoewol de Solver-funksjonaliteit is yn prinsipe itselde.

    Hoe kinne jo Solver brûke yn Excel

    Foardat jo de Excel Solver-tafoeging útfiere, formulearje it model dat jo wolle oplosse yn in wurkblêd. Litte wy yn dit foarbyld in oplossing fine foar it folgjende ienfâldige optimalisaasjeprobleem.

    Probleem . Stel dat jo de eigner binne fan in skientmesalon en jo binne fan plan in nije tsjinst te leverjen oan jo kliïnten. Hjirfoar moatte jo in nije apparatuer keapje dy't $40.000 kostet, dy't binnen 12 moannen yn terminen betelle wurde moat.

    Doel : Berekkenje de minimale kosten per tsjinst wêrmei jo betelje kinne foar de nije apparatuer binnen de opjûne tiidframe.

    Foar dizze taak haw ik it folgjende model makke:

    En no litte wy sjen hoe't Excel Solver kin in oplossing fine foar dit probleem.

    1. Run Excel Solver

    Op de Data ljepper, yn de Analyse groep, klikje op de Solver knop.

    2. Definiearje it probleem

    It finster Oplosserparameters sil iepenje wêr't jo hawweom de 3 primêre komponinten yn te stellen:

    • Objektyfsel
    • Fariabele sellen
    • Beheinings

    Precies wat docht Excel Solver mei de boppesteande parameters? It fynt de optimale wearde (maksimum, minimum of spesifisearre) foar de formule yn 'e Objektyf -sel troch de wearden yn 'e Fariabele -sellen te feroarjen, en ûnder foarbehâld fan beheiningen yn 'e Beheinings sellen.

    Doel

    De Doel -sel ( Doel -sel yn eardere Excel-ferzjes) is de sel mei in formule dat it doel, of doel, fan it probleem fertsjintwurdiget. It doel kin wêze om te maksimalisearjen, minimalisearjen of wat doelwearde te berikken.

    Yn dit foarbyld is de objektive sel B7, dy't de betellingstermyn berekkent mei de formule =B3/(B4*B5) en it resultaat fan 'e formule moat gelyk wêze oan 12:

    Fariabele sellen

    Fariabele sellen ( Feroarje sellen of oanpasber sellen yn eardere ferzjes) binne sellen dy't fariabele gegevens befetsje dy't kinne wurde feroare om it doel te berikken. Excel Solver lit maksimaal 200 fariabele sellen opjaan.

    Yn dit foarbyld hawwe wy in pear sellen wêrfan de wearden feroare wurde kinne:

    • Projektearre kliïnten per moanne (B4) dy't moatte wêze minder as of gelyk oan 50; en
    • Kosten per tsjinst (B5) dy't wy wolle dat Excel Solver berekkene wurdt.

    Tip. As de fariabele sellen of berik yn jo model net neistlizzend binne,selektearje de earste sel of berik, en dan drukke en hâld de Ctrl-kaai wylst se selektearje oare sellen en / of berik. Of typ de berik manuell, skieden mei komma's.

    Beheinings

    De Excel-oplosser Beheinings binne beheiningen of grinzen fan 'e mooglike oplossingen foar it probleem. Om it oars te sizzen, beheiningen binne de betingsten dêr't oan foldien wurde moat.

    Om in beheining(en) ta te foegjen, doch it folgjende:

    • Klik op de Tafoegje knop rjochts nei it fak " ûnder foarbehâld fan de beheiningen ".

    • Yn it finster Beheining , fier in beheining yn.
    • Klik op de knop Tafoegje om de beheining oan de list ta te foegjen.

    • Trochgean it ynfieren fan oare beheiningen.
    • Neidat jo de lêste beheining ynfierd hawwe, klikje jo op OK om werom te gean nei it haadfinster Solver Parameters .

    Excel Solver makket it mooglik om de folgjende relaasjes oan te jaan tusken de ferwiisde sel en de beheining.

    • Minder as of gelyk oan , lyk oan , en grutter as of gelyk oan . Jo sette dizze relaasjes yn troch in sel te selektearjen yn it fak Sellreferinsje , troch ien fan de folgjende tekens te kiezen: <= , =, of > ;= , en typ dan in nûmer, selferwizing/selnamme, of formule yn it fak Beheining (sjoch asjebleaft de boppesteande skermprint).
    • Geheel getal . As de ferwiisde sel in hiel getal wêze moat, selektearje int ,en it wurd integer sil ferskine yn it fak Beheining .
    • Ferskillende wearden . As elke sel yn it ferwiisde berik in oare wearde befetsje moat, selektearje dan dif , en it wurd AllDifferent sil ferskine yn it fak Beheining .
    • Binêr . As jo ​​in ferwiisde sel beheine wolle ta 0 of 1, selektearje bin , en it wurd binêr sil ferskine yn it fak Beheining .

    Opmerking. De int , bin , en dif relaasjes kinne allinnich brûkt wurde foar beheiningen op fariabele sellen.

    Om bewurkje of wiskje in besteande beheining dwaan it folgjende:

    • Yn it dialoochfinster Oplosserparameters klikje op de knop beheining.
    • Om de selektearre beheining te wizigjen, klikje op Feroarje en meitsje de wizigingen dy't jo wolle.
    • Om de beheining te wiskjen, klikje jo op de knop Wiskje .

    Yn dit foarbyld binne de beheiningen:

    • B3=40000 - kosten fan de nije apparatuer binne $40.000.
    • B4<=50 - it oantal projizearre pasjinten per moanne yn ûnder 50.

    3. Los it probleem op

    Neidat jo alle parameters ynsteld hawwe, klikje jo op de knop Oplosse ûnderoan it finster Solver Parameters (sjoch de skermprint hjirboppe) en lit de Excel Solver-tafoeging fynt de optimale oplossing foar jo probleem.

    Ofhinklik fan 'e modelkompleksiteit, kompjûterûnthâld en prosessorsnelheid kin it in pear duorjesekonden, in pear minuten, of sels in pear oeren.

    As Solver klear is mei ferwurkjen, sil it it dialoochfinster Solver Results werjaan, wêr't jo Keep the Solver Solution en klikje OK :

    It finster Oplosserresultaat sil slute en de oplossing sil ferskine direkt op it wurkblêd.

    Yn dit foarbyld ferskynt $66,67 yn sel B5, dat is de minimale kosten per tsjinst wêrmei jo yn 12 moannen betelje kinne foar de nije apparatuer, mits der op syn minst 50 kliïnten per moanne:

    Tips:

    • As de Excel-oplosser in bepaald probleem te lang hat ferwurke, kinne jo it proses ûnderbrekke troch op de knop te drukken Esc kaai. Excel sil it wurkblêd opnij berekkenje mei de lêste wearden fûn foar de Fariabele sellen.
    • Om mear details te krijen oer it oploste probleem, klikje jo op in rapporttype yn it fak Rapporten . , en klik dan op OK . It rapport sil makke wurde op in nij wurkblêd:

    No't jo it basisidee hawwe oer hoe't jo Solver yn Excel brûke kinne, litte wy in pear tichterby sjen mear foarbylden dy't jo miskien helpe kinne om mear begryp te krijen.

    Excel Solver foarbylden

    Hjirûnder fine jo noch twa foarbylden fan it brûken fan de Excel Solver addin. Earst sille wy in oplossing fine foar in bekende puzel, en dan in lineêr programmearringprobleem oplosse yn it echte libben.

    Excel Solver foarbyld 1 (magysk fjouwerkant)

    Ileau dat elkenien bekend is mei "magysk fjouwerkant"-puzels wêrby't jo in set nûmers yn in fjouwerkant sette moatte sadat alle rigen, kolommen en diagonalen in bepaald getal optelle.

    Kensto bygelyks in oplossing foar it 3x3-fjild mei nûmers fan 1 oant 9 wêr't elke rige, kolom en diagonaal 15 optelle?

    It is wierskynlik gjin grut probleem om dizze puzel op te lossen troch probearjen en flater, mar ik wedde dat de Solver sil fine de oplossing flugger. Us part fan it wurk is om it probleem goed te definiearjen.

    Om te begjinnen, fier de nûmers fan 1 oant 9 yn in tabel besteande út 3 rigen en 3 kolommen. De Excel Solver hat dizze nûmers eins net nedich, mar se sille ús helpe om it probleem te visualisearjen. Wat de Excel Solver-tafoeging wirklik nedich is, binne de SUM-formules dy't elke rige, kolom en 2 diagonalen totaal totaal:

    Mei alle formules yn plak, útfiere Solver en ynstelle de folgjende parameters:

    • Set Objektyf . Yn dit foarbyld hoege wy gjin doel yn te stellen, dus lit dit fak leech.
    • Fariabele sellen . Wy wolle nûmers ynfolje yn sellen B2 oant D4, dus selektearje it berik B2:D4.
    • Beheinings . De folgjende betingsten moatte foldien wurde:
      • $B$2:$D$4 = AllDifferent - alle fariabele sellen moatte ferskillende wearden befetsje.
      • $B$2:$D$4 = hiel getal - alles fan de Fariabele sellen moatte hiele getallen wêze.
      • $B$5:$D$5 = 15 - de som fan wearden yn elkkolom moat lyk wêze 15.
      • $E$2:$E$4 = 15 - de som fan wearden yn elke rige moat lyk wêze 15.
      • $B$7:$B$8 = 15 - de som fan beide diagonalen moatte gelyk wêze oan 15.

    Klik as lêste op de knop Oplosse , en de oplossing is der!

    Excel Solver foarbyld 2 (lineêre programmearring probleem)

    Dit is in foarbyld fan in ienfâldich transportoptimalisaasjeprobleem mei in lineêre doelstelling. Mear komplekse optimalisaasjemodellen fan dit soarte wurde troch in protte bedriuwen brûkt om elk jier tûzenen dollars te besparjen.

    Probleem : Jo wolle de kosten fan it ferstjoeren fan guod fan 2 ferskillende pakhuzen nei 4 ferskillende minimalisearje klanten. Elk pakhús hat in beheind oanbod en elke klant hat in bepaalde fraach.

    Doel : Minimalisearje de totale ferstjoerkosten, net mear as de kwantiteit beskikber op elk pakhús, en foldwaan oan de fraach fan elke klant .

    Boarnegegevens

    Hjir is hoe't ús transportoptimalisaasjeprobleem der útsjocht:

    Formulearjen fan it model

    Om definiearje ús lineêre programmearringprobleem foar de Excel Solver, litte wy de 3 haadfragen beäntwurdzje:

    1. Wat besluten moatte wurde makke? Wy wolle de optimale kwantiteit fan guod berekkenje om te leverjen oan elke klant út elk pakhús. Dit binne Fariabele sellen (B7:E8).
    2. Wat binne de beheiningen? De foarrieden beskikber op elk pakhús (I7: I8) kin net wurde boppe, en de

    Michael Brown is in tawijd technology-entûsjast mei in passy foar it ferienfâldigjen fan komplekse prosessen mei software-ark. Mei mear as in desennium ûnderfining yn 'e tech-yndustry hat hy syn feardigens yn Microsoft Excel en Outlook, lykas Google Blêden en Docs, oanskerpe. Michael's blog is wijd oan it dielen fan syn kennis en ekspertize mei oaren, en biedt maklik te folgjen tips en tutorials foar it ferbetterjen fan produktiviteit en effisjinsje. Oft jo in betûfte profesjonele of in begjinner binne, Michael's blog biedt weardefolle ynsjoch en praktysk advys om it measte út dizze essensjele software-ark te heljen.