From a technical standpoint, what is causing the lag? We know the Xbox360 and PC lack this lag issue (I am hoping this is true), so it has something to do with the PS3. The PS3 has split memory between GPU and CPU, so perhaps it is a simple caching problem... The main memory accessed by the CPU can only hold half the info 256MB and must be cached back into harddrive. The Xbox has 512MB, so most of the items can fit inside this memory. But the Xbox also uses the main memory for GPU graphics, so it may use less resources for GPU usage and more for CPU storage (maybe that is why the Xbox has worse graphics because less is dedicated to graphics, and more towards holding in-game item information). the PS3, because it forces a split of memory between 256 in GPU and 256 for CPU, a whole 256 is dedicated to graphics (gpu), and 256 in main memory holds the in-game items (and caching to Harddrive). Perhaps the game (in order not to lag) requires 300MB for main memory and 212 for graphics (as an example), so on xbox it is split like that, while on PS3, it is split 256 for main memory and 256 for graphics (gpu), and caching results because 256 is less than 300. If this IS the problem, how can they fix it? One would be to use an SPE to do main memory compression and hope the decompression is less time intensive than harddrive access. Another is to use table lookup indexes so they can shrink the main memory dataset size (remove duplicates resident in memory). Personally, I think this problem may have something to do with the graphics as well. When you go from one area to another, you may need to use texture data to represent different stuff in environment. The engine will cache the textures for the current environment, and as you move to different places, old textures will not be needed and can be flushed from the memory. HOWEVER, the engine has trouble figuring what is not needed anymore, so as you play longer and longer, some textures the engine thinks it needs are still in memory (when it should be removed) and when too many textures are in memory, some needs to be loaded constantly from harddrive because of bad frequently used texture algorithm. The framerate issue happens because it is trying to get at data off of the harddrive (or decompressing to get at it?)
The last thing that comes to mind is a small memory leak (I actually bet on this). A small leaked pointer to memory never gets cleaned up, and it grows and grows. The slowdown happens when the memory gets so big, it starts interfering with size needed to hold in-game stuff or textures. This is why when you restart the game, the slowdown disappears (the leak needs to grow, and it takes time to grow). Then the harddrive stuff starts happening (thrashing). All they need is to get better programmers and remove the offending memory leak.
The architecture of the memory of the PS3 is described here:
http://www.edepot.com/playstation3.html