If a machine can look at the state of the board for a few games of chess (or a few games of checkers) in the beginning and after each move, can it be programmed to learn the rules of the game?
Certainly not for a few games of chess; you'd need to analyse incredibly large numbers of them to stop it from making invalid moves. How much, I don't know; this problem belongs to the area of computational learning theory, PAC learning and the problem of learnability in the limit.
The classification algorithms suggested by the other posters might be able to discriminatively learn chess rules: given two board setups, they might answer "yes" or "no" to the question of whether a valid move transforms one into the other. With some effort, they might also be used to generate moves. They will then, however, either only generate moves they've seen in games they've been trained on, or generate a combination of valid and invalid moves, each with a score stating how probable they consider the move in question, with invalid rules hopefully getting very small probabilities.
(I.e., either the program would not recognize some valid moves at its disposal; or you might be able to cheat without it noticing; or you'd have to train it for so long that you lose all interest in the game.)
For techniques that can learn rules, check out inductive logic programming and genetic programming. I'm not sure if anyone has ever tried to apply them to chess learning; since the rules of chess are fixed, it's much more interesting (even for academia) to build good chess playing programs rather than ones that have to learn the basic rules from scratch.
Monte-Carlo methods may work for you. In a nutshell: define the boundaries of the results you are looking for, for example energy consumption(derived from measured system parameters) within a range, and run a simulation where the free variables are allowed to vary to simulate a physical system. The sets that fall within the solution space will define the acceptable input ranges.
If your search space is manageable (depends on your system constraints), then you can fit curves to these parameters.
Alternately, you can use a minmax approach if you can define your search space in a way suitable for local minimization.
Best Answer
Machine learning is a whole field in Computer Science, which is quite different from Artificial Intelligence.
Stanford provides a free online class for machine learning which will get you started.
You need to understand that machine learning alone will most probably not be sufficient to create good trading strategies; you need to understand well how the markets work and most systematic strategies require large enough capital to minimize the transaction costs (otherwise the strategy is not profitable, see implementation shortfall).
To be able to understand and apply machine learning, you'll also need a good mathematical background (the better it is, the deeper you can go with the algorithms). I would recommend Information Theory, Inference and Learning Algorithms (MacKay) as a reference book for the field.