Optimization problems that arise in energy systems design often have several features that hinder the use of many optimization techniques. These optimization problems have non-continuous mixed variable definition domains, are heavily constrained, are multimodal (i.e. have many local optima) and, foremost, the functions used to define the engineering optimization problem are often computationally intensive. Three methods are tested here: (a) a Struggle Genetic Algorithm (StrGA), (b) a Particle Swarm Optimization Algorithm (PSOA), and (c) a Particle Swarm Optimization Algorithm with Struggle Selection (PSOStr). The last is a hybrid of the evolutionary StrGA and the socially inspired PSOA. They are tested in four purely mathematical and three energy systems thermoeconomic optimization problems. All of the methods solved successfully all the problems. The PSOStr, however, outperformed the other methods in terms of both solution accuracy and computational cost (i.e. function evaluations).