krasse
Level 1
|
 |
« Reply #20 on: December 14, 2012, 12:26:48 AM » |
|
hahah. no.
my experience is in AI design. so right now I'm working on what you could call a core "ai engine" that will power a lot of proc-gen features. music is just one of them. it will be a while before I can share something like that.
but thanks for asking. I have sketched out many of the issues I'll have to face when it comes to music. there are still many hurdles to cross. relative to my AI (proc-gen) experience my composition experience is more limited. but if you have any critical barriers you're facing I can comment on them.
Oh! We have even more things in common. I have been a phd student specializing in AI  . I learned all that constraint planning stuff during that period. My next large project is an AI engine as well that uses "dynamic abstraction", but I have to finish this crazy project first 
|
|
|
Logged
|
|
|
|
Graham-
|
 |
« Reply #21 on: December 14, 2012, 12:36:44 AM » |
|
Interesting.
I don't know what you mean by "constraint planning."
fyi, my current application is poker. I expect my ai, when finished, to play at pro level. if you know anything about poker hopefully you can see how such an ai is ripe for music-gen.
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #22 on: December 14, 2012, 12:57:50 AM » |
|
I don't know what you mean by "constraint planning."
fyi, my current application is poker. I expect my ai, when finished, to play at pro level. if you know anything about poker hopefully you can see how such an ai is ripe for music-gen.
What I mean with constraint planning: You define the search/optimization problem partially or completely with constraints (CSP, constraint satisfaction problem). Poker bots are very interesting! But doesn't current poker bots use specialized search algorithms and "belief states"/probability distribution simplifications/propagations etc.? I can't see why a poker AI automatically can compose music as well.
|
|
|
Logged
|
|
|
|
Chris Koźmik
|
 |
« Reply #23 on: December 14, 2012, 01:02:55 AM » |
|
Awesome. Completely unlike other music generators, this outputs something that actually sounds like a music  You say it's JS, so maybe just zip the HTML file with JS and put it on download (saves you a trouble of setting up a server)? You know, good today is far better than perfect tomorrow.
|
|
|
Logged
|
|
|
|
Graham-
|
 |
« Reply #24 on: December 14, 2012, 01:11:25 AM » |
|
Yeah, standard poker bots do that. That's why they suck. The best no-limit bots can play low limits at best, and only with small win margins.
Mine develops intuition based on experience. So it has a concept of... something like "looseness," and 15 variations of it, that it tweaks on its own, that it determines as relevant in each kind of scenario.
Music composition (generation) is about assigning abstract concepts to the various properties of a piece, or bar, or whatever, then learning/defining rules that state how each concept can relate to another under what conditions. A high level poker AI has to think the same way. Probability crap has no hope of being high-level, ever.
Player A is normally tight, raised big for him, then showed weakness on my c-bet. The music was hot then cool, and reminds me of a Spanish winter. It would go well with....
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #25 on: December 14, 2012, 02:03:52 AM » |
|
Awesome. Completely unlike other music generators, this outputs something that actually sounds like a music  You say it's JS, so maybe just zip the HTML file with JS and put it on download (saves you a trouble of setting up a server)? You know, good today is far better than perfect tomorrow. Thanks! The client and server is basically done already with login, saving songs, render mp3s and all that. What is left to do is to add some input checking and moving everything to a real server. I have some feature creep issues though... 
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #26 on: December 14, 2012, 02:13:00 AM » |
|
Music composition (generation) is about assigning abstract concepts to the various properties of a piece, or bar, or whatever, then learning/defining rules that state how each concept can relate to another under what conditions. A high level poker AI has to think the same way. Probability crap has no hope of being high-level, ever.
Probability is still very useful though  , but you are right, it scales poorly when you want to do something more fancy like first/higher order logic-like stuff for high level reasoning. My approach for solving this during my AI-time was to dynamically generate problem/reasoning instances depending on the current context. The problems/reasoning could then be solved/performed with low level techniques such as MDPs, POMDPs, state estimation, .... The high level reasoning was performed during the problem generation and in the knowledge representation.
|
|
|
Logged
|
|
|
|
Graham-
|
 |
