Įvadas į „Solver“ - „Excel“ patarimai

„Solver“ yra nemokamas priedas nuo „Lotus 1-2-3“ laikų

„Excel“ nebuvo pirmoji skaičiuoklės programa. „Lotus 1-2-3“ nebuvo pirmoji skaičiuoklės programa. Pirmoji skaičiuoklės programa buvo „VisiCalc“ 1979 m. Sukurta Dano Bricklino ir Bobo Frankstono, „VisiCalc“ išleido Danas Fylstra. Šiandien Danas vadovauja „Frontline Systems“. Jo įmonė parašė „Excel“ naudojamą „Solver“. Ji taip pat sukūrė visą analizės programinės įrangos rinkinį, kuris veikia su „Excel“.

Jei turite „Excel“, turite „Solver“. Gali būti, kad jis neįgalintas, bet jūs jį turite. Norėdami įjungti „Solver“ programoje „Excel“, paspauskite alt = "" + T, po to I. Pridėkite varnelę šalia "Solver".

Įgalintas „Excel“ sprendimas

Norėdami sėkmingai naudoti „Solver“, turite sukurti darbalapio modelį, kuriame yra trys elementai:

  • Tikslo langelis turi būti vienas. Tai langelis, kurį norite sumažinti, padidinti arba nustatyti tam tikrą vertę.
  • Gali būti daug įvesties langelių. Tai yra vienas esminių patobulinimų, palyginti su tikslo ieškojimu, kuris gali būti susijęs tik su viena įvesties ląstele.
  • Gali būti apribojimų.

Jūsų tikslas yra parengti atrakcionų parko tvarkaraščio reikalavimus. Kiekvienas darbuotojas dirbs penkias dienas iš eilės, o po to turės dvi laisvas dienas. Yra septyni skirtingi būdai, kaip paskirti žmogų penkioms dienoms iš eilės ir dviem poilsio dienoms. Jie rodomi kaip tekstas A4: A10. Mėlynos ląstelės B4: B10 yra įvesties langeliai. Čia nurodote, kiek žmonių turite dirbti pagal kiekvieną tvarkaraštį.

Tikslo langelis yra visas darbo užmokesčio skaičius per savaitę, parodytas B17. Tai yra tiesi matematika: Iš viso B11 žmonių skaičius 68 kartus viršija algą vienam asmeniui per dieną. Paprašysite „Solver“ rasti būdą, kaip sumažinti savaitinį darbo užmokestį.

Raudoname laukelyje rodomos vertės, kurios nesikeis. Būtent tiek žmonių jums reikia dirbti parke kiekvieną savaitės dieną. Judriomis savaitgalio dienomis jums reikia mažiausiai 30 žmonių, bet pirmadienį ir antradienį - tik 12 žmonių. Oranžinės spalvos langeliai naudoja SUMPRODUCT, norėdami apskaičiuoti, kiek žmonių bus suplanuota kiekvieną dieną, remiantis įvestimis mėlynose ląstelėse.

15 eilutės piktogramos rodo, ar jums reikia daugiau žmonių, ar mažiau žmonių, ar turite tiksliai reikiamą žmonių skaičių.

Pirmiausia bandžiau tai išspręsti be „Solverio“. Kiekvieną dieną eidavau su 4 darbuotojais. Tai buvo puiku, bet sekmadienį neturėjau pakankamai žmonių. Taigi pradėjau didinti tvarkaraščius, kurie suteiktų daugiau sekmadienio darbuotojų. Pabaigiau tai, kas veikia: 38 darbuotojai ir 2 584 USD savaitinio darbo užmokesčio.

Duomenų rinkinio pavyzdys

Skirtuke Duomenys spustelėkite „Solver“ piktogramą. Pasakykite „Solver“, kad bandote nustatyti B17 darbo užmokesčio minimumą. Įvesties langeliai yra B4: B10.

Apribojimai skirstomi į akivaizdžias ir nelabai akivaizdžias kategorijas.

Pirmasis akivaizdus suvaržymas yra tas, kad D12: J12 turi būti> = D14: J14.

