One of the most important problems in the world is the increase in costs in the field of health. One of the important research in recent years to reduce these costs is the prediction of diseases. Liver diseases are one of the most serious diseases in the world, because the liver plays a vital role in the human body, and any liver disorder causes serious and irreparable problems in the body. Most liver diseases do not show specific symptoms until advanced stages. Not having symptoms in the early stages may lead to the wrong diagnosis of the disease by many doctors, and this wrong diagnosis can lead to the wrong treatment and prescription of inappropriate medicine, and as a result, the creation of acute and long-term symptoms of this disease or other problems. Therefore, earlier and more accurate diagnosis of liver problems with the help of detailed analysis of the effective features of an automatic medical diagnosis system, for correct treatment and prevention of serious damage to this vital organ, seems necessary. For this purpose, it is necessary to use data mining techniques, machine learning and innovative algorithms to provide an intelligent model for early diagnosis of this disease. Therefore, the aim of this research is to comprehensively investigate liver diseases, methods of diagnosis and prediction of these diseases by machine learning techniques and meta-heuristic algorithms in terms of goals, limitations and capabilities in the field of medicine. The results show that random forest algorithm, fuzzy neural networks and support vector machine find approximate solutions faster than meta-initiative algorithms, and also usually get better results compared to deterministic algorithms. Also, among the datasets of liver diseases, the ILPD dataset is the most widely used in the diagnosis and prediction of liver diseases due to its easier access and the MATLAB tool due to its simplicity and comprehensibility.