A lot of what has been said has sense.
I perfectly agree with Shadowblack walkthru except I had 1 more point :
1. reaching Copper foundry the straighest way
2. reaching last free culture the straighest way (because their upgrades are freeing rooms for upgrading other buildings)
3. searching the rest...
In my calculations about which level to raise mines, I build "normalised" tables to have for each level of the two types of mine/foundry a production per day and then I build a long table with a row per day, containing the level of all my mines, foundries and portal, the amount of goods produced and upgrading the building as soon as they had goods for.
Then I add a row per day until all the goods were produced (building + researches)
The first conclusion was that because of the amount of each good needed, the best ratio (with same level) was 2 granite for 1 copper and because I had the room for I started checking what would be best levels with 1 portal + 10 granite + 5 copper...
The shortest time was with all buildings at level 4, any other lower level for any building was causing time to increase... Why ? Because upgrading the buildings is really short compare to the time needed to produce the goods for the researches... (733,700 granite + 13,980 copper when I did it)
The numbers I found were, for all hosts building at same level, 1P + 10G + 5C :
level 1 = 172D
level 2 = 104D
level 3 = 69D
level 4 = 63D
Of course, upgrading to level 4 only shorten the time by 6 days, that is about 9% of the time... but level 3 is 31% shorter than level 2 !
For the point about the KPs, each one must play it depending on when he started the age : if you start the dwarves age when there is no more age after, you know that you will have to spend your KPs after the research and you will probably spend them in wonders, so, why not upgrading all the hosts' building first, putting your KPs in your wonders ? Of course, if you started the game later and are 3 ages behind, you will prefer not wasting your KPs and start producing some hosts' goods not to be blocked in the research tree...
Hope this will help