« Reply #27 on: December 14, 2012, 02:25:34 AM » |
|
Well ultimately everything mine does is a probability at some point. It is just a stack of probabilities. It still runs on a computer.
So you could say mine is similar. It dynamically generates reasoning that is context sensitive. It also generates its definition of what a context is.
--
not to steal from music discuss
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #28 on: December 18, 2012, 02:41:35 PM » |
|
Update 3So tired now after Ludum  I used the editor during the Jam to produce the music for menu, game, success and fail. The result was not so great, but I blame it on me being to tired  Next step of the plan is to make it public! Link to the game
|
|
|
Logged
|
|
|
|
wccrawford
|
 |
« Reply #29 on: December 19, 2012, 04:33:44 AM » |
|
Oh wow, I was totally looking for something like this for LD25, too. I found 1 but decided I didn't have enough idea how to use it to spend the time. If you release this before LD26, I'd love to use it!
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #30 on: January 15, 2013, 04:02:25 AM » |
|
Getting a lot closer to a test run of the system. I am almost done with the server stuff and I have also added custom harmonic rythms where you can go crazy with scales and modes Kind of intense/boss song
|
|
|
Logged
|
|
|
|
K1lo
|
 |
« Reply #31 on: January 15, 2013, 04:55:18 AM » |
|
Wow this is great! I can't wait to try it when it's available... that and I need music for my project 
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #32 on: January 15, 2013, 06:00:01 AM » |
|
Wow this is great! I can't wait to try it when it's available... that and I need music for my project  Great! That is exactly why I'm building this crazy system 
|
|
|
Logged
|
|
|
|
TobiasW
|
 |
« Reply #33 on: January 15, 2013, 06:29:33 AM » |
|
I can hardly wait!
By the way, how flexible is the system? Can it make stuff for target moods or genres, for example horror or stealthy?
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #34 on: January 15, 2013, 06:56:47 AM » |
|
I can hardly wait!
By the way, how flexible is the system? Can it make stuff for target moods or genres, for example horror or stealthy?
The system itself is very flexible but it doesn't have any templates for genres (yet).
|
|
|
Logged
|
|
|
|
Thecoolestnerdguy
Level 2
 
while(!succeed) try();
|
 |
« Reply #35 on: January 15, 2013, 08:03:04 AM » |
|
Wow! Gimym TILBERT is right: you're totally a  . This can be very useful on a LD. Hope it gets to public soon!
|
|
|
Logged
|
 minecraft didnt copyright squares
|
|
|
rosholger
Level 1
|
 |
« Reply #36 on: January 23, 2013, 02:38:04 PM » |
|
I can hardly wait!
By the way, how flexible is the system? Can it make stuff for target moods or genres, for example horror or stealthy?
The system itself is very flexible but it doesn't have any templates for genres (yet). wouldn't the song preferences you talked about earlier mean that atleast the mood of the song would be similar? or am i completely wrong? anyway this sounds amazing!!
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #37 on: January 27, 2013, 10:03:28 AM » |
|
wouldn't the song preferences you talked about earlier mean that atleast the mood of the song would be similar? or am i completely wrong?
anyway this sounds amazing!!
That is correct. You can reuse settings and make simple templates that will produce similar songs. More advanced templates could also try to mimic existing styles.
|
|
|
Logged
|
|
|
|
rosholger
Level 1
|
 |
« Reply #38 on: January 27, 2013, 02:08:42 PM » |
|
That is correct. You can reuse settings and make simple templates that will produce similar songs. More advanced templates could also try to mimic existing styles.
this sounds truly awesome!
|
|
|
Logged
|
|
|
|
krasse
Level 1
|
 |
« Reply #39 on: February 01, 2013, 05:01:16 AM » |
|
Update 4The server is quite ready for testing now. It supports login, rendering songs and all that stuff  I am now looking for a suitable server to install it on. Other stuff: I managed to reduce the compose time to about half, which I am really happy for. The main contributors for this was reuse of results, slower but much faster heuristics during planning and nuking almost all expression evaluations. The time to generate Mp3s and Oggs was also improved a lot by switching renderer and moving everything to a ram drive. Almost a 5x speedup 
|
|
|
Logged
|
|
|
|
|