Bet jei bandytumėte paleisti „Solver“ dabar, gautumėte keistų rezultatų, kai turite dalinį skaičių žmonių ir galbūt neigiamą skaičių žmonių, dirbančių pagal tam tikrus tvarkaraščius.

Nors jums atrodo akivaizdu, kad negalite samdyti 0,39 žmogaus, turite pridėti apribojimų, kad Sprendėjui pasakytumėte, jog B4: B10 yra> = 0, o B4: B10 yra sveiki skaičiai.

Sprendimo parametrai

Pasirinkite „Simplex LP“ kaip sprendimo būdą ir pasirinkite Spręsti. Per kelias akimirkas „Solver“ pateikia vieną optimalų sprendimą.

Sprendėjas rado būdą, kaip padengti atrakcionų parko personalą, naudojant 30 darbuotojų, o ne 38. Sutaupoma per savaitę yra 544 USD - arba daugiau nei 7 000 USD per vasarą.

Naudojant „Solver“

Atkreipkite dėmesį į penkias žvaigždutes žemiau Reikalingi darbuotojai. Sprendėjo pasiūlytas tvarkaraštis atitinka tikslius jūsų poreikius penkioms iš septynių dienų. Šalutinis produktas yra tas, kad trečiadienį ir ketvirtadienį turėsite daugiau darbuotojų, nei jums tikrai reikia.

Aš suprantu, kaip „Solver“ sugalvojo šį sprendimą. Šeštadienį, sekmadienį ir penktadienį jums reikia daugybės žmonių. Vienas iš būdų nuvykti žmones tą dieną yra suteikti jiems pirmadienį ir antradienį. Štai kodėl „Solver“ atleido 18 žmonių nuo pirmadienio ir antradienio.

Bet tai, kad „Solver“ sugalvojo optimalų sprendimą, dar nereiškia, kad nėra kitų vienodai optimalių sprendimų.

Kai tik spėjau apie personalą, neturėjau geros strategijos.

Dabar, kai „Solver“ man pateikė vieną iš optimaliausių sprendimų, galiu užsidėti loginę kepurę. Turėdami 28 koleginio amžiaus darbuotojus trečiadienį ir ketvirtadienį, kai jums reikia tik 15 ar 18 darbuotojų, kils problemų. Nepakaks padaryti. Be to, turėdami tiksliai reikiamą etatų skaičių per penkias dienas, turėsite kviesti kas nors viršvalandžius, jei kas nors kitas paskambins susirgus.

Aš pasitikiu „Solver“, kad man reikia 30 žmonių, kad galėčiau dirbti šį darbą. Bet lažinuosi, kad galiu pertvarkyti tuos žmones, kad išlyginčiau tvarkaraštį ir kitomis dienomis pateikčiau nedidelį buferį.

Pavyzdžiui, suteikiant kam nors laisvą trečiadienį ir ketvirtadienį taip pat užtikrinama, kad asmuo darbe būtų penktadienį, šeštadienį ir sekmadienį. Taigi rankiniu būdu perėjau kai kuriuos darbuotojus iš pirmadienio, antradienio eilės į trečiadienio, ketvirtadienio eilę. Aš rankiniu būdu jungiau įvairius derinius ir atėjau su tokiu sprendimu, kuris turi tas pačias darbo užmokesčio sąnaudas kaip „Solver“, bet geriau nematerialius daiktus. Perteklinių darbuotojų padėtis dabar egzistuoja keturias, o ne dvi dienas. Tai reiškia, kad galite atlikti iškvietimus nuo pirmadienio iki ketvirtadienio, neprireikus kam nors skambinti nuo jo savaitgalio.

Rezultatas

Ar blogai, kad man pavyko pasiūlyti geresnį sprendimą nei „Solver“? Ne. Faktas yra tas, kad aš negalėčiau pasiekti šio sprendimo nenaudodamas „Solver“. Kai „Solver“ man davė modelį, kuris sumažino išlaidas, galėjau naudoti logiką apie nematerialiuosius daiktus, kad išlaikyčiau tą patį darbo užmokestį.

