loading twitter...

April 2007

Menulets

I’ll echo some great OS X apps that run as little icons in the menu bar:

  • FuzzyClock, which renders the time as a “fuzzy” string, like “quarter after seven” or “nearly eight”. My only wish is that it would also show the date, like “monday, april thirtieth.” Too bad it’s closed source (but, at least he isn’t trying to charge $9.99 for it, which a lot of Mac “developers” like to do).
  • Spirited Away. This app will automatically hide applications that are in the background, and haven’t been used in a while.

(Both of these via the magic of Merlin)

Edit: I hacked together a date menulet, which has no preferences panel yet, but does what I want.

monday, april thirtieth  quarter after eight

Uncategorized

Comments (1)

Permalink

Pursuing Solution Distance

I’m taking a course on artificial intelligence this quarter, and a big part of this course is the project we all have to do. My project is to take the 8-puzzle — a sliding puzzle where you have to slide 8 numbered tiles around on a 3 by 3 board, to try and reach the goal state — and to come up with a simple expression about a board state that will accurately predict what move to make next. This is an exciting project, because if there is a concise way to compute what move is best given a board state, without backtracking, then that is a huge result in computer science. Also, the 8-puzzle turns out to be small enough (there are only 181,440 solvable puzzle states possible) so that looking at all possible board states at once is tractable on a modern computer.

My approach so far has been to try and write simple arithmetical expressions that predict the “solution distance” of a puzzle state. The solution distance is the number of moves away a state is from the goal state in an optimal solution. I’m using this because one, it’s very simple to write an algorithm that solves the 8-puzzle optimally if you can compute this, and two, because it is a number, and we can compare numbers.

So far I have written a program that can compare an expression of various metrics about the board that we can compute, against the solution distance, and can report how accurate that expression is in predicting the solution distance. We can then try all kinds of combinations of different metrics, and (maybe) inch our way towards a general solution.

And finally, here is a chart (made with our dear JFreeChart) that plots a few different metrics alone (that is, no combinations of metrics yet) in how accurate they are. The “error” is a constant you need to add to make that metric match, and the count is the number of states that metric matched. The most accurate metric I’ve tried so far can only predict the solution distance 25% of the time, and it does even this twice!

Chart

Uncategorized

Comments (0)

Permalink

28

I had lunch with my family today, got some neat gifts, and we wandered around Santa Cruz (as much as the cold weather permitted).

“Only two more left” is today’s motto.

Continue Reading »

Uncategorized

Comments (4)

Permalink

Tangly

The map of the blogosphere is pretty neat. I tried something similar, in a constantly-updated fashion, quite a while ago.

The applet I wrote was a fun experiment. It was one of the first Java programs of any size I had written, and it gathered a moderate amount of attention in its time (that may have been my 15 minutes on teh intertubes, so I might just be over with it now).

Uncategorized

Comments (0)

Permalink

In (techno-) Lust again

I’ve only had a Kensington Expert Mouse for a handful of hours, but I already like it very much. I used to use a Logitech TrackMan Marble, and I avoided trackballs because of the lack of a scroll wheel, which I use often. The Expert Mouse has the obvious, essential feature of a trackball: a ring around the trackball, which you can turn to get a scroll wheel.

Also, the extra buttons can be re-mapped, on a per application basis, to different functions. So far, top-left is “alt-right” (e.g., back) in Firefox, but is “stop/play” (space) in iTunes. This is cool.

Also: Po-te-weet? :-(

Uncategorized

Comments (0)

Permalink