|
Post by Ron Wednesday on Sept 16, 2013 14:44:45 GMT -8
this will be interesting to see who wins. I too have something in the 80's , but certainly my algorithm has some amount of luck to it.
|
|
Amer
Super Person
My super power is tremendous wealth.
Posts: 372
|
Post by Amer on Sept 16, 2013 14:58:11 GMT -8
Nice! Your code is so clean. Mine looks like it belongs on an episode of Hoarders. I don't know Python, but you appear to have taken a different path than me. I actually tried 3 different models to optimize speed, which I'm guessing is your program's problem. My program returns chains of 70+ elements within just a few seconds. How long did it take to write? Do you know how quick it is? Mine moves through ~100,000 elements per second.
|
|
|
Post by Tulley Kennedy on Sept 16, 2013 15:04:56 GMT -8
I am confused by my motivation for the immunity challenge. In the past, immunity was awesome because it guaranteed you would live. Now getting immunity just makes you look suspicious, because any diplomat should WANT to be targeted so they can show they are clean. But im not sure its worth rousing the suspicion of everyone by winning the immunity, especially early on. I for one am just going to assume whoever wins this week is a spy This is, of course, a nonsense argument. Anyone who wins the challenge is guaranteed one more week of existence, regardless of their identity. Obviously, Tulley did not bother to attempt this challenge, so now he feels compelled to throw some sour grapes in with the prize. If Tulley truly believed that the immunity winner was a spy or assassin, then why did he tell everyone before the deadline? Now, the spy or assassin can back out of it without being caught. Why not wait until after the deadline, when you've caught the guy redhanded? He's using this as an attempt to start a campaign against someone. It doesn't matter who (although, I think we all know it will likely be me), so long as there is someone that the group can focus on — someone other than Tulley. Makes you wonder why Tulley is so interested in starting this campaign. As for the challenge, I have a result in the 80's. I don't want to give the exact number, in case Zac actually took the time to write a program — we know Tulley didn't. Hah, that didn't take long. Amer's nonsense is already on tap. So do it gang, call amer's bluff and select me for polygraphing, you will see i am one of the normals. And I did throw together a quick script to do it but apparently I am not good at it, because my best chain was 58.
|
|
Annie McClarabow
Super Person
Owner of "All-Night Library"
Pay your library tab, errr I mean fines
Posts: 531
|
Post by Annie McClarabow on Sept 16, 2013 15:08:00 GMT -8
I'm confused Tulley. If you presume whomever won is a villain, why did you even try the challenge? I'm not trying to be challenging... Just confused.
|
|
|
Post by Tulley Kennedy on Sept 16, 2013 15:10:43 GMT -8
Just for the sheer novelty. I had a couple free hours after a meeting today. If I had gotten a solid # that I thought would win, I was going to post my chain when I submitted it so someone else could enter it too. As it is, Im not close to winning and don't have more time to try to improve my code so it doesn't matter.
|
|
Annie McClarabow
Super Person
Owner of "All-Night Library"
Pay your library tab, errr I mean fines
Posts: 531
|
Post by Annie McClarabow on Sept 16, 2013 15:18:51 GMT -8
But if you were close to winning, you'd be a villain under your theory. And having the same number as someone else eliminates you. So I still don't get it.
I'd post my entry but its kind of hard to do from my phone. I can tell you my approach: avoid element names ending in 'm' and primarily work with the symbols. Use single letter symbols ( like 'O' or 'Uuu') whenever possible. I got 65 on my first try and didn't try any further.
|
|
Super Sarah
Super Person
Dancer
Mildtropolis: safe from Coronavirus but the crowd will kill you!
Posts: 381
|
Post by Super Sarah on Sept 16, 2013 15:25:05 GMT -8
As a person who's never taken chemestry, I call bullshit on like half of these element names. Californium? c'mon!!
|
|
|
Post by Neutrino Esquire on Sept 16, 2013 15:29:43 GMT -8
Nice! Your code is so clean. Mine looks like it belongs on an episode of Hoarders. I don't know Python, but you appear to have taken a different path than me. I actually tried 3 different models to optimize speed, which I'm guessing is your program's problem. My program returns chains of 70+ elements within just a few seconds. How long did it take to write? Do you know how quick it is? Mine moves through ~100,000 elements per second. Thanks for the complement. My program only generates 1 random chain each time you run it. So sometimes you get a chain of 10, sometimes you get a chain of 60. It's incredibly random. My plan was to write another script to call my program continously and only save the chain with the highest count. Then I could run it overnight and check out the best result it found (literally brute force it). I never got around to writing that second part. Breaking Bad was on last night and I thought 66 was sufficient. Time to write: about half an hour Speed of program to generate one complete chain. real 0m0.111s user 0m0.000s sys 0m0.046s
Basically, my strategy was randomization and brute force. It's kinda interesting hearing how everyone approached this challenge.
|
|
Amer
Super Person
My super power is tremendous wealth.
Posts: 372
|
Post by Amer on Sept 16, 2013 15:50:39 GMT -8
As a person who's never taken chemestry, I call bullshit on like half of these element names. Californium? c'mon!! It's named by the lab that discovered it: UC Berkeley — as is Berkelium. They actually discovered 4 elements in a row, and if they had planned things out, could have named them "Universitium, Ofium, Berkelium, Californium".
|
|
Amer
Super Person
My super power is tremendous wealth.
Posts: 372
|
Post by Amer on Sept 16, 2013 16:06:37 GMT -8
Nice! Your code is so clean. Mine looks like it belongs on an episode of Hoarders. I don't know Python, but you appear to have taken a different path than me. I actually tried 3 different models to optimize speed, which I'm guessing is your program's problem. My program returns chains of 70+ elements within just a few seconds. How long did it take to write? Do you know how quick it is? Mine moves through ~100,000 elements per second. Thanks for the complement. My program only generates 1 random chain each time you run it. So sometimes you get a chain of 10, sometimes you get a chain of 60. It's incredibly random. My plan was to write another script to call my program continously and only save the chain with the highest count. Then I could run it overnight and check out the best result it found (literally brute force it). I never got around to writing that second part. Breaking Bad was on last night and I thought 66 was sufficient. Time to write: about half an hour Speed of program to generate one complete chain. real 0m0.111s user 0m0.000s sys 0m0.046s
Basically, my strategy was randomization and brute force. It's kinda interesting hearing how everyone approached this challenge. Interesting. Zac said he used a similar approach. I went at it element by element, forming a tree. So, start with actinium. Then pick a random word that starts with m. Keep doing that down the line until you hit a dead end. Record the result, then move back a step and try a different random element that begins with the appropriate letter. Obviously, this could go on for a while, so I added a time limit for each base chain.
|
|
Annie McClarabow
Super Person
Owner of "All-Night Library"
Pay your library tab, errr I mean fines
Posts: 531
|
Post by Annie McClarabow on Sept 16, 2013 16:07:41 GMT -8
As a person who's never taken chemestry, I call bullshit on like half of these element names. Californium? c'mon!! It's named by the lab that discovered it: UC Berkeley — as is Berkelium. They actually discovered 4 elements in a row, and if they had planned things out, could have named them "Universitium, Ofium, Berkelium, Californium". Not really that absurd fro Berkeley.
|
|
|
Post by Ron Wednesday on Sept 16, 2013 16:11:23 GMT -8
my algorithm: -Make table of first and last letter counts(i.e. startlettertable 'a'=5,'b'=3, etc. . .) -Pick random start point(delete choice from start/end tables) -Find a 2nd piece for start point, using table of letter counts to get 'best choice'. Rand to split ties. (delete choice from start/end tables) -Keep going till no more possible matches -Then keep resulting chain if bigger than default chain and try again
This was pretty simple and yielded results in the 70's and 80's most of the time. Got to 88 within a few minutes and higher just once, but I didn't have time to let it run long. If I had more time, I would have optimized the 'best choice' to sometimes pick worse choices, just to get more variety. Probably would have yielded better results over time.
|
|
Amer
Super Person
My super power is tremendous wealth.
Posts: 372
|
Post by Amer on Sept 16, 2013 16:29:41 GMT -8
my algorithm: -Make table of first and last letter counts(i.e. startlettertable 'a'=5,'b'=3, etc. . .) -Pick random start point(delete choice from start/end tables) -Find a 2nd piece for start point, using table of letter counts to get 'best choice'. Rand to split ties. (delete choice from start/end tables) -Keep going till no more possible matches -Then keep resulting chain if bigger than default chain and try again This was pretty simple and yielded results in the 70's and 80's most of the time. Got to 88 within a few minutes and higher just once, but I didn't have time to let it run long. If I had more time, I would have optimized the 'best choice' to sometimes pick worse choices, just to get more variety. Probably would have yielded better results over time. I tried a couple of different methods. The final one was: * Create a random list of all the elements. * Start with the first random element. Put it into a working list. * Create a new random list of all the elements that haven't been used. * Select the first element of this new list that begins with the correct letter. * Keep repeating this process until you hit a dead end. * Record the result. * Move back one step and try a different letter. I also repeatedly got results in the mid 80's, but eventually got one result of 89 after letting the program run for an hour. I'd guess Zac's method is more efficient.
|
|
|
Post by Stinky Pete on Sept 16, 2013 16:55:38 GMT -8
lol Neutrino I kept trying to think about how to integrate the multiple-edge-type problem into the DP solution to Longest Path, then tried to see if I could lighten it up with Strongly Connected Components, but then I just decided to throw Monte Carlo at it just like you did. I got 72 but I wrote it during work today and by the time I finished debugging I didn't have much time left to let it run for a long time d01.megashares.com/dl/sVsLrsV/Dyna.zip
|
|
|
Post by True Ingéneurs on Sept 16, 2013 17:12:57 GMT -8
my algorithm: -Make table of first and last letter counts(i.e. startlettertable 'a'=5,'b'=3, etc. . .) -Pick random start point(delete choice from start/end tables) -Find a 2nd piece for start point, using table of letter counts to get 'best choice'. Rand to split ties. (delete choice from start/end tables) -Keep going till no more possible matches -Then keep resulting chain if bigger than default chain and try again This was pretty much what I did, a combo of Zac, Annie & Paula. 1. printed the link Evan gave us 2. noted all the "m's" decided to rely more on symbols 3. Went through each one at a time and noted "what they end with" -Super handy 4. highlighted symbols as I used them to prevent doubles. 5. Once I got stuck, I started to add to the front of my train and worked backwards 6. made sure I utilized all the "O, N, K, single lettered symbols.." 7. Got 78, tried again, got 74, went with 78. Great Job Sarah on the 80. And dang you guys so techy/pro.
|
|
|
Post by Deviant Pennybags on Sept 16, 2013 17:30:38 GMT -8
I've been at work since Friday night and I'm also not tech savvy enough to write a script so I got a half hour of downtime and had the list on my phone and stayed away from M ending names and used mostly symbols and got like 60 or 61 on my first try and submitted it because I didn't have the time to try again.
|
|
|
Post by Peppperettte Paige on Sept 16, 2013 17:53:45 GMT -8
You all are so technical, paths, tables, chains,?? I'm certainly out of my league here, I used a pen, paper and a dart.
|
|
|
Post by Evan on Sept 16, 2013 18:27:26 GMT -8
Wow this thread hurts my brain. I wonder how sarah solved it.
|
|
|
Post by True Ingéneurs on Sept 17, 2013 6:36:22 GMT -8
Wow this thread hurts my brain. I wonder how sarah solved it. Why did it hurt your brain? Yeah I feel like a lot of us are awaiting to hear how she did it.
|
|
|
Post by Evan on Sept 17, 2013 7:49:29 GMT -8
I mean, reading all this logic gives my brain a hurty feeling. Like when I have to choose between a shiny object and porn.
|
|