Tuberculosis is a major global health problem that has been ranked as the second leading cause of death from an infectious disease worldwide, after the human immunodeficiency virus. Diagnosis based on cultured specimens is the reference standard; however, results take weeks to obtain. Slow and insensitive diagnostic methods hampered the global control of tuberculosis, and scientists are looking for early detection strategies, which remain the foundation of tuberculosis control. Consequently, there is a need to develop an expert system that helps medical professionals to accurately diagnose the disease. The objective of this study is to diagnose tuberculosis using a machine learning method. Artificial immune recognition system (AIRS) has been used successfully for diagnosing various diseases. However, little effort has been undertaken to improve its classification accuracy. In order to increase the classification accuracy, this study introduces a new hybrid system that incorporates real tournament selection mechanism into the AIRS. This mechanism is used to control the population size of the model and to overcome the existing selection pressure. Patient epacris reports obtained from the Pasteur laboratory in northern Iran were used as the benchmark data set. The sample consisted of 175 records, from which 114 (65 \%) were positive for TB, and the remaining 61 (35 \%) were negative. The classification performance was measured through tenfold cross-validation, root-mean-square error, sensitivity, and specificity. With an accuracy of 100 \%, RMSE of 0, sensitivity of 100 \%, and specificity of 100 \%, the proposed method was able to successfully classify tuberculosis cases. In addition, the proposed method is comparable with top classifiers used in this research.