Twitter bot

For general discussion about Conway's Game of Life.
User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Twitter bot

Post by codeholic » April 17th, 2015, 3:58 pm

calcyman wrote:I'm contemplating using the Twitter API (my friends used it at a Hackathon last summer) so that Catagolue can tweet new discoveries.
I've made a Twitter bot, that tweets new discoveries: https://twitter.com/conwaylife

Here is its source code: https://github.com/conwaylife/conwaylifebot

The next thing I will probably do is to make it retweet messages to @conwaylife from certain trusted accounts.
Ivan Fomichev

User avatar
gameoflifeboy
Posts: 474
Joined: January 15th, 2015, 2:08 am

Re: Twitter bot

Post by gameoflifeboy » April 17th, 2015, 4:10 pm

Cool! Is it going to tweet anything else besides b3s23/C1 discoveries? Like maybe some statistics once in a while, or discoveries in other symmetries?

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 17th, 2015, 4:19 pm

So far I considered following things:
  • retweeting tweets of lifenthusiasts addressed to it
  • reporting new oscillators, spaceships and growing objects in symmetric soups
  • reporting new asymmetric soups that produce oscillators, spaceships and growing objects that were previously spotted in less than 5 soups
  • reporting new assymetric soups for rare objects that can be used as catalysts
Suggestions are welcome.

EDIT: And I'd also like to add images.
Ivan Fomichev

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Twitter bot

Post by Scorbie » April 17th, 2015, 11:15 pm

Followed @conwaylife but it seems that it tweets new still lifes quite often. Maybe tweeting still lifes less (perhaps still lifes with a new bit count or an eater2 varient etc.) won't hurt?

Edit: Help!! @conwaylife tweets every 15 minutes reporting all new still lifes that I'm not too interested in...

I think tweeting results in other rules should be careful at new oscs and still lifes, because think what will happen when somebody runs longlife. Argh!!
I think moving patterns are okay, as they seem to have less different patterns than oscs.

One more thing. I think it should include whose soup found the pattern (for credit)

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 18th, 2015, 2:11 am

Honestly, I didn't expect there would be so many new still lifes. I will implement the logic to distinguish "interesting" still lifes later (such as eater2 variants), and for now it will only report new still lifes with 30 cells or more.

Any proposals for what still lifes could be also "interesting"?

EDIT: Regarding authorship, I wish there were a way to find it out, but I haven't found one.
Ivan Fomichev

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Twitter bot

Post by Scorbie » April 18th, 2015, 2:16 am

codeholic wrote:Honestly, I didn't expect there would be so many new still lifes.
Neither did I. I think it's thanks to biggiemac with his massive computing power.
codeholic wrote:Any proposals for what still lifes could be also "interesting"?
Hmm. Not so sure...

User avatar
biggiemac
Posts: 515
Joined: September 17th, 2014, 12:21 am
Location: California, USA

Re: Twitter bot

Post by biggiemac » April 18th, 2015, 2:58 am