Jei jums reikia išspręsti sudėtingesnes problemas nei „Solver“ gali, patikrinkite aukščiausios kokybės „Excel“ sprendimus, kuriuos galite rasti „Frontline Systems“: http://mrx.cl/solver77.

Ačiū Danui Fylstra ir „Frontline Systems“ už šį pavyzdį. Walteris Moore'as iliustravo kalnelius XL.

Žiūrėti video

  • „Solver“ yra nemokamas priedas nuo „Lotus 1-2-3“ laikų
  • „Solver“ yra „Visicorp“ įkūrėjo Dano Fylstra produktas
  • „Excel“ sprendimas yra mažesnė sunkiųjų sprendėjų versija
  • Sužinokite daugiau apie profesionalius sprendimus: http://mrx.cl/solver77
  • Norėdami įdiegti „Solver“, įveskite alt = "" + T, tada I. Patikrinkite Solver.
  • Sprendėjas bus rodomas dešinėje skirtuko Duomenys pusėje
  • Norite turėti objektyvų langelį, kurį bandote sumažinti arba padidinti.
  • Galite nurodyti kelias įvesties langelius.
  • Galite nurodyti apribojimus, įtraukdami kai kuriuos, kurių nesitikėtumėte:
  • Nėra pusės žmogaus: naudokite INT sveikam skaičiui
  • Sprendėjas ras optimalų sprendimą, tačiau gali būti ir kitų, kurie yra siejami
  • Gavę „Solver“ sprendimą, galėsite jį patobulinti.

Vaizdo įrašo nuorašas

Sužinokite „Excel“ iš „Podcast“, 2036 epizodas - „Introver to Solver“!

Gerai, aš transliuoju visą šią knygą, viršutiniame dešiniajame kampe spustelėkite „i“, kad patektumėte į grojaraštį, kuriame galėsite paleisti visus vaizdo įrašus!

Sveiki sugrįžę į netcast'ą, aš Billas Jelenas. Neseniai kalbėjomės apie „Kas-jei“ analizę, pvz., „Tikslo ieškojimas“, su viena įvesties ląstele, kurią keičiate, bet ką daryti, jei turite ką nors sudėtingesnio? Yra puikus įrankis, pavadintas „Solver“, „Solver“ jau seniai veikia. Aš garantuoju, jei turite „Excel“ ir naudojate „Windows“, turite „Solver“, tikėtina, kad jis neįjungtas. Taigi, norėdami jį įjungti, turite eiti į alt = "" T ir aš, taigi T, Tomui, aš ledams, ir pažymėkite šį laukelį "Solver", spustelėkite Gerai ir po kelių sekundžių turėsite skirtuką „Sprendėjas“ čia, dešinėje pusėje. Gerai, ir mes čia sukursime modelį, kurį gali išspręsti sprendėjas, mes turime pramogų parką, mes stengiamės išleisti, kiek darbuotojų planuoti. Visi dirba penkias dienas iš eilės, taigiTikrai septyni galimi tvarkaraščiai, kur jūs išvykstate, sekmadienis pirmadienis, pirmadienis antradienis, antradienis trečiadienis. Turime išsiaiškinti, kiek darbuotojų sudaryti pagal kiekvieną iš šių tvarkaraščių.

Taigi paprasčiausia maža matematika čia, atliekant kai kuriuos SUMPRODUCT'us, darbuotojų skaičių sekmadienį, norint sužinoti, kiek žmonių buvo sekmadienį, pirmadienį, antradienį, trečiadienį. O ką sužinojome eksploatuodami šį pramogų parką, mums reikia daugybės žmonių šeštadienį ir sekmadienį. 30 žmonių šeštadienį ir sekmadienį, pirmadienį, antradienį, kažkaip lėtai, 12 darbuotojų tai galės padaryti. Gerai, tiesiog ateidami čia ir tiesiog sukdamiesi, žinote, bandydami išsiaiškinti reikiamus skaičius, galite tiesiog prijungti daiktus, tačiau, pasirinkus septynis skirtingus pasirinkimus, tai užtruks amžinai, gerai.

