Live data from Hacker News

Show HN: Better Seater – Wedding seating chart optimizer

seater.steam-oven.net

101–108 of 108 posts

Re: Show HN: Better Seater – Wedding seating chart optimizer

#101

Earlier quoted context omitted.

I had to write a piece of code to manage 200+ dogs at a kenneling facility, sorted by temperament, across a Gantt chart, with lists of friends and enemies which could stay together or must never be together - coming and going at different times. Additionally, dogs and kennels are both color-coded and certain types of dogs can only stay in certain types of kennels. Some dogs cannot share a kennel at all; kennels have…

That sounds amazingly high tech for a kenneling facility. How did you do the optimization - usign an off-the-shelf solver?

I wrote it completely from scratch, basically a custom type of tree search. Admittedly there are naive aspects and opinionated optimizations and magical constants involved in the final code, but in practice it's worked without any problems for 4-5 years, and it's relatively fast for the amount of data it's churning.

[Edit: An example of a magical constant is the weighting of "friends" over a period of time versus "number of moves" required to achieve optimal friendships]

Re: Show HN: Better Seater – Wedding seating chart optimizer

#102

Earlier quoted context omitted.

That sounds amazingly high tech for a kenneling facility. How did you do the optimization - usign an off-the-shelf solver?

I wrote it completely from scratch, basically a custom type of tree search. Admittedly there are naive aspects and opinionated optimizations and magical constants involved in the final code, but in practice it's worked without any problems for 4-5 years, and it's relatively fast for the amount of data it's churning. [Edit: An example of a magical constant is the weighting of "friends" over a period of time versus "nu…

Impressive. Also hilarious that this kennel is probably better optimized than a lot of big logistics companies. ;0)

I think arbitary weightings are unavoidable when optimizing 'soft' (social) problems like kennel allocation or seating plans. The optimal solution is not well defined.

Re: Show HN: Better Seater – Wedding seating chart optimizer

#103
post #92
post #78

Earlier quoted context omitted.

> I am not saying you should seat people randomly With the exception of people who would throw hands at each other, this actually doesn't seem like an awful idea.

It is an awful idea because it will make most people sad not to be next to the ones they love, like spouses and friends

I mean grouping people that want to be together and then mixing those at random might not be the worst approach.

Re: Show HN: Better Seater – Wedding seating chart optimizer

#104
post #68

Ok. This may be slightly off-topic, but I'm pretty serious when I suggest getting feedback and ideas from an Indian aunty/uncle who has done and helped arrange or take primary roles in weddings in their families. Here in India, for all significant events, there is always an aunt/uncle who knows everything, and everyone asks that person. Looking at the website and seeing Tables numbered less than ten by default, I rea…

Yea, I would love to hear from one of those aunty/uncles! But I don't know any offhand. You have any pointers? Thanks for giving the tool a try!

Ask an Indian friend to connect you with the uncle or aunt who talks the most about getting them married. That's usually the same person in charge of wedding logistics, invitations and stuff. I think they're just generally incentivized by Gulab Jamuns and Rasagullas.

Re: Show HN: Better Seater – Wedding seating chart optimizer

#105

Earlier quoted context omitted.

I wrote it completely from scratch, basically a custom type of tree search. Admittedly there are naive aspects and opinionated optimizations and magical constants involved in the final code, but in practice it's worked without any problems for 4-5 years, and it's relatively fast for the amount of data it's churning. [Edit: An example of a magical constant is the weighting of "friends" over a period of time versus "nu…

Impressive. Also hilarious that this kennel is probably better optimized than a lot of big logistics companies. ;0) I think arbitary weightings are unavoidable when optimizing 'soft' (social) problems like kennel allocation or seating plans. The optimal solution is not well defined.

Thanks! It was quite a fun problem to dive into... the company hired animal behaviorists and put a lot of thought into the "soft" issues that it wanted the software to be able to solve, while allowing for flexible decisions from managers and employees, so it was challenging as understanding the domain... and yes I would say animal management is quite a tricky logistical problem that most people never even consider.

In a larger way, though, 90% of this kind of work is pencil and paper, drawing out all possibilities you can think of, and then asking questions like "what if X and Y are friends staying together, and Y and Z and Q are friends, but X and Z are enemies, and Z+Q is showing up on night 4 of X+Y stay, should Y move in with Z if there are 2 nights left? 3? A majority? Ever?" I would get into long, long conference calls where I would ask them all these scenarios and graph them out before I started writing the code. So the code just expresses what they would hopefully wish to do based on their domain knowledge and best practices. And that is the real trick of optimization... making the clients happy ;)

Re: Show HN: Better Seater – Wedding seating chart optimizer

#106
post #34

Earlier quoted context omitted.

I'm wondering if a constraint solving library like optaplanner could help here - believe it uses simulated annealing. Hey, maybe a use case for Dwave? j/k.

Trivia: The first major public demonstration of D-Wave used a modified version of our PerfectTablePlan table planner software to show how D-Wave could solve a real world optimization problem. https://www.perfecttableplan.com/newsletters/newsletter10_we...

Nice. I sat through a sales presentation/demo by D-Wave once. Very interesting, though limited to a particular class of problems.

Heck, the copy on their homepage is a big clue:

"Our customers are building quantum applications for problems as diverse as logistics, portfolio optimization, drug discovery, materials sciences, scheduling, fault detection, traffic congestion, and supply chain management. What problem can we help you solve?"

You have to REALLY need it to spend the money.

Re: Show HN: Better Seater – Wedding seating chart optimizer

#107
post #88

Earlier quoted context omitted.

Thanks for the kind words about OptaPlanner. We've forked OptaPlanner as Timefold. We don't have a wedding seating example in timefold-quickstarts, yet. Someone did an wedding seating planning implementation 10 years ago: https://github.com/juanignaciosl/wedding-tables-planner but that's going to be very stale (still DRL files etc). It's probably better to start from the school-timetabling use-case in timefold-quicks…

Thanks a lot for all the development of Optaplanner over the years! Your work is really amazing and valuable.

If you want to give Timefold a try locally - it should about twice as fast, still the open source version - try our single Maven or Gradle command on your codebase: https://timefold.ai/upgrade-optaplanner-to-timefold

If you're interested in writing a blog around your Wedding Seating Planner (it looks very cool!), ping me on LinkedIn and we'll happily push it on our socials.

Re: Show HN: Better Seater – Wedding seating chart optimizer

#108
post #54

Love this. I got married in 2022 and I started a "friend and family graph" with the goal of optimizing layout. But other stakeholders, cough cough in laws cough , quickly demanded direct allocation.

Haha! How many people attended? Would your in-laws have been able to use this type of tool?

160, and I don't think my in-laws would have used this. Mostly because they would feel like having to use a website vs just writing names on a printed diagram would be a bit too much to ask and they truly wanted to have full access so describing some sort of requirements and then have someone or something else create the layout would not fit their expectations.

But that's just my situation, I'm sure for younger folk or weddings where the couple has stronger say would be a good tool to have!

Post reply on HN