When playing a computer opponent what situations should I create to give myself a better chance of winning? Normally when I play against a computer I try to avoid any positions where I feel the knowledge-base of the computer would give it an advantage. For example I find computers very strong in typical protracted opening sequences and in endgames.

I seem to fare best against strong computer opponents when I play more positional, "by the gut" chess than when I attempt to apply a more strategic and tactical game plan.

I am wondering if this is something other people have experienced; if there is a practical basis for this belief and what type of chess situations have proved fruitful for them when playing against a digital opponent.
Interesting question, but it's a little bit hard to answer generally.  Any engine has its own quirks, but I'll try to give a few general hints and things to consider.

First, any modern engine on sufficiently fast hardware is going to wipe you off the board.  Even top GM's lose to engines with odds. 1  However, most engines have the hardest time in closed positions where long-term strategy is more important than tactics on any given move.  Games that are very closed (think classical KID lines) are won or lost based on chess understanding, and engines still don't truly understand chess.

One very interesting thing, however, is that some engines actually are vulnerable in extremely tactical games.  Most notably, engines are not always as good as humans when one side has a large attack.  Engines are notoriously bad at overestimating defensive resources and going into a line that is losing for the defender.  However, there is absolutely no margin for error in this case since a single misstep means the loss of the game.  This method (i.e. attacking the computer's king), is a very easy way to win against slightly weaker engines - for example the ones built into Windows and Macs (also the chess games on international flights, but those are really awful...).

To finish, probably the only way to have good chances against a strong machine are to memorize the moves ahead of time.  This might sound fantastic, but it's already been done.  The point is that the engine will spit out the exact same moves every game (under identical conditions), so it's possible to find a hole in the engine's repertoire and steer the game into this gap.  


1. Rybka has played many odds matches - most notably against IM Meyer, GM Ehlvest, and GM Milov (who actually won the match!).