The family of codeword stabilized codes encompasses the stabilizer (additive) codes as well as many of the best known nonadditive codes. However, constructing optimal n-qubit codeword stabilizer codes with distance d [that is, ((n, K, d)) codes with maximum K] is made difficult by two main factors. The first of these is the exponential growth with n of the number of graphs on which a code can be based. The second is the NP-hardness of the maximum clique search required to construct a code from a given graph. We address the second of these issues through the use of a heuristic clique finding algorithm. This approach has allowed us to find ((9, 97 ≤ K ≤ 100, 2)) and ((11, 387 ≤ K ≤ 416, 2)) codes, which are larger than any previously known codes. To address the exponential growth of the search space, we demonstrate that graphs that give large codes typically yield clique graphs of high order (that is, clique graphs with a large number of nodes). This clique graph order can be determined relatively efficiently, and we demonstrate that n-node graphs yielding large clique graphs can be found using a genetic algorithm. This algorithm uses a novel spectral bisection based crossover operation that we demonstrate to be superior to more standard single-point, two-point, and uniform crossover operations. Using this genetic algorithm approach, we have found ((13, 18, 4)) and ((13, 20, 4)) codes that are larger than any previously known code. We also consider codes for the amplitude damping channel. We demonstrate that for n ≤ 9, optimal codeword stabilized codes correcting a single amplitude damping error can be found by considering only standard form codes that detect a heuristically chosen equivalent error set. By combining this error set selection with the genetic algorithm approach, we have found ((11, 68)) and ((11, 80)) codes capable of correcting a single amplitude damping error. We have also used this approach to find