Pengenalan Solver - Tips Excel

Daftar Isi

Solver telah menjadi add-in gratis sejak masa Lotus 1-2-3

Excel bukanlah program spreadsheet pertama. Lotus 1-2-3 bukanlah program spreadsheet pertama. Program spreadsheet pertama adalah VisiCalc pada 1979. Dikembangkan oleh Dan Bricklin dan Bob Frankston, VisiCalc diterbitkan oleh Dan Fylstra. Hari ini, Dan menjalankan Sistem Garis Depan. Perusahaannya menulis Solver yang digunakan di Excel. Itu juga telah mengembangkan seluruh rangkaian perangkat lunak analitik yang bekerja dengan Excel.

Jika Anda memiliki Excel, Anda memiliki Solver. Ini mungkin tidak diaktifkan, tetapi Anda memilikinya. Untuk mengaktifkan Solver di Excel, tekan alt = "" + T diikuti oleh I. Tambahkan tanda centang di sebelah Solver.

Solver yang Diaktifkan di Excel

Agar berhasil menggunakan Solver, Anda harus membuat model lembar kerja yang memiliki tiga elemen:

  • Harus ada satu sel Sasaran. Ini adalah sel yang ingin Anda minimalkan, maksimalkan, atau setel ke nilai tertentu.
  • Ada banyak sel masukan. Ini adalah salah satu peningkatan mendasar atas Pencarian Tujuan, yang hanya dapat menangani satu sel input.
  • Mungkin ada kendala.

Tujuan Anda adalah untuk membuat persyaratan penjadwalan untuk taman hiburan. Setiap karyawan akan bekerja lima hari berturut-turut dan kemudian mendapat dua hari libur. Ada tujuh cara berbeda untuk menjadwalkan seseorang selama lima hari berturut-turut dan dua hari libur. Ini ditunjukkan sebagai teks dalam A4: A10. Sel biru di B4: B10 adalah sel input. Di sinilah Anda menentukan berapa banyak orang yang Anda kerjakan setiap jadwal.

Sel Tujuan adalah Gaji total per Minggu, ditampilkan di B17. Ini adalah matematika langsung: Jumlah Orang dari B11 kali gaji $ 68 per orang per hari. Anda akan meminta Solver untuk menemukan cara meminimalkan gaji mingguan.

Kotak merah menunjukkan nilai yang tidak akan berubah. Ini adalah berapa banyak orang yang Anda butuhkan untuk bekerja di taman setiap hari dalam seminggu. Anda membutuhkan setidaknya 30 orang pada hari-hari akhir pekan yang sibuk - tetapi sedikitnya 12 orang pada hari Senin dan Selasa. Sel oranye menggunakan SUMPRODUCT untuk menghitung berapa banyak orang yang akan dijadwalkan setiap hari berdasarkan masukan di sel biru.

Ikon di baris 15 menunjukkan apakah Anda membutuhkan lebih banyak orang, atau lebih sedikit orang atau apakah Anda memiliki jumlah orang yang tepat.

Pertama, saya mencoba menyelesaikan ini tanpa Solver. Saya pergi dengan 4 karyawan setiap hari. Itu bagus, tapi saya tidak memiliki cukup orang pada hari Minggu. Jadi, saya mulai meningkatkan jadwal yang akan memberi saya lebih banyak karyawan hari Minggu. Saya akhirnya mendapatkan sesuatu yang berhasil: 38 karyawan dan gaji mingguan $ 2.584.

Contoh Kumpulan Data

Klik ikon Solver pada tab Data. Beri tahu Solver bahwa Anda mencoba mengatur penggajian di B17 ke minimum. Sel masukannya adalah B4: B10.

Batasan termasuk dalam kategori yang jelas dan tidak terlalu jelas.

Kendala pertama yang jelas adalah bahwa D12: J12 harus> = D14: J14.

