I'll add my support to many of the ideas posted here. I've played 1 game on normal and one game on Challenging and won both games rather easily (although the AI was 'smarter' on Challenging).
Things I noticed:
1. The AI did respond to my ship building by modding their ships. I noticed on my Challenging game at first the AI was using beam weapons without any defense and by the mid part of the war they had changed and were making ships with rail guns and shields. However, it did not tend to group their ships very smartly. I often found one better ship with a number of inferior ships in their fleets. Since I was the attacker 98% of the time, I usually took out their most powerful ship in the first salvo. Had they grouped their ships better, they would have stood a better chance.
2. The AI doesn't research speed technologies enough. My fleets were moving 7pc/wk from the start of the war, the AI flleets never got beyond 2 pc/wk. It was easy to dictate the point of the battle. The very few times that the AI attacked first, they would almost always take 3 of my 4 medium ships out - still losing all 6 of theirs. In the cases I attacked first, most of the time I lost no ships but had 1 badly damaged. Obviously attacking first is a strong advantage. IMO this is a bit too strong of an advantage. Is it possible to consider alternating ship attacks? The attacker's strongest ship still goes first, but the defenders strongest ship fires next? This would immediately make the AI much tougher IMO.
3. The AI still doesn't have a clue to how much a tech trade costs. I'm constantly getting the AI asking to trade something like 'Mass Driver Theory' for 'Enhanced Miniturization' as if they were equal. If that's the way the AI makes trades between themselves, it's no wonder the AI has a tech trading problem. IMO, if you attached a research cost to each tech and programmed the AI to only trade if the research costs (or reseach cost plus credits) is equal, it would slow down some of the AI tech trading. Another idea would be to impose a 5 turn wait between acquiring a tech via trade and the ability to re-trade that tech to another AI. The AI needs to be smarter about Tech trades too. For example, if it sees that I have speed technologies and I'm trying to trade Planetary Improvements to it - the AI should mention 'Hey. I know Planetary Improvements is nice, but I'm not interested in getting anything else until Warp speed technology is on the table!'. This would force the player (and other AI's ) to perhaps deal techs that they would rather keep if they wanted to trade other technologies to the AI players.
4. The AI needs to protect Transports/Freighters/Constructors better during war. I constantly destroyed constructors that were sent out right through the middle of my fleets unescorted. Transports have already been mentioned.
5. As has been mentioned, the AI still makes poor decisions in many cases about what it builds on a planet. It's clear to me that perhaps it's not deciding what purpose the planet will serve once it acquires it. On some planets I've captured, the AI has 5-7 embassies, other planets have 3-4 entertaiment complexes. It doesn't always do a good job of taking advantage of square bonuses as has been mentioned. Also, I do still find planets (especially the minors) that have 4-5 farms built.
6. Minors need to protect their planets better. In many cases they have enough technology to build decent defensive ships, but I always seem to find that their planets have maybe only 1-2 ships in orbit along with 3-4 frieghters. Minors should be restricted to building starports within the 8 adjacent space squares. I constantly find minors that build starports half-way around the galaxy.
7. The AI doesn't seem to fleet their transports. It also doesn't seem to build them until they are needed. What seems to happen is that AI decides it needs a troop transport, builds one and sends it out to it's destination unescorted. At least on Challenging, it should build a fleet of transports in a controlled area, fleet them up and protect them.
8. At least in the games I've played so far, the AI seems to be reluctant to press it's advantage over weaker Civs. In the last game I played the Drengin had the Alterians down to it's home system for most of the game. They were at war 2-3 times and the Drengin never finished off the Alterians. While I'm not sure why, the Alterians didn't seem to have any better ships (and far less of them) than the Drengin.
9. Final thought, does the AI do an agressive enough job of trying to form Alliances? So far in the games I've played, I've never seen the AI make an Alliance with another civization. In fact, in my last challenging game, the Knox (whom I was at war with) were very friendly with the Drengin and had they in fact Allied - it would have caused me a ton of trouble as my home territory was pretty much empty as all my attack ships were half way across the galaxy fighting the Knox. I've also never be offered an alliance by a AI civilization. Even the Alterians, of which I had a close relationship and were at war with the Drengin never called an offered one (I know I would have if the situations were reversed). Might be another thing to look at (perhaps alliances between the AI only comes on Intelligent level - but if that's the case maybe you should look at implimenting it on Chanllenging IF the AI civilization is at war and is losing badly).
My 2 cents.