Faster Algorithm for Sphere Packing Discovered
sciencehabit writes with an article in Science about a new way to pack spheres into a cylinder. From the article: "One day, physicist Ho-Kei Chan of Trinity College Dublin was playing with steel ball bearings, trying to pack them into a little cylindrical tube in the most efficient way possible. It's a tricky problem that can take even a powerful computer a week to calculate. But after thinking about it for a while, Chan has figured out a way to simplify the math. The advance could help engineers pack all sorts of spheres more efficiently, from nano-sized buckyballs to Christmas tree ornaments. Another potential application is liquid crystal displays such as those used in televisions and computer monitors. If scientists could make liquid crystal molecules obey these rules, they could potentially create a whole new class of liquid crystals."
One caveat is that the diameter of the cylinder can be at most 2.7013 times as large as the diameter of the spheres being packed.
Scientist finds new innovations while playing with balls. News at 11.
and ... nm. Too obvious.
Do you really need math to properly pack balls?
Having to work for a living is the root of all evil.
I always thought the most efficient way was to choose a container and then let gravity do the work. Not math involved and I bet it's only slightly less efficient :-P
"When information is power, privacy is freedom" - Jah-Wren Ryel
So if I wanted to efficiently pack small spheres, that would only help me if I stored them in a bunch of long, thin cylinders. I guess if the long, thin cylinders could be packed together efficiently, that wouldn't be an issue.
If the diameter of the cylinder is at most 1.0000 times larger than the diameter of the spheres being packed.
Important detail from the article: if the cylinder is 2.7013000001 times larger then the math actually opens a rift to the heart of the universe where Azathoth froths and bubbles to the sound of demonic pipes and such like. This rarely ends well.
Not 2.7013 time larger. 2.7013 times as large. It's a massive difference.
"If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
When is he going to develop an algorithm to determine the most efficient way to pack cylinders into rectangular (cuboid) shipping containers?
Hey, how's it going?
the 2.7013 is an approximation of 1+1/sin(/5)
I have developed an even faster algorithm although the one caveat is that the diameter of the cylinder can be at most 1.000 times larger than the diameter of the spheres being packed.
Sphere packing is related to all crystalline structures, not just liquid crystals. This could have a profound impact on material science, as a whole.
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
The summary doesn't mention one of the main reasons we care about sphere packing. If one is interested in error correcting codes then the best way of thinking about how many messages one can reliably send is a function of how efficiently you can pack sphere. The essential idea is that you think of your signal space as some large dimensional space, and you then consider your potential error to be the radius of the spheres. Then if you can find a decent packing of the spheres and you send as your messages the signals contained as the center of the spheres then you have a more efficient ability to send messages reliably with minimal chance of error. It seems that most of the work discussed in TFA is essentially for three dimensions only so this major reason people care about sphere packing (indeed probably the biggest reason) isn't that deeply connected.
In general sphere packing shows up in a lot of contexts and is pretty tough. For high dimensions we can't generally do much more than a random packing, although there are exceptions. For example, in 24 dimensions one has the very elegant Leech lattice http://en.wikipedia.org/wiki/Leech_lattice which allows a very regular, very efficient packing of spheres, and leads to the Golay code http://en.wikipedia.org/wiki/Binary_Golay_code which is a very efficient code for sending reliable signals and is not that hard to actually implement in practice since the math behind is straightforward.
One related issue is showing that a given type of sphere packing is the best possible. This turns out to be really, really tough. Kepler (yes, that Kepler, he did a lot.) famously conjectured that for spheres in three-dimensions the most efficient pacing was in general the obvious packing (the packing one sees with oranges in a grocery store). http://en.wikipedia.org/wiki/Kepler_conjecture. This problem wasn't solved until 1998, which made it for a long time one of the oldest unsolved problems in mathematics. Even just getting weak lower bounds is tough, especially in the higher dimensional case. The range between the upper and lower bounds is generally massive, because it is tricky to actually figure out good ways of fitting spheres together and it is really tricky to show that there isn't some clever way of getting more spheres in. (The earlier mentioned Leech lattice essentially works because it turns out that if one makes the essentially obvious lattice in 24 dimensions you can just manage to then slip a few more spheres in.) Last semester I was doing work related to what is called the Jordan-Schur theorem http://en.wikipedia.org/wiki/Jordan-Schur_Theorem, and it turned out that one might be able to improve some of the bounds if one had decent sphere packing lower bounds. Unfortunately, for my purposes none of the sphere packing results known were almost any better than just the naive volume estimates (that is, that you can't fit more little spheres into a region than you have volume). In high dimensions, things are just that bad.
TFA is actually talking about a special where you want to fit your spheres in a region of a specific shape, in this case, a cylinder. Things like this show up fairly frequently. In the case I was working with, one needed to fit the spheres around a larger sphere. Chan's result is quite interesting, although it looks to some extent like how well his type of packing works is empirical. The paper doesn't seem to be giving much in the way of direct upper bounds on how well the packing will work in general, although for many applied purposes his method should work well enough. I suspect that over the next few months people will be looking at his method, generalizing it, and trying to use it to establish explicit, non-computational, upper bounds.
Densest columnar structures of hard spheres from sequential deposition
This is how Ice Nine was discovered in Kurt Vonnegut's, "Cat's Cradle"...
All ideas^H^H^H^H^Hprocesses in this post are Patent Pending. (as well as the process of patenting all postings)
Title says it all.
Then take this!
I'd like to see even more.
And note this is a very nuanced result. It's not the optimum answer to all cases of the sphere packing problem, complete with proof of optimality. It is only a fast way to find a good answer in some cases. So many people expect such absolute, complete, and progressive answers from science. The media likes to spin things that way. Science fiction is full of such fantastically powerful technology that it warps expectations. We have no idea how some of these technologies could ever plausibly be built, we strongly suspect many of them are just flat impossible, but we've gotten so used to seeing them in SF we hardly even notice. Our brave heroes have 1 hour to save the ship, planet, or galaxy from certain doom, and they always succeed, always hit on the right answer just in time. Sure, scientists want those kinds of answers too. But we understand it's not that easy. The public really doesn't.
Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
this research was funded by a grant from Hanes.
Considering a spherical horse in simple harmonic motion...
Opus: the Swiss army knife of audio codec
Spheres are topologically equivalent to a point. This problem is Topologically trivial :P
"One caveat is that the diameter of the cylinder can be at most 2.7013 times as large as the diameter of the spheres being packed."
Around here we need a fast packing algorithm for generating geometry for simulations of Pebble Bed Reactors http://en.wikipedia.org/wiki/Pebble_bed_reactor
We have quite a bit of code to do these problems... and we never actually end up computing perfect packing... we just hope to get close....
Maybe someone will see a way to extend this to more general ball packing problems....
The author writes, "One caveat is that the diameter of the cylinder can be at most 2.7013 times as large as the diameter of the spheres being packed."
I wonder if this has any connection with pi?
Two-thirds of pi = 2.09230071
Coincidence????
I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
A while back, I created a much more devious, twisted version of the sphere packing problem which can be found here:
http://www.skytopia.com/project/imath/imath.html#12
Why OpalCalc is the best Windows calc
So does this mean that we're one step closer to solving P = NP?
A few years ago I worked in a job that put us on a boat in the ocean. My coworkers were golfers and a few were good at math so I asked them if they could calculate how many golf balls would fit into a 55-gallon drum. Never got an answer... Any algorithm would be nice, probably more a calculation of free space between the spheres but I never put much thought into it.
Real-world application: Will this help me in the guess the number of gum balls in the container contests?
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
I was just able to get FIVE tennis balls into a container that usually holds three after applying this algorithm.
Almost everyone interviewed at Google/Amazon/Microsoft has been asked this question and everyone who got the job solved this problem (How many tennis balls can you fit in a school bus) on the spot under ten minutes or less.
I fit all the interviewers inside the trash can in the corner and simply walked out, but that is just me.
captcha agrees: obvious
D(c)/D(s) = 2.7014. I'll stick to the old fashioned way, then...
Note that in the paper, the guy says the correctness of this procedure is based on some unproven conjecture
- Hey, I heard you won a big prize for your latest paper! That's so cool. What was it about?
- Packing spheres into a cylinder.
- Ahem... I think I'll go somewhere else now...
http://www.algit.eu/index.php?option=com_content&view=article&id=71&Itemid=86 Download and play.