This question originated from a real life problem. It has to do with a certain system of sliding glass panels used to close a terrace. Describing exactly how it works would take a long time, so here is a youtube video showing the concept: https://www.youtube.com/watch?v=QMvF3TcPUDA
(Disclaimer: I am in no way associated with the company marketing the product advertised in this video)
As the video shows, the person has to slide each glass panel to the right hand side of the balcony before being able to rotate it, thus getting it out of the way. Observe that the rotation can only take place when the panel is at the right hand side due to a single slot in the top railing.
In order to state my question it is best to imagine a set of glass panels covering a single side of a very long terrace, rather than the one in the video, where two perpendicular sides are involved.
In the video, the person opens the glass panels one by one, having to walk further and further in order to bring the next panel towards the rotating position. This is obviously not the most efficient way of doing it (too much walking) since she could easily bring more than one panel each time. However, since the panels are not attached to each other, should she want to bring more than one panel at once, she would have to walk a little further to the leftmost panel about to be slid and then push them all together. She could even walk all the way to the absolute leftmost panel and slide them all together but, after doing so, she would be required to come back to the right hand side to rotate the single panel by the slot in the railing.
First question: what is the most efficient method for opening all glass panels with the minimum amount of walking?
As far as I know, this is an open problem. I have asked it to a few people in combinatorics but so far I do not have an answer.
What do I know about it? I wrote a computer program to find the solution by brute force, which is capable of dealing with up to 16 panels. Once you see the solution, a conjecture immediately pops up in your mind. You do it recursively! Split all panels in two halves, open the rightmost half (using recursion), walk all the way to the left, bring the remaining doors to the right and open them (using recursion again).
Second question: is this indeed the best method?