Tai, ką turime „Solver“, turime įvesties langelių seriją, o nemokamoje „Solver“ versijoje, manau, galite turėti, ar šimtas? Aš nežinau, yra tam tikras skaičius, o jei jūs turite tai peržengti, yra „Premium Solver“, kurį galite gauti iš „Frontline Systems“. Gerai, todėl turime keletą įvesties langelių, turime keletą apribojimų langelių, tada jūs turite viską sumažinti iki galutinio skaičiaus. Taigi mano atveju stengiuosi sumažinti darbo užmokestį per savaitę, kad tą žalią skaičių norėčiau išbandyti ir optimizuoti, gerai, todėl štai ką darysime!

Sprendėjas, čia yra objektyvi ląstelė, tai yra žalia ląstelė, ir aš noriu tai nustatyti iki minimalios vertės, išsiaiškinkite personalą, kuris man suteikia minimalią vertę, pakeisdamas šias mėlynas ląsteles. Ir tada yra apribojimai, gerai, todėl pirmas apribojimas yra tas, kad tvarkaraščio bendra suma turi būti> = raudona dalis, ir mes galime tai padaryti kaip vieną apribojimą. Stebėkite, kaip tai šaunu, visos šios langeliai turi būti> = šios atitinkamos langeliai čia, nuostabu, spustelėkite Pridėti, gerai, bet tada yra kitų dalykų, apie kuriuos negalėtumėte pagalvoti. Pavyzdžiui, „Solver“ šiuo metu gali nuspręsti, kad geriausia, jei šiame tvarkaraštyje yra 17 žmonių, 43 žmonės pagal tvarkaraštį ir -7 žmonės pagal šį tvarkaraštį. Gerai, todėl sprendėjui turime pasakyti, kad šie įvesties langeliai turi būti sveikasis skaičius, spustelėkite Pridėti. Be to, negalime, kad kas nors nepasirodytų,ir jie mums grąžins atlyginimą, tiesa? Taigi sakysime, kad šios ląstelės turi būti> = 0, spustelėkite Pridėti, mes grįšime dabar, mes turime tris apribojimus.

Yra trys skirtingi sprendimo būdai, o šis - pagal linijinę matematiką, todėl galime tiesiog pereiti prie „Simplex LP“. Jei šis neveikia, visais būdais išbandykite kitus du, man buvo atvejų, kai „Simplex“ sako, kad jis neranda sprendimo, o vienas iš kitų dviejų veikia. „Frontline Systems“ turi puikių „Solver“ pamokų, aš tik bandau jus šiandien aptarti jūsų pirmąjį, aš nepaskelbiu esąs „Solver“ ekspertas. Kai turėjau „Solverį“, kuris neveikė, ir nusiunčiau pastabą į „Frontline Systems“ ir oho, aš gavau šį nuostabų 5 puslapių laišką atgal, pačiam iš paties „Solver“ prezidento Dano Fylstra! Ir tai prasidėjo: „Mielas Bile, labai malonu iš tavęs išgirsti!“ Tada tęsiau 4,9 puslapius, viskas buvo beveik visiškai virš mano galvos, gerai. Bet žinai, aš pakankamai žinau apie Sprendėją, kad galėčiau tai išgyventi, gerai,taigi paspausime čia „Solve“, kuriame buvo rastas sprendimas: „Visi apribojimai ir optimalumo sąlygos yra įvykdyti“. Aš tai išlaikysiu, galiu sukurti keletą ataskaitų, nereikia to daryti dabar. O, aš iš tikrųjų galiu išsaugoti scenarijų, vakar pasijuokiau iš scenarijų, galbūt „Solver“ sugebėtų sukurti man naują scenarijų, todėl spustelėsime Gerai.

