A methodology for designing membership functions for fuzzy controllers has been developed and demonstrated with application to feedwater heater level control. This method, namely simulated annealing, assumes that the rule base is determined by an expert who is knowledgeable about the process to be controlled. Although this method is applicable to any type of fuzzy controller, max-min center-average fuzzy controllers with triangular and trapezoidal membership functions were used due to the ease of implementation of this combination. This method essentially performs a random search for the parameters of the membership functions that yield the minimum squared error between the plant outputs and their setpoints for a given test signal as a disturbance. A major dimensionality reduction is accomplished through the identification of some requirements on membership functions. A significant improvement is made in handling membership function constraints that allows the use of every generated solution in the search process. The proposed methodology was applied to the control of cascade-arranged feedwater heaters that are currently controlled by individual pneumatic proportional-only controllers. An optimal fuzzy control system was developed for controlling the levels in this system for a typical load-following transient. The optimal fuzzy controller was found to improve rise time and settling time and to decrease the overshoot in the desired level.