We propose an improvement-heuristic approach for the general flow-shop problem (n/m/Cmax) based on the idea of adaptive learning. The approach employs a one-pass heuristic to give a good starting solution in the search space and uses a weight parameter to perturb the data of the original problem to obtain improved solutions. The weights are then adjusted employing a learning strategy which involves reinforcement and backtracking. The learning is similar to that in neural networks. The random perturbation allows a non-deterministic local search. We apply the improvement-heuristic approach in conjunction with three well-known heuristics in the literature, namely, Palmer's Slope Index, CDS and NEH. We test our approach on several benchmark problem sets including Taillard's, Carlier's, Heller's and Reeves'. We compare our results to the best-known upper-bound solutions and find that for many problems we match the best-known upper bound. For one problem we discover a new upper bound.