Gerai, ir tikrai, tai sutaupė mums pinigų, prieš tai parašėme 2584, o dabar jis nukrito iki 2040. Taigi pirmadienį ir antradienį mums reikia daug žmonių, gerai, kai kuriems žmonėms, trečiadienį, ketvirtadienį, ir 2 žmonėms. tada penktadienio šeštadienis. Na, tai nuostabu, aš niekada nebūčiau tiesiog atsitiktinai sugalvojusi šį atsakymų rinkinį, gerai, bet ar tai reiškia, kad tai geriausias atsakymas? Na, tai reiškia, kad tai yra minimalus darbo užmokestis, bet aš tikriausiai galiu pateikti kitokį atsakymų rinkinį, kuriame vis tiek būtų šis minimalus darbo užmokestis. Yra ir kitų būdų tai padaryti, tai gali būti šiek tiek geresnis tvarkaraštis. Kaip, pavyzdžiui, dabar trečiadienį ir ketvirtadienį turime 28 žmones, kai mums reikia tik 15 ir 18, tai yra daugybė žmonių. Pagalvokite, kas dirba atrakcionų parkuose, tai yra kolegijos vaikai, kurie atostogauja namuose,tai bus bėda, jei turėsime tiek daug papildomų žmonių. Pirmadienio antradienį mes esame mirę net ten, kur norime būti. Tai reiškia, kad jei kas nors, dėl kurio aš eisiu, atsišauksiu ligą, dabar mes turėsime, žinote, paskambinti kam nors ir sumokėti pusantro laiko, nes jie jau dirbo penkias kitas dienas.

Gerai, todėl tiesiog su šiek tiek paprastos mažos matematikos čia, jei aš nuo pirmadienio antradienio atimčiau 8 ir padaryčiau 10, o tuos 8 paimčiau ir pridėčiau prie trečiadienio ketvirtadienio, gerai. Dabar turiu „Solver“ sprendimą su tiksliai tuo pačiu atsakymu, 2040 m., Jie gavo reikiamą skaičių žmonių. Aš tik subalansuoju grafiką, o dabar mes turime 8 papildomus, 8 papildomus, 3 papildomus ir 2 papildomus, ir būtent tai, ko mums reikia savaitgalį, o tai, žinoma, yra visas personalo scenarijus. Man tai yra šiek tiek geriau nei tai, ką sugalvojo Sprendėjas, ar tai reiškia, kad sprendėjas žlugo? Ne, visiškai ne, nes niekada nebūčiau taip artima be „Solverio“. Kai Solveris man davė atsakymą, taip, aš galėjau jį šiek tiek pakoreguoti ir gerai pasiekti. Patarimas Nr. 37 „40 visų laikų geriausių„ Excel “patarimų“, artėjant prie pirmųjų 40 pabaigos, labai maža įžanga į Sprendimą.Visų šios serijos tinklalaidžių vadovas yra čia: „MrExcel XL - 40 geriausių visų laikų„ Excel “patarimų“. Jūs galite įsigyti el. Knygą tik už 10 USD, atspausdinti knygą už 25 USD, viršuje spustelėkite „i“. -dešinis rankos kampas!

Gerai, apibendrinkime: Sprendėjas, jei naudojate „Windows“ versijas „Excel“, „Lotus 1-2-3“, tai yra ten, ją sukūrė „Visicorp“ įkūrėjas Danas Fylstra. Tai nemokama sunkiųjų sprendėjų versija. Čia rasite nuorodą, kaip patikrinti sunkiųjų sprendėjus, kuri bus pateikta „YouTube“ komentaruose. Tikėtina, kad jie tiesiog neįdiegti, alt = "" TI, pažymėkite žymeklį Sprendėjas, ieškokite dešiniojo skirtuko Duomenų pusėje, kad rastumėte Sprendiklį. Gerai, jūs turite turėti objektyvų langelį, kurį bandote sumažinti arba padidinti, arba nustatyti vertę, vieną įvesties langelių diapazoną. Nurodykite apribojimus, įskaitant tai, ko nesitikėtumėte, pavyzdžiui, turėjau pasakyti „Nėra pusės žmogaus“ ir „Ne neigiamų žmonių“. Sprendėjas ras optimalų sprendimą, tačiau gali būti ir kitų, kurie yra susieti, ir galbūt galėsite jį pakoreguoti, kad gautumėte geresnį sprendimą.

Gerai, jūs turite tai, noriu padėkoti už tai, kad užsukote, pamatysime kitą kartą kitai netransliacijai iš!

Atsisiųsti failą

Atsisiųskite failo pavyzdį čia: Podcast2036.xlsx

Įdomios straipsniai...