I was looking at the statistics page and which bit count had the highest number of unique observed natural patterns. I think with 17+ bitters we are still in the (# observed once or twice) << (# with comparable probability to be observed) regime, meaning the number of new discoveries for 17+ bits is essentially independent of the number already seen.
Physics: sophistication from simplicity.

User avatar
calcyman
Moderator
Posts: 2936
Joined: June 1st, 2009, 4:32 pm

Re: Twitter bot

Post by calcyman » April 18th, 2015, 6:16 am

codeholic wrote:I've made a Twitter bot, that tweets new discoveries:
Thank you very much for implementing this!
codeholic wrote:EDIT: And I'd also like to add images.
I don't know the Twitter API very well, but here's a link to an animated twin bees shuttle you might be able to use. It should be fairly self-explanatory how to generalise the following URL to display an arbitrary object in an arbitrary (non-B0) life-like rule:

http://catagolue.appspot.com/pic/xp46_3 ... 23/pic.svg

It's easy to embed into forum posts using the img tag:

Image

(The /pic.svg on the end is optional, just in case you need the extension .svg to convince the software what format is being used, even though Catagolue already uses the image/svg+xml mimetype.)
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 18th, 2015, 10:09 am

Unfortunately Twitter API doesn't support SVG files, at least it claims so, so I have to think of something else.

On a different note, the Twitterbot now retweets messages from whom it follows, that mention it, e. g. https://twitter.com/codemancer/status/5 ... 9521240064
Ivan Fomichev

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Twitter bot

Post by Scorbie » April 19th, 2015, 2:05 am

I think it can tweet gifs, so maybe we just need a script to automatically turn the apgcode to a gif file.
Edit @ calcyman that is cool!!

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Twitter bot

Post by Scorbie » April 19th, 2015, 11:33 am

Great to see the bot recognizing osc rotors!

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 21st, 2015, 1:44 am

Is there a trivial name for this oscillator or one of its variants?

Code: Select all

x = 12, y = 5, rule = B3/S23
2o3b2o3b2o$obobo2bobobo$2bobo2bobo$obobo2bobobo$2o3b2o3b2o!
Those ones opened from both sides are currently classified as 'spark coil variants' by the Twitterbot, the ones opened from only one side as 'test tube baby variants', but I think these ones constitute a class of their own.
Ivan Fomichev

User avatar
Freywa
Posts: 877
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

Re: Twitter bot

Post by Freywa » April 21st, 2015, 2:14 am

codeholic wrote:Is there a trivial name for this oscillator or one of its variants?

Code: Select all

x = 12, y = 5, rule = B3/S23
2o3b2o3b2o$obobo2bobobo$2bobo2bobo$obobo2bobobo$2o3b2o3b2o!
Those ones opened from both sides are currently classified as 'spark coil variants' by the Twitterbot, the ones opened from only one side as 'test tube baby variants', but I think these ones constitute a class of their own.
Note that the middle part evolves like a hybrid of a phi spark (same "inner" stator) and scrubber (same "outer" stator). Therefore I propose the name phi scrubber for this.
Princess of Science, Parcly Taxel

Code: Select all

x = 31, y = 5, rule = B2-a/S12
3bo23bo$2obo4bo13bo4bob2o$3bo4bo13bo4bo$2bo4bobo11bobo4bo$2bo25bo!

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 21st, 2015, 3:58 pm

gameoflifeboy wrote:Cool! Is it going to tweet anything else besides b3s23/C1 discoveries? Like maybe some statistics once in a while, or discoveries in other symmetries?
From now on the Twitterbot will report new high-period oscillators (with period greater than 3), spaceships, growing patterns and miscellania ('ov_*', 'zz_*', 'PATHOLOGICAL') found in symmetric soups.

I hope it works :roll:
Ivan Fomichev

User avatar
gameoflifeboy
Posts: 474
Joined: January 15th, 2015, 2:08 am

Re: Twitter bot

Post by gameoflifeboy » April 21st, 2015, 6:52 pm

codeholic wrote:Is there a trivial name for this oscillator or one of its variants?

Code: Select all

x = 12, y = 5, rule = B3/S23
2o3b2o3b2o$obobo2bobobo$2bobo2bobo$obobo2bobobo$2o3b2o3b2o!
Those ones opened from both sides are currently classified as 'spark coil variants' by the Twitterbot, the ones opened from only one side as 'test tube baby variants', but I think these ones constitute a class of their own.
First of all: the smallest stabilization is this:

Code: Select all

x = 10, y = 5, rule = B3/S23
2o2b2o$o2bo2bob2o$bobo2bobo$2obo2bo2bo$4b2o2b2o!
Or this:

Code: Select all

x = 10, y = 5, rule = B3/S23
2o2b2o2b2o$o2bo2bo2bo$bobo2bobo$2obo2bob2o$4b2o!
I don't know why so many people like stabilizing length-3 induction coils with houses, because they can almost always be stabilized by something smaller (usually snakes).
Second of all: Since the smallest casing for the oscillator involves snakes, and the bushing looks like an O, I propose the name SOS.
Third of all, as mentioned elsewhere, this is the smallest billiard table configuration. I think that it is notable enough for a LifeWiki article.

User avatar
dvgrn
Moderator
Posts: 10669
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Twitter bot

Post by dvgrn » April 21st, 2015, 10:34 pm

codeholic wrote:Is there a trivial name for this oscillator or one of its variants? ... Those ones opened from both sides are currently classified as 'spark coil variants' by the Twitterbot, the ones opened from only one side as 'test tube baby variants', but I think these ones constitute a class of their own.
Looks like the name previously applied to these was always just "test tube baby", whether the tube was open or closed: test tube baby between cis snakes (30 gliders), test tube baby between trans snakes (30), and the bigger but easier to build variant test tube baby between houses (9 gliders) all have glider syntheses under those names in Mark Niemiec's database. Also between snake and house (11 gliders) / house and skewed house (8 gliders) / cis skewed houses (8 gliders) / trans skewed houses (8 gliders). Variants between bookends or skewed bookends don't seem to be available, though. Any likely targets for improvement based on recent soup search results?

EDIT: Spoke too soon. Test tube baby between up bookends (13 gliders) seems to be the only bookend variant available -- none of the offset-by-two-cells skewed kinds. I had trouble finding this one with an image search for some reason, but it's working fine now... Eventually I located it with a "Simple" search type on the regular search page, using the string "Test tube baby*".

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 22nd, 2015, 1:33 am

Okay, then let them be test tube baby variants.
Ivan Fomichev

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Twitter bot

Post by simsim314 » April 22nd, 2015, 5:11 pm

This is great! Now we can get the news automatically without searching the census all the time.

This is and the census-tools repository are great.

Now the next logical step is to combine bellman search results with the census. I admit my interest currently lie at CatForce improvements, but this would be next great step for bellman automation search.

User avatar
calcyman
Moderator
Posts: 2936
Joined: June 1st, 2009, 4:32 pm

Re: Twitter bot

Post by calcyman » April 22nd, 2015, 10:43 pm

Erm... calling /textcensus/b3s23/* for all symmetry types every 15 minutes is quite costly (22 cents for yesterday due to the number of instance-hours!):

Image

Image

Would it be possible to ddos the non-C1 censuses less often? Thanks!
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 23rd, 2015, 1:19 am

Oops, sorry. I'll reduce reporting symmetric soups to every 2 hours. Let me know, if it's still too much.
Ivan Fomichev

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 23rd, 2015, 4:03 am

simsim314 wrote:Now the next logical step is to combine bellman search results with the census.
It has been in my plans from the very beginning. When I'm in about right mood, I'll write a Golly script that will take a selected region in a pattern produced by BellmanReport.py and will try to match it against the census. (@calcyman: Don't worry, I'll build in some caching ;))
Ivan Fomichev

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 23rd, 2015, 4:21 pm

The Twitterbot reported the last fox it considered "rare": https://twitter.com/conwaylife/status/5 ... 7640038400
Ivan Fomichev

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Twitter bot

Post by codeholic » April 26th, 2015, 9:26 am

From now on the twitterbot uploads images. Animated GIFs look awful, because Twitter resizes and converts them to video, so I just made normal images.
Ivan Fomichev

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Twitter bot

Post by Scorbie » April 26th, 2015, 9:31 am

codeholic wrote:From now on the twitterbot uploads images. Animated GIFs look awful, because Twitter resizes and converts them to video, so I just made normal images.
Yay!!! Thanks a lot for the implementation!!!

User avatar
dvgrn
Moderator
Posts: 10669
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Twitter bot

Post by dvgrn » May 3rd, 2015, 9:09 pm

The zz_LINEAR reports could use a little more detail, if that's possible, along with similar catchall pages (oversized, pathological, etc.)

At the moment, a link like the one that the Twitterbot sent out this evening will just take you to the generic zz_LINEAR page, which doesn't link to a unique object. There are almost fifty different linear-growth objects collected there already, in various different symmetries, and it takes quite a bit of work to figure out which link is the new one...!

If the Twitterbot could just mention in which symmetry the discovery was made, I think it would work just to click on the first link for that symmetry -- right? Or is it the last link? Anyway, it might possibly make more sense for the link to go directly to the hashsoup page, in these cases.

Post Reply