|
Most of us have struggled with the mathematical puzzle known as the "moving sofa problem." It poses a deceptively simple question: What is the largest sofa that can pivot around an L-shaped hallway corner? I thought the only limiting factors on moving were how many friends you have, and how much beer and pizza you can afford
|
|
|
|
|
That's actually pretty interesting.
What do you get when you cross a joke with a rhetorical question?
The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism.
Do questions with multiple question marks annoy you???
|
|
|
|
|
|
Cue Dirk Gently...
Wait, moving a sofa is a three-dimensional problem; not a two-dimensional one.
modified 20-Mar-17 19:56pm.
|
|
|
|
|
I can appreciate a 3D modeled mathematical approach to this problem, but a bikini-top shaped sofa?
My dad was a furniture upholsterer for some +55 years. When I was growing up I helped him pick up and deliver countless chairs and sofas, so I have carried sofas of many sizes and shapes through many tight hallways and staircases. The article mentions standing the sofa on end, which works as long as the ceiling is high enough - you really end up doing the back breaking standing-on-end-with-an-angle method. In any case, the biggest problem is usually getting the sofa through the door at the end of the hallway.
"When you don't know what you're doing it's best to do it quickly" - Jase #DuckDynasty
|
|
|
|
|
Sofa so good.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
Only a mathematician would decide to make sofas bikini-top shaped, rather than flip them over to go around corners that turn the other way.
Brain the size of a planet; practical ability the size of the cube root of pi.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Dynamite and sledgehammers work wonders.
#SupportHeForShe
Government can give you nothing but what it takes from somebody else. A government big enough to give you everything you want is big enough to take everything you've got, including your freedom.-Ezra Taft Benson
You must accept 1 of 2 basic premises: Either we are alone in the universe or we are not alone. Either way, the implications are staggering!-Wernher von Braun
|
|
|
|
|
Might need a few throw pillows after though
TTFN - Kent
|
|
|
|
|
I’m quite interested in your work on improving algorithm performance using techniques related to computer architecture. However, I think that this may only be of interest to academia. Do you think that there are jobs opportunities related with this profile, which is very specialized? Yes. Next question.
|
|
|
|
|
No. You are not smarter than the compiler.
|
|
|
|
|
Yes I am, and so are you. Compilers aren't magic, and inherently more limited in what they can do than humans.
|
|
|
|
|
Let's see... in this room I have two Intel PCs, a MicroVAX, two AlphaServers, and an Itanium -- do I want to write Assembly and/or hand compile for each of them? No, I am not that smart.
|
|
|
|
|
Smart isn't the problem, you could do it. It would take too much effort and time.
|
|
|
|
|
I disagree. Even the simplest compiler is a form of expert system that contains decades of expertise of persons who are unquestionably smarter than I.
Add to that, that I am really not interested.
Having said that, I have created interpreters for one or two simple languages.
For instance: CommScript[^]
But a full-on compiler for a general purpose language? Particularly a modern one? No. I can't do it.
|
|
|
|
|
It doesn't even matter, that entire angle is a straw man. Nowhere do the rules say that you have to take over every single task of the compiler, there are no rules.
You can even use the compiler that you're outsmarting, or even an other one. That's not against the rules because there are no rules.
A compiler also can't try things, in the sense of actually running some code on the actual data and seeing what works out best.
You will win every time, and it is impossible to lose.
|
|
|
|
|
You can have the best compiler in the world. It just won't be faster with idea that is inherently slow. You don't believe? Compile bubble sort and quick sort. Tell me if that genius of a compiler improved a performance of a bad idea on its own.
|
|
|
|
|
Hahahahahahahahaha. No. Been there, done that - the same algorithm on the same set of images got from 30 ms to 12 ms of running time only by manually optimizing memory access. Is it important? Well, I have about 80ms to apply other 30 algorithms to that images so yes, it is
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
|
|
|
|
|
Duncan Edwards Jones wrote: You are not smarter than the compiler.
I am not able to turn source code into machine instructions like the compiler, but it knows nothing about my requirements and constraints and can't pick the correct algorithm for me.
|
|
|
|
|
Precisely - you tell it what you want (and your constraints), and let it work out how best to do it.
Like you do with SQL, or network routing or so many other aspects.
A business software product can expect to have a lifetime of a decade - you don't know that your performance tweaks will still be applicable in 10 years time.
This is why we have so much JavaScript (and indeed java) around - raw performance has become (in most cases) a hardware and OS level concern.
|
|
|
|
|
Duncan Edwards Jones wrote: you tell it what you want (and your constraints), and let it work out how best to do it
Yeah - it doesn't work that way I can't tell my compiler - "I need a function to find a cluster of similar documents under 1 s on such hardware - would you make one for me please?"
|
|
|
|
|
Not as much as correctness and not at the cost of maintainability.
|
|
|
|
|
In software for PC, Apps and similar (which is the biggest part of the pie currently) I fully agree with you.
But in software for rapid response electronics... performance is still a very important aspect.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
And big data wallahs demand miracles.
One place I was at was asked to process over a million DB records per second -- it was sort-of hidden/buried in the requirements, and not noticed until one of our devs sat down and calculated what the reasonable-sounding requirements really meant.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
PIEBALDconsult wrote: Not as much as correctness and not at the cost of maintainability.
True. But I have speeded up scientific code by a factor of 2-10 by recoding inner loops in assembly language. In at least one case, it made the difference between using slower (cheaper) and faster (more expensive) hardware for a system. In all cases, it made larger analyses feasible.
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack.
--Winston Churchill
|
|
|
|