My biggest concern with this is resource related. At first glance it doesn't seem like it's terribly resource heavy, but unless there's a purpose to the learning grid, with actual values assigned for each grid location, why not just use a numerical value instead? If there is a knowledge grid with every little bit on the matrix indicating a specific type of knowledge, then all the poking and prodding at the grid, and learning rules, and whatnot are going to add up.
The overall concept of skills & learning and literacy can be maintained with some modification from a matrix to a simple numeric value.
Is there anything critical about the matrix system that I'm not recognizing?
I remember at some earlier post, the 1 problem about pure numerical system, is that if you are a constant doing some low level skill job, it's weird you can become a master by doing that. (It's a constant +k% doing some jobs). But if a skill bit represent that job, your skill will not increase at all. You have to do different jobs to actually advanced in that skill, unless you are specific training, but this idea seems largely forgotten through the threads.
A tiny little advantage is that you don't need a mathematical factor that keep the higher skill learning curve drop down. It's a inherent features built into the system, since our brain are working in a similar way. (actually its the connections between neuron are storing between synaptic, but you can say they are like matrix in a way).
Another one is it make skill crossing/overlapping easy to implement, some skills are inherent related, you expect some dwarf to be a good dodge, to be a good fighter skill as well, or like the previous post, literacy/booking skills are basic of all literacy related skill, if someone can read a lot of book, he should know something about everything. Also, dwarfs can also write down what the know (or told a scribe to write it down for him, and you may have your own library of knowledge, and make book is power really true, and probably some adventure quests to find some ancient lost library/knowledge of alchemy something)
The third one is that you can make skill sharing easy. Its just exchanging skill bit location, it hard to determine 2 dwarf how much they have do the same thing or not, and makes two dwarf who done different jobs sharing with each other their knowledge, a lot easier to implement and imagine.
Also, it makes implement books easier, instead of making each book an index, and a lot of random unrelated topics, it makes the book's contain actually means something - what skill bit it contains. Instead of implementing a lot of different level of skill books, you just assigned an array to it. The more knowledge/pages in a book (more skill bit), the better the skill book really is (and also makes compost book titles, and contain index very easy, just say what they actually has in it). And a dwarf watching the same book over and over won't make him smarter. You need to buy new one.
More to it, it also makes the matrix a true physical representation of a dwarf brain. It can be hurt, like a normal brain, (Like you can imagine certain area is temporary damaged or permanently). And makes sleeping/idling, actually has their purposes, not just to show. Even the eye of the dwarf has its functional, its an OR function to map book bits into brain bits. Possibly some physical skill related bits are actually the neurons and nerve representing of certain part of the body, like in archery there must be some related to the fingers and arms, and some damages of that area, will affect they skill, in a nature way. (Like you hands flesh are ok, but nerve damages may causing drop of performance unless you are recovered, but not impair your ability within the knowledge domain, so you can skill be a teacher, or coach, teaching advance skill by words.)
And about spatial efficiency, I think using numerical system with 100 skills each 1 byte per skill is 800 bits (I think 4 bits are using to record the current 16 level of skill, and rear 4 bits are used to record how far down into next level), and 8192 bitmap, is just a personal preference. At first, the suggester is considering just 1024 bits per matrix, which is actually the same range as the numerical one. And it still possess the same property as above. But better in many aspect, just some extra running time. (With the sleep learning + cache method, it will be almost hardly notice, since most calculating is done during dwarf sleep, and when waking up, -2 or -3 fps when there are massive dwarfs sleeping, IF they learn anything new in the day).
I believe there are many aspects I forgot. However most importantly is that, the current numerical skill method does work (in a way), as many are playing DF now. But this system will make it more realistic, as will as more reasonable, and easy to understand why dwarf do what they do in their tinny little brain. And of course makes it more FUN!!!