Istri saya adalah seorang fotografer pernikahan. Kami meminta pasangan kami untuk membuat daftar foto yang ingin mereka ambil. Saya mencoba membuat prosedur yang akan meminimalkan waktu yang dibutuhkan.
Misalnya, Bob dan Alice masing-masing memiliki orang tua, dan satu atau dua saudara kandung, dan kerabat lainnya. Mereka menginginkan segala macam kombinasi orang dalam gambar. Masing-masing dari Bob bersama ibu, ayah, saudara laki-laki, saudara perempuan, saudara laki-laki dan perempuan, ibu dan ayah, orang tua Alice, saudara perempuan Alice, sepupu, keponakan perempuan, keponakan, dll. Biasanya antara 20 dan 40 kelompok yang berbeda, mungkin 10 hingga 20 orang.
Apa yang ingin saya tulis atau temukan adalah paket perangkat lunak yang mencakup semua orang, dan semua kelompok, dan memberi saya perintah yang akan meminimalkan orang yang berbeda datang dan pergi. Adakah yang tahu program semacam itu? Apa yang akan menjadi metode algoritmik terbaik untuk membuatnya? Grafik atau pohon yang diarahkan?
Terima kasih sebelumnya atas bantuan Anda!
Jawaban:
Anda sedang mencoba menulis perangkat lunak untuk membuat perselisihan orang-orang mabuk, menembak orang-orang dari usia yang sangat berbeda, dan orang-orang yang memiliki keinginan kuat atau tidak memiliki keinginan sama sekali untuk menjadi bagian dari gambar sama sekali; lebih mudah dilakukan? Saya ingin menghentikan Anda di sana.
Pilihan terbaik Anda tidak terkait perangkat lunak. Mereka mulai dengan menetapkan harapan dengan pasangan pada konsultasi awal, memperkuat bahwa dengan setiap kontak, memiliki jumlah waktu minimum yang ditetapkan dalam kontrak Anda untuk menangkap gambar formal yang diperlukan, dan akhirnya dengan menjadi penanggung jawab hari itu dan mengetahui cara mengelola secara efektif kelompok orang. Selain itu, Anda dapat membawa penembak / asisten kedua untuk membantu pernikahan yang lebih besar.
Akhirnya, saya mendorong Anda untuk berhenti berlatih meminta daftar foto pasangan. Gambar-gambar itu jarang dijual ketika sampai ke sana, mereka membutuhkan banyak waktu, dan menurut saya sangat membosankan untuk ditangkap. Alih-alih, minta pasangan untuk foto-foto yang mereka anggap harus dimiliki , misalnya pengantin wanita dan bibinya yang belum pernah dilihatnya selama bertahun-tahun. Ini menetapkan harapan bahwa mereka adalah harus memiliki tembakan tidak 60 formal keluarga yang berbeda.
Jika Anda mengetahui bahwa pasangan memang menginginkan masing-masing dan setiap kombinasi formal, praktik terbaik yang saya temukan adalah mengambil foto kelompok terbesar terlebih dahulu, dan mulailah mengambil orang sebanyak mungkin untuk setiap pemotretan berurutan. Jangan mengambil formal kelompok kecil terlebih dahulu. Pertimbangkan juga usia, jangan membuat yang tertua bergabung untuk mengambil gambar, ditarik keluar, dan kembali beberapa kali.
Saya bisa masuk ke lebih detail tetapi ini sudah jauh melampaui ruang lingkup "perangkat lunak untuk mencapai ini". Cukup pahami bahwa teknik, persiapan, dan pengalaman dapat mengatasi sebagian besar masalah pada topik ini.
sumber
Saya akan menjawab dari sudut pandang penulis perangkat lunak, dan seseorang yang baru saja menikah.
Pertama, seperti yang disebutkan dpollitt, Anda tidak akan mendapatkan perangkat lunak apa pun yang akan membuat orang-orang yang tidak logis bertindak dalam rumah yang tertata dan logis. Anda berada di sebuah pesta. Orang-orang akan bahagia, sedih, keduanya, marah, mabuk, sombong, bau, keras, malu-malu, dan hampir semuanya ada di antaranya. Mendapatkan perangkat lunak yang melakukan proses apa pun membutuhkan persetujuan kelompok. Dan Anda tidak akan mendekati persetujuan. Kemungkinan Anda bahkan tidak akan membuat kelompok menyetujui apa arti persetujuan.
Sekarang, dari pihak kami (sebagai pelanggan, dan orang-orang akan memiliki pendapat berbeda sebagai pelanggan), kami memberi tahu fotografer kami, kami ingin foto ini dan itu (seperti berjalan menyusuri lorong atau keluar dari limusin). Lalu kami berkata kami ingin foto keluarga terstruktur.
Apa yang dilakukan fotografer kami adalah bekerja bersama kami dan venue. Dia memastikan bahwa segera setelah upacara selesai, bahkan sebelum ada yang punya kesempatan untuk bergerak cukup untuk keluar dari kursi mereka, staf membawa minuman dan makanan pembuka, dan pada dasarnya menciptakan semacam dinding pemblokiran yang menjaga semua orang tetap sama. daerah. Lalu dia mendapat foto-foto resmi. Seluruh proses dilakukan dalam waktu sekitar setengah jam. Untuk bagian kami, kami menginstruksikan pengiring pengantin dan pengiring pria untuk diam-diam memberitahu semua orang untuk menggantung untuk foto. Lalu kami langsung melarang kamera apa pun. Satu-satunya cara Anda mendapatkan foto adalah jika Anda bekerja dengan fotografer kami. Kami juga menginstruksikan pelayan kehormatan dan pria terbaik untuk bekerja dengan fotografer, dan "mengambil lebih dulu" siapa pun yang telah pergi.
Terakhir, kami menginstruksikan "orang-orang penting" (orang tua, dan pemimpin keluarga, dll.) Untuk menyebarkan berita bahwa fotografer ini perlu melewati beberapa bidikan "naskah", lalu apa pun yang mereka inginkan, yang harus mereka lakukan adalah bertanya kepadanya.
Secara keseluruhan, proses kami lancar, fotografer kami mengagumkan, dan itu adalah pengalaman hebat.
Hal-hal KUNCI yang dilakukan fotografer kami untuk mewujudkannya, adalah bekerja bersama kami. Dia menyarankan agar kita memindahkan barang-barang dan membuat makanan pembuka dan minuman bertindak sebagai tembok. Dia memberi tahu kami apa yang perlu dilakukan, dan kemudian mari kita cari tahu caranya. Yang terpenting, ketika saatnya tiba, dia mengambil alih komando situasi. Dia cukup, sopan, dan tegas. Kami tahu dia akan melakukan ini, katanya kepada kami, jadi kami mendukungnya. "Tapi aku tidak mau mengambil foto seperti itu." Saya atau istri saya ditanggapi dengan, "Orang ini pro, Anda akan melakukan apa yang dia katakan, itu sebabnya kami mempekerjakannya." Kerja tim semacam itu membuat pesta terus bergerak dan foto-foto diambil, dan itu adalah pengalaman yang luar biasa.
Jadi saran saya kepada Anda adalah:
sumber
Inilah pendekatan berbeda yang jarang berhasil karena manusia adalah manusia, dan Mempelai Perempuan adalah manusia, tetapi itu bekerja dengan cukup baik ketika orang melakukan apa yang mereka katakan akan mereka lakukan.
Dahulu kami impor AS MD (Telecom Auckland) menetapkan prinsip "anjing rongsokan" di mana klien dalam alur kerja berhak untuk mendekati manajer di jalur kerja atas solusi untuk masalah dengan menyelesaikan sesuatu. Ini ditentang dengan segala cara yang dapat diharapkan dan bertentangan dengan pendekatan tradisional - tetapi saya menyukai terminologinya, jadi pinjamlah.
Saya memberi tahu B&G bahwa saya tidak mengenal tamu, teman, keluarga mereka. Pekerjaan saya adalah mengambil foto. Memiliki daftar apa yang diinginkan adalah permulaan, tetapi saya menemukan bahwa tidak ada jumlah berteriak, membujuk, kata-kata baik atau berguling-guling di tanah melemparkan amarah membuat Bibi May dan Paman Zach ke (tempat yang tepat di) gereja tepat waktu ketika itu giliran mereka untuk difoto. Jadi ...
Saya menyarankan mereka untuk menunjuk dua "anjing rongsokan" - satu dari setiap sisi keluarga. Masing-masing perlu tahu atau mampu mengidentifikasi semua orang yang terlibat di pihak keluarga mereka. Mereka harus tegas dan tidak mudah diabaikan. Sopan dan diucapkan dengan lembut adalah bonus jika mereka dapat dicapai tanpa mengurangi tujuan mereka.
Tugas mereka adalah mengambil daftar foto yang diinginkan, mengidentifikasi orang-orang yang terlibat, dan memastikan bahwa mereka dikirim ke tempat yang tepat pada saat itu kepada fotografer.
Pada dasarnya semua orang yang saya sarankan ini, dengan penjelasan mengapa itu diinginkan, berpikir itu ide yang bagus dan mengatakan bahwa mereka akan melakukannya.
Bahkan dengan pengingat yang berkelanjutan, sangat sedikit orang yang pernah berhasil mencalonkan orang untuk peran ini.
Orang-orang jarang meninggalkan cukup waktu antara pernikahan & resepsi untuk memberikan waktu yang cukup untuk foto. Waktu setelah kebaktian dipenuhi dengan salam dan ucapan selamat dan "bisakah kita memiliki foto dengan ..." - dari mereka yang tidak pergi ke resepsi DAN dengan mereka yang.
Saya menyarankan agar waktu resepsi gereja lebih lama dari yang dibolehkan kebanyakan orang. Sedikit yang mendengarkan.
Jadi - saya bertanya apakah foto "bride and groom + xxx" dapat diambil di resepsi untuk mereka yang hadir. Dalam banyak kasus ini berhasil. Beberapa perlu pergi lebih awal tetapi dalam banyak kasus ada waktu untuk memilih area yang cocok dan bersepeda. Selama B&G menyadari bahwa itu adalah satu-satunya kesempatan untuk mendapatkan foto-foto penting ini, biasanya akan berfungsi dengan baik.
Dan, bukan perangkat lunak yang terlihat :-).
sumber
Peringatan spoiler: semua orang tidak diciptakan sama ketika datang untuk mengatur urutan mereka pergi ke gambar.
Jika Anda memiliki anak, Anda mungkin ingin mereka ada di gambar awal. Anak-anak muda ... yah, anggap saja tidak sebagus berpose untuk foto formal. Jadi, bahkan jika Anda dapat mengoptimalkan pesanan, Anda harus memasukkan faktor-faktor seperti ini.
Atau mungkin kakek nenek memiliki masalah mobilitas. Dll
Dan bahkan jangan mulai mencoba menganalisis keluarga dengan masalah perceraian atau keluarga ...
Alih-alih, mintalah pasangan pernikahan menyiapkan daftar foto keluarga yang mereka inginkan dan berikan kepada Anda terlebih dahulu. Format spreadsheet dapat digunakan untuk ini (mudah diakses oleh keluarga lain). Anda bisa menyiapkan lembar templat dan mengirimkannya ke pelanggan Anda juga.
Dan terakhir, yang belum pernah disebutkan - menginstruksikan pesta pernikahan untuk memiliki seseorang yang akan:
Terlepas dari seberapa optimal pesanan Anda, tanpa rencana untuk mengeksekusi pada hari yang sebenarnya Anda akan mengalami kekacauan. Daftar dan fasilitator yang disiapkan untuk memanggil nama orang saat ini dan "di dek" akan jauh lebih baik untuk merampingkan aliran gambar daripada algoritma apa pun.
sumber
Saya pikir ini mungkin menarik untuk diambil berbeda dari pertanyaan ini.
Ini sebenarnya tampak seperti variasi pada masalah Salesman Perjalanan, yang saya yakin kebanyakan orang di sini akan tahu, adalah masalah yang sangat sulit (NP-Hard).
Sejauh yang saya tahu, Anda memiliki satu set elemen yang berbeda (orang), dan daftar negara (kelompok) yang harus mereka masuki. Anda perlu menemukan rute terpendek antara negara yang mengunjungi mereka semua. (terdengar familiar?)
Perbedaan utama adalah fungsi jarak, yang dalam hal ini saya pikir jarak Levenshtein akan bekerja dengan tepat. (Perbedaan antara dua string, namun ini memperhitungkan urutan elemen juga.) Anda juga bisa menggunakan beberapa variasi jalur terpendek lainnya.
Jika pesanan bukan merupakan masalah, Anda bisa saja jumlah 'operasi' antara masing-masing negara. Jadi ini hanya jumlah orang yang perlu bergerak.
Sesuai pertanyaan Anda, ini adalah grafik yang tidak diarahkan.
Saya tidak bisa memikirkan abstraksi atau reduksi yang akan menyelesaikan ini dengan cara lain. Bergantung pada jumlah kelompok orang, mungkin untuk mencari solusi yang optimal, tetapi lebih dari 20 atau lebih dan Anda menunggu waktu yang lama untuk menyelesaikannya.
sumber