Learning Alarm: Intro

Nowadays when I look at everyday objects, I think to myself, “If (insert object here) could learn, how would it change the way I interact with it?” One of the objects I kept thinking about and coming back to was the alarm clock. Since the inception of alarm clocks, going all the way back to mechanical ones with gears, hammers and bells, their core behavior hasn’t changed. A person sets a specific time, and when the clock reaches that time, it makes a loud ringing/banging/beeping sound to get their attention. Simple and effective. Or is it?

How many times do we have to get up at 7:00 am only to hit the snooze button too many times and miss our (insert important event here). Or the alarm sound we picked in our new phone isn’t loud enough. Or we get used to the sound our clock makes and continue to sleep through the alarm as it proceeds to wake up and annoy the rest of the house. Alarm clock apps have tried solving these age old problems by making you answer math questions or walk to the bathroom and jump up and down ten times while reciting the Slovakian national anthem. I find these solutions to be unnatural and quite a jarring way to wake up in the morning.

Contrast these with the way a mother might wake her little (insert child’s name here). After years of trial and error she knows that he (or she) likes to be patted gently for 5 minutes and then hear the Helsinki Philharmonic Orchestra before waking up. What if our alarm clocks could also learn the best way to wake us up? Using reinforcement learning, I believe they can.

Aside from making an adaptive alarm, this project will also give me the chance to test how reinforcement learning behaves in the real world. Unlike computer simulations, you can’t go through hundreds and thousands of iterations in a few hours or even a few days. The sample space is much smaller and there are a lot more variables in the environment. I want to test how long it will take the clock to find meaningful patterns and if there are any ways to augment the learning experience. Perhaps directly asking the users questions about their interaction or rating how effective each experience is explicitly might improve the reinforcement learning process. I am looking forward to creating a product where I don’t design a set user interaction but rather have the product optimize the interaction by itself. Stay tuned.

Leave a Reply

Your email address will not be published.

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.