Hacker News new | ask | show | jobs
by ahewett 3775 days ago
Sure! Happy to explain it. Although I have to say I'm not sure what textbooks are saying these days. When I talk to programmers right out of college sometimes there's a bit of confusion as they talk about patterns I know, but using different names. I grew up programming on an 8088. :)

In a podcast called College Info Geek and recently in I did a talk at Northwestern (The Garage) and I called what I'm doing "Emergent" because there are many competing little pieces. Let's see if I can explain it quickly here, though please don't be too hard on me I'm trying my best to answer a lot of questions, but I'm really happy to go more into later after all this dies down :) Conceptually, you could think of it as first creating what I'll call "song-bot", which acts a kind of overlord, and has some instructions from me (like maybe there's some specific chords I want it to use, keys to avoid, tempo, brainwave protocols, genre, etc, etc). This song-bot guy then spawns a bunch of little other bots that compete with each other for the right to play/fade in/or generally be a part of the final result. These little guys have different characteristics, like a "drum-bot" might has different places it "wants" to be placed, and so generally competes with other drums, but not always. Sometimes I'll even have little "bots" for individual notes of a certain instrument. They obey certain rules of course, to form a background, drum line, or a simple melody, and then they pass that information along to subsequent incarnations (there's some learning involved in that process, though I hesitate to give it any textbook term - man, you have me terrified here of defining something wrong! :) ). Through that learning, the pattern the original little guys made has more weight and will tend to repeat. But again, not always.

After a while, a song... emerges. A kind of "emergent intelligence."

The resulting song can be quite complex and varied. Of course there's more to it, because songs have sections, but all in all the genres I'm using are very structured. Techno especially, is very easy for the AI. Sometimes I'm tasked with creating a theme in a particularly difficult genre, and that's when it gets really tricky/fun (such as some of the Indian ones, which were labors of love). In these cases, I may have to re-rerun many "generations" of the AI through the same song from beginning to end, with different parameters/instruments, but with the same patterns/learning, because what can happen in these cases is that it starts out simple, and increases in complexity as it goes, so the start can sometimes be a bit boring.

Also keep in mind this is just a conceptual explanation. The code is much less amusing. Thinking of naming processes "bots" though just for fun.

I hope I explained it OK. Listen, I'm not saying it's Watson or anything, it's really just a necessary step I had to take in order to make the computer do what I wanted it to do. I tried out some different ideas, and this one worked the best. I like the result at least :)

1 comments

That's fine and makes sense. I wouldn't call it AI though.

The marketing is just too overhyped and in-your-face for my taste. It reminds me of the startup called "The Grid", which claimed they will build a website-creating AI. It's an often misused term in marketing.

Another cool mystery term is precisely "emergent". Okay I'm not trying to be harsh on you, and I know that marketing is all about exaggeration and wooing people into buying your product and having the right keywords so that tech news portals pick up on you and can produce a clickbaitish title etc. Also it may enhance the placebo effect in such soft areas as this.

Anyway, I do like how it actually sounds and it seems to have worked on me somewhat, but I'm not too sure about that or how much of it is placebo.

I didn't make up the term "emergent." AFAIK it's an established type of AI.

http://chetansurpur.com/blog/2013/08/emergent-intelligence.h...

https://en.wikipedia.org/wiki/Emergence#Computer_AI

We're not using that term anywhere in the marketing either.

This is just me talking here man. I'm not a marketer, or even really a good businessman. I did this for 13 years and we're just now taking off. I do music and programming, that's it. :)

But I do think Junaid did a great job on the site. Yeah there's more work to do, always is.

Tough crowd here at HN.

- Adam