Aquacultural Engineering 23 2000 3 – 11
Fish disease diagnosis program — problems and some solutions
Daniel Zeldis
a,
, Shawn Prescott
b
a
Zeldis Industries Ltd. Fish-Vet Israel
, POB
3521
, Eilat
88134
, Israel
b
Fish-Vet Inc.,
12620
I6y Mill Rd., Reisterstown, MD
21136
, USA Received 4 December 1998; accepted 17 August 1999
Abstract
Any software dealing with disease diagnosis has to overcome various problems. Some are inherent in the diagnostic technique, others arise because of the specific problem domain. We
have evaluated different expert-system technologies including neural-nets, case-based expert systems ES, rule-based ES and fuzzy logic. The problem domain fish disease has it’s own
problems, the major one being that there is no accepted database of cases like there is in other medical fields. This precludes the use of diagnostic techniques needing a large number
of test cases. The other problem in this context is the effort to deal with ALL diseases for multiple species. We explore the different ES techniques, and outline the final product
Fish-Vet which includes a hybrid system that enables us to obtain reasonable diagnoses in a timely manner. This program uses elements of fuzzy, rule-based and statistical systems. The
mix and match approach proved useful, and further work has to be performed in order to incorporate other artificial intelligence techniques into the process. © 2000 Elsevier Science
B.V. All rights reserved.
Keywords
:
Expert systems; Diagnosis; Fish disease; Fuzzy logic; Rule based systems www.elsevier.nllocateaqua-online
1. Introduction
Fish-Vet is a software program for diagnosis of fish disease. As such, it has to deal with more than one species, and a multitude of diseases. The diseases
themselves result from nutritional and environmental problems as well as infections
Corresponding author. Tel.: + 972-7-6379756; fax: + 972-7-6337278. E-mail address
:
danzelinter.net.il D. Zeldis 0144-860900 - see front matter © 2000 Elsevier Science B.V. All rights reserved.
PII: S 0 1 4 4 - 8 6 0 9 0 0 0 0 0 4 7 - 9
by parasites, viruses, bacteria and fungal agents Post, 1983; Stoskopf, 1993. All of this make for a huge problem space, and a major challenge for anyone trying to
develop a program that will reach reasonable and timely diagnoses. Most of the existing examples of disease diagnosis programs are in the field of
human medicine. Most of them tackle only a single disease or a subset of related diseases and none to our knowledge attempts to diagnose all human diseases.
During the development of Fish-Vet, we looked into rule-based, case-based, neural-net and fuzzy logic systems. Each of these ‘pure’ systems has advantages as
well as deficiencies. Our decision was to create a working program and, where real-world constraints were in conflict with the ‘pure’ systems, we ‘polluted’ that
system as long as the end result was faster andor more accurate.
2. General problems in fish disease diagnosis
There are several problems inherent in a disease diagnostic process. These have to be taken into account by any software package trying to aid the diagnosis.
No disease exhibits all the signs described in the literature. In most cases there are acute and chronic phases of a disease having differing signs. Therefore, the
program has to be able to reach the right diagnosis with a partial set of signs.
There is a time progression for every disease. A disease seen when the first clinical signs appear will exhibit different signs than when mortalities are already
occurring.
Since the program has to obtain input from a human user, the problem of terminology looms large. Until today and despite efforts made by international
organizations, no accepted vocabulary has been agreed on for veterinary termi- nology CAP, 1998; HL7, 1999. This is now changing with the incorporation of
veterinary terminology in SNOMED. Moreover, cultural differences will also result in different terms being used for the same condition.
In many cases, by the time the fish exhibit signs of a problem, there is already a secondary agent involved virus + bacteria, fungus + bacteria, etc.. Therefore
the signs observed by the user may ‘belong’ to more than one disease in the program’s database.
‘It is human to err’, but never more so than in our case. We have to take into account that the signs chosen by a user to describe a condition are influenced by
his knowledge and experience. Therefore we have to deal with the possibility that ‘wrong’ signs will be entered by the user.
3. Rule-based systems