linking different forms in one project

Discussions related to Visual Prolog
jaelharrup
Active Member
Posts: 27
Joined: 18 Feb 2011 11:59

linking different forms in one project

Unread post by jaelharrup » 27 Feb 2012 13:01

hallo everyone

i am new to visual prolog. i am using visual prolog 7.3 personal edition. i am trying to develop an expert system that can diagnose a disease .

how do i go about it or how do i link different forms after the user clicks an ok button in the form or dialog?

Please help

Steve Lympany
VIP Member
Posts: 119
Joined: 31 Mar 2001 23:01

Unread post by Steve Lympany » 27 Feb 2012 17:43


Harrison Pratt
VIP Member
Posts: 295
Joined: 5 Nov 2000 0:01

Unread post by Harrison Pratt » 27 Feb 2012 23:12

The first and most important thing is to clearly define (in your own mind, at least) how you will make the "diagnosis." For example, will it be based on ordered probabilities of disease given certain findings, or on a rough set approach using some-of, all-off, none-of a group of findings ... or some other approach (neural network, for example).

Will you be creating a "final diagnosis" with your program (Good luck!) or a "hinting machine" that will be used by a domain expert (better)? Will you be importing data from another computer? You can make a system that looks pretty smart that way. Or, if you rely on the user of your expert system to recognize and then input abnormalities you run into all the limitations of human fatigue, failure to recognize things they actually know, etc.

How complete does your system need to be ... i.e., is is for something simple like "fever in children", something of intermediate complexity like peripheral blood findings pointing towards diseases to be diagnosed based on lab findings, or something even more complex like a general diagnostic program/expert system for internal medicine?

Where will you get your criteria for disease? This is a big challenge -- we did an expert "hinting" system for making diagnoses from peripheral blood findings and worked through the indices of several hematology texts and created a card file of criteria for each diagnosable condition (i.e, "diagnosis"). We had well over 1,000 hours of work in the knowledge acquisition part of the our project. We then fairly easily extended that diagnostic model to several other "knowledge domains" (i.e., protein electrophoresis, immunology, etc.) Once you have criteria and a model for encoding criteria is it just tedious work, not particularly hard ... but you have to decide on "how" you will diagnos as there are many ways.

I don't mean to overwhelm you with questions, but the question you ask opens a hundred questions. If you give more specifics people here can be quite helpful.

jaelharrup
Active Member
Posts: 27
Joined: 18 Feb 2011 11:59

Unread post by jaelharrup » 2 Mar 2012 9:43

Code: Select all

predicates     onOkClick : button::clickResponder. clauses     onOkClick(_Source) = button::defaultAction:-    _=diagnosis::display(This).
I have noticed this displays the diagnosis form alongside the welcome form.


2. The next thing is that in the form called diagnosis I wish to ask the use about one symptom at a time, since the system is supposed to diagnose hypertension in pregnancy., i would like to ask for example
a. Does the patient have morning sickness?
Then the user is to click on either Yes or No radio buttons.
Once the user has given a response the system is supposed to proceed to ask the next question for example: is there abdominal swelling? On which the user clicks on either yes or no radio buttons and after all the questions are answered the system gives a diagnosis on what the patient is suffering from.
Regards
Jael

Harrison Pratt
VIP Member
Posts: 295
Joined: 5 Nov 2000 0:01

Unread post by Harrison Pratt » 2 Mar 2012 21:22

You should explicitly destroy your "welcome" dialog window when you display the "diagnosis" window if you have no need for the "welcome" dialog.

Sometimes it's better for the user if there aren't too many dialogs popping up and closing. Consider if you might be able to keep all (or specific related groups) of questions you're asking the user in a single dialog or a few dialogs.

You also might consider using the Visible and/or Enabled control attributes to hide/display or display/grey-out controls to guide the user through the diagnostic questions. That way you can collect a lot of related information from a single dialog. It's up to you to decide the "logical" groupings according to your diagnostic strategy. Search the Help file for "properties of gui controls".

Another (or supplementary) approach might be to use a few list boxes on a dialog that you could populate (or hide) with different options as the user works through the diagnostic process.

Since "hypertension in pregnancy" is a nicely limited problem domain (very good for a first project with VIP) you might even be able to create a just one dialog with a reasonable number of GUI controls and collect data and diagnose on just that one form. Perhaps you could even do your "welcome" on this same dialog.

jaelharrup
Active Member
Posts: 27
Joined: 18 Feb 2011 11:59

Unread post by jaelharrup » 5 Mar 2012 8:14

Hallo Harrison, thank you for the response.just wish i knew how to work with the controls. but i am trying to read all the notes i can find.

Hope to get a break through.

Regards

Jael

jaelharrup
Active Member
Posts: 27
Joined: 18 Feb 2011 11:59

Unread post by jaelharrup » 5 Mar 2012 9:24

Harisson how do i do all those things you have said?

Post Reply