This paper describes GamOpt, a tool for visualization and optimization of color gamuts. In GamOpt, a gamut may be viewed on a computer display, manipulated interactively, or optimized based on constraints. A gamut may be visualized for geometric and color intuition. Gamut points specified in L*a*b* color space may be plotted in projected 3-space. The display may be interactively manipulated to obtain insight about distribution patterns. The gamut may also be color coded in a variety of ways. Multiple gamuts may be visualized at the same time using color or geometrical cues to differentiate them. Two optimization schemes are provided, interactive and analytical. In interactive optimization, a gamut may be modified either interactively or by arbitrary user-defined functions, changing the shape and orientation of the gamut. The analytic optimization approach is based on defining numerical metrics for the goodness of gamuts. The gamut is transformed analytically to optimize these metrics. Using algebraic and neural techniques, we have implemented algorithms to estimate the transfer function between input parameters such as pigment concentrations and the L*a*b* coordinates they generate in a palette. We can then generate the values of the input parameters required to produce an optimized gamut.