As the first ever book on SOMA, this book is geared towards graduate students, academics and researchers, who are looking for a good optimization algorithm for their applications. This book presents the methodology of SOMA, covering both the real and discrete domains, and its various implementations in different research areas. The easy-to-follow and implement methodology used in the book will make it easier for a reader to implement, modify and utilize SOMA.