Tetapi, jika Anda mencoba menjalankan Solver sekarang, Anda akan mendapatkan hasil yang aneh di mana Anda memiliki sejumlah kecil orang dan mungkin sejumlah negatif orang yang mengerjakan jadwal tertentu.

Meskipun terlihat jelas bagi Anda bahwa Anda tidak dapat mempekerjakan 0,39 orang, Anda perlu menambahkan batasan untuk memberi tahu Solver bahwa B4: B10 adalah> = 0 dan bahwa B4: B10 adalah bilangan bulat.

Parameter Solver

Pilih Simplex LP sebagai metode penyelesaian dan pilih Selesaikan. Dalam beberapa saat, Solver menghadirkan satu solusi optimal.

Solver menemukan cara untuk menutupi staf taman hiburan dengan menggunakan 30 karyawan, bukan 38. Penghematan per minggu adalah $ 544 - atau lebih dari $ 7.000 selama musim panas.

Menggunakan Solver

Perhatikan lima bintang di bawah yang Dibutuhkan Karyawan. Jadwal yang diusulkan Solver memenuhi kebutuhan Anda selama lima dari tujuh hari. Produk sampingannya adalah Anda akan memiliki lebih banyak karyawan pada hari Rabu dan Kamis daripada yang sebenarnya Anda butuhkan.

Saya dapat memahami bagaimana Solver menemukan solusi ini. Anda membutuhkan banyak orang pada hari Sabtu, Minggu, dan Jumat. Salah satu cara agar orang-orang di sana pada hari itu adalah memberi mereka libur pada hari Senin dan Selasa. Itulah mengapa Solver memberhentikan 18 orang pada hari Senin dan Selasa.

Tetapi hanya karena Solver menghasilkan solusi optimal tidak berarti tidak ada solusi lain yang sama optimal.

Ketika saya hanya menebak-nebak susunan staf, saya tidak memiliki strategi yang baik.

Sekarang Solver telah memberi saya salah satu solusi optimal, saya dapat menggunakan topi logika saya. Memiliki 28 karyawan usia kuliah pada hari Rabu dan Kamis ketika Anda hanya membutuhkan 15 atau 18 karyawan akan menimbulkan masalah. Tidak akan cukup banyak yang harus dilakukan. Plus, dengan jumlah pegawai yang tepat dalam lima hari, Anda harus memanggil seseorang untuk lembur jika orang lain menelepon karena sakit.

Saya percaya Solver bahwa saya perlu memiliki 30 orang untuk membuat ini berhasil. Tetapi saya yakin bahwa saya dapat mengatur ulang orang-orang itu untuk meratakan jadwal dan memberikan penyangga kecil pada hari-hari lain.

Misalnya, memberi seseorang libur pada hari Rabu dan Kamis juga memastikan bahwa orang tersebut berada di tempat kerja pada hari Jumat, Sabtu, dan Minggu. Jadi, saya memindahkan beberapa pekerja secara manual dari baris Senin, Selasa ke baris Rabu Kamis. Saya terus memasukkan kombinasi yang berbeda secara manual dan menemukan solusi ini yang memiliki biaya penggajian yang sama dengan Solver tetapi tidak berwujud yang lebih baik. Situasi kelebihan staf sekarang terjadi dalam empat hari, bukan dua hari. Itu berarti Anda dapat menangani panggilan-off pada hari Senin hingga Kamis tanpa harus menelepon seseorang dari akhir pekan mereka.

Hasil

Apakah buruk bahwa saya dapat menghasilkan solusi yang lebih baik daripada Solver? Tidak. Faktanya adalah saya tidak akan bisa mendapatkan solusi ini tanpa menggunakan Solver. Setelah Solver memberi saya model yang meminimalkan biaya, saya dapat menggunakan logika tentang benda tak berwujud untuk mempertahankan penggajian yang sama.

Jika Anda perlu menyelesaikan masalah yang lebih kompleks daripada yang bisa ditangani oleh Solver, lihat pemecah Excel premium yang tersedia dari Sistem Garis Depan: http://mrx.cl/solver77.

Terima kasih kepada Dan Fylstra dan Sistem Garis Depan untuk contoh ini. Walter Moore mengilustrasikan roller coaster XL.

Menonton video

  • Solver telah menjadi add-in gratis sejak masa Lotus 1-2-3
  • Solver adalah produk dari pendiri Visicorp Dan Fylstra
  • Solver di Excel Anda adalah versi pemecah tugas berat yang lebih kecil
  • Pelajari lebih lanjut tentang pemecah pro: http://mrx.cl/solver77
  • Untuk menginstal Solver, ketik alt = "" + T lalu I. Periksa Solver.
  • Solver akan ditemukan di sisi kanan tab Data
  • Anda ingin memiliki sel yang objektif yang Anda coba minimalkan atau maksimalkan.
  • Anda dapat menentukan beberapa sel input.
  • Anda dapat menentukan batasan, termasuk beberapa yang tidak Anda harapkan:
  • Tidak tanggung-tanggung: Gunakan INT untuk Integer
  • Solver akan menemukan solusi optimal, tetapi mungkin ada solusi lain yang mengikat
  • Setelah Anda mendapatkan solusi Solver, Anda mungkin dapat menyesuaikannya.

Transkrip Video

Pelajari Excel dari podcast, episode 2036 - Intro to Solver!

Baiklah, saya membuat podcasting seluruh buku ini, klik "i" di pojok kanan atas untuk membuka daftar putar, tempat Anda dapat memutar semua video!

Selamat datang kembali di netcast, saya Bill Jelen. Kami berbicara tentang beberapa analisis Bagaimana-Jika baru-baru ini, seperti Pencarian Tujuan, Anda tahu, dengan satu sel masukan yang Anda ubah, tetapi bagaimana jika Anda memiliki sesuatu yang lebih kompleks? Ada alat hebat yang disebut Solver, Solver sudah ada sejak lama, saya jamin jika Anda memiliki Excel dan Anda menjalankan Windows, Anda memiliki Solver, mungkin saja tidak diaktifkan. Jadi untuk menyalakannya, Anda harus pergi ke alt = "" T dan kemudian I, jadi T untuk Tom, I untuk es krim, dan centang kotak ini untuk Solver, klik OK, dan setelah beberapa detik, Anda akan mendapatkan tab Solver di sini, di sisi kanan. Baiklah, dan kami akan menyiapkan model di sini yang mungkin dapat diselesaikan oleh pemecah masalah, kami memiliki taman hiburan, kami mencoba mencari tahu berapa banyak karyawan yang harus dijadwalkan. Setiap orang bekerja lima hari berturut-turut, jadi di sana 'Ada tujuh kemungkinan jadwal di mana Anda libur, Minggu Senin, Senin Selasa, Selasa Rabu. Kami harus mencari tahu berapa banyak karyawan yang harus ditempatkan pada setiap jadwal tersebut.

Jadi hanya matematika kecil sederhana di sini, melakukan beberapa SUMPRODUCT, jumlah karyawan dikalikan Minggu untuk mengetahui berapa banyak orang yang ada di sana pada hari Minggu, Senin, Selasa, Rabu. Dan apa yang kami pelajari melalui pengoperasian taman hiburan ini adalah kami membutuhkan banyak orang pada hari Sabtu dan Minggu. 30 orang pada hari Sabtu dan Minggu, selama hari kerja Senin, Selasa, agak lambat, 12 staf akan dapat melakukannya. Baiklah, hanya dengan datang ke sini dan hanya bermain-main, Anda tahu, mencoba mencari tahu angka yang tepat, Anda bisa terus memasukkannya, tetapi dengan tujuh pilihan berbeda, itu akan memakan waktu selamanya, oke begitu.

Sekarang di Solver, yang kami miliki adalah, kami memiliki serangkaian sel input, dan dalam versi gratis Solver saya rasa Anda dapat memiliki, apakah jumlahnya seratus? Saya tidak tahu, ada beberapa nomor, dan jika Anda harus melampaui itu, ada Pemecah Premium yang bisa Anda dapatkan dari Sistem Garis Depan. Baiklah, jadi kami memiliki beberapa sel masukan, kami memiliki beberapa sel pembatas, dan kemudian Anda harus menurunkan semuanya ke angka akhir. Jadi dalam kasus saya, saya mencoba meminimalkan penggajian per minggu, sehingga angka hijau itu yang ingin saya coba dan optimalkan, oke, jadi inilah yang akan kita lakukan!

Solver, inilah sel tujuan, ini sel hijau, dan saya ingin menyetelnya ke nilai minimum, mencari tahu susunan staf yang memberi saya nilai minimum, dengan mengubah sel biru ini. Dan inilah batasannya, oke, jadi batasan pertama adalah total jadwal harus> = bagian merah, dan kita bisa melakukan semua itu sebagai batasan tunggal. Perhatikan betapa kerennya ini, semua sel ini harus> = sel yang sesuai di sini, keren, klik Tambah, baiklah, tapi kemudian ada hal lain yang tidak akan Anda pikirkan. Misalnya, Solver pada titik ini mungkin memutuskan bahwa yang terbaik adalah memiliki 17 orang pada jadwal ini, 43 orang pada jadwal, dan -7 orang pada jadwal ini. Baiklah, jadi kita harus memberi tahu Solver bahwa sel input ini harus berupa bilangan bulat, klik Tambahkan. Dan juga, kita tidak bisa membiarkan seseorang tidak muncul,dan mereka akan mengembalikan gaji mereka, bukan? Jadi kami akan mengatakan sel ini harus> = 0, klik Tambah, kami kembali sekarang, kami memiliki tiga batasan di sana.

Ada tiga cara berbeda untuk menyelesaikannya, dan yang ini mengikuti matematika linier, jadi kita bisa pergi ke Simplex LP. Jika yang ini tidak berhasil, maka coba saja dua lainnya, saya pernah mengalami kasus di mana Simpleks mengatakan tidak dapat menemukan solusi, dan salah satu dari dua lainnya berfungsi. Sistem Garis Depan memiliki tutorial yang bagus tentang Solver, saya hanya mencoba untuk membuat Anda melalui yang pertama di sini hari ini, saya tidak menyatakan sebagai ahli Solver. Setelah saya memiliki Solver yang tidak berfungsi, dan saya mengirim catatan ke Frontline Systems, dan wow, saya mendapatkan kembali surat 5 halaman yang luar biasa ini, benar, dari Dan Fylstra sendiri, presiden Solver! Dan itu dimulai: "Bill sayang, senang mendengarnya dari Anda!" Dan kemudian melanjutkan untuk 4,9 halaman, itu semua benar-benar di atas kepala saya, oke. Tapi tahukah Anda, saya cukup tahu tentang Solver untuk melewati ini, oke,jadi kita akan mengklik di sini di Selesaikan, itu menemukan solusi, "Semua Batasan dan kondisi optimal terpenuhi." Saya akan menyimpannya, saya dapat membuat beberapa laporan, tidak perlu melakukannya sekarang. Oh, saya benar-benar dapat menyimpan skenario, saya mengolok-olok skenario kemarin, mungkin Solver akan dapat membuat skenario baru untuk saya, jadi kita akan klik Oke.

Baiklah, dan tentu saja itu menghemat uang kita, kita menulis 2584 sebelumnya, dan sekarang kita turun ke 2040. Jadi kita perlu banyak orang libur pada hari Senin dan Selasa, baiklah, beberapa orang, 2 orang libur pada Rabu Kamis, dan lalu Jumat Sabtu. Yah, ini luar biasa, saya tidak akan pernah secara acak memberikan jawaban ini, oke, tapi apakah itu berarti itu jawaban terbaik? Artinya, ini adalah penggajian minimum, tetapi saya mungkin dapat memberikan jawaban berbeda yang masih memiliki penggajian minimum ini. Ada cara lain untuk melakukan itu, mungkin dengan jadwal yang sedikit lebih baik. Seperti misalnya, saat ini kami memiliki 28 orang pada hari Rabu dan Kamis, padahal kami hanya membutuhkan 15 dan 18 orang, itu banyak sekali. Pikirkan tentang siapa yang bekerja di taman hiburan, ini adalah anak kuliah di rumah untuk istirahat,ini akan menjadi masalah jika kita memiliki banyak orang tambahan. Dan pada hari Senin Selasa, kita bahkan mati, tepat di tempat yang kita inginkan. Jadi itu berarti jika ada orang yang saya anggap sakit, sekarang kita harus, Anda tahu, menelepon seseorang dan membayar mereka waktu setengah, karena mereka sudah bekerja lima hari lagi.

Baiklah, jadi hanya dengan sedikit matematika sederhana di sini, jika saya akan mengambil 8 dari Senin Selasa, dan menjadikannya 10, dan mengambil 8 itu dan menambahkannya ke Rabu Kamis, oke. Sekarang saya memiliki solusi Solver dengan jawaban yang sama persis, 2040, mereka mendapatkan jumlah orang yang tepat. Saya hanya menyeimbangkan jadwal, dan sekarang kami memiliki 8 tambahan, 8 ekstra, 3 ekstra, dan 2 ekstra, dan persis apa yang kami butuhkan di akhir pekan yang, Anda tahu, skenario staf penuh. Bagi saya, ini sedikit lebih baik daripada yang dibuat oleh Solver, apakah itu berarti pemecah itu gagal? Tidak, sama sekali tidak, karena saya tidak akan pernah sedekat ini tanpa Solver. Begitu Solver memberi saya jawabannya, ya, saya bisa sedikit mengubahnya dan sampai di sana, oke. Tip # 37, “40 Tip Excel Terbaik Sepanjang Masa”, mendekati akhir dari 40 pertama, pengantar kecil yang bagus untuk Solver.Panduan untuk semua podcast dalam seri ini ada di sini, "MrExcel XL - 40 Tips Excel Terbaik Sepanjang Masa", Anda dapat memiliki e-book hanya dengan $ 10, cetak buku seharga $ 25, klik "i" di atas pojok kanan!

Baiklah, rekap: Solver, jika Anda menggunakan Excel versi Windows, Lotus 1-2-3, itu ada di sana, dibuat oleh pendiri Visicorp Dan Fylstra. Ini adalah versi gratis dari pemecah tugas berat, berikut tautan untuk memeriksa pemecah tugas berat, yang akan ada di komentar YouTube. Mungkin saja mereka belum diinstal, alt = "" TI, tanda centang Solver, lihat di sisi kanan tab Data untuk menemukan Solver. Baiklah, Anda harus memiliki sel obyektif yang Anda coba minimalkan atau maksimalkan atau setel ke nilai, satu rentang sel input. Tentukan batasan, termasuk sesuatu yang tidak diharapkan, seperti saya harus mengatakan "Tidak ada setengah-orang" dan "Tidak ada orang negatif". Solver akan menemukan solusi optimal, tetapi mungkin ada solusi lain yang memiliki ikatan dan Anda mungkin dapat menyesuaikannya untuk mendapatkan solusi yang lebih baik.

Baiklah, begitulah, saya ingin mengucapkan terima kasih telah mampir, sampai jumpa di lain waktu untuk netcast lain dari!

Unduh berkas

Unduh file contoh di sini: Podcast2036.xlsx

Artikel yang menarik...