expert system of diabetes

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • AIProgrammer
    New Member
    • Jul 2008
    • 28

    #16
    Originally posted by r035198x
    Site guidelines don't allow exchange of email addresses in the public forums. Please read them and obey them.

    If you google prolog you'll get lots of information on it and even some free compilers. I suggest you forget about the interface for now and concetrate on your rules and knowledgebase. Reply #10 in this thread has some good starting points (except that I would use a database rather than excel sheet to store my data).

    Hello r035198x,

    What is your reason behind the choice (that where rules should be kept). Is it because you like databases more, (may be some Oracle 'ish kind of look and feel, visual and programmatic). Afterall, I don't understand why databases ( I mean Oracle or MySQL etc. kind of, i.e. GENERAL PURPOSE RELATION DB) should be used, and the reason behind your this choice.

    From my point of view, if all one wants is to store the rules conviniently, change them (IF AT ALL, i.e. IF THIS EXPERT IS REALLY PUT TO PROFESSIONAL OR LONG TERM USE, AND RULES ARE '''REALLY''' MODIFIED), and access them, (that is all an expert system in general requires, if one doesn't try to be complicated just for the sake of it), then why databases would be required.

    When I write expert systems, whether in full, or part of it, I try to keep it simple, and put rules even in excel sheet if they grow too large. Otherwise they may simply be HARDCODED within the language itself.

    Don't take me wrong, I don't mean to challenge your opinion, but would you like to share your opinion with me regarding why you would prefer databases for this purpose. If possible, then share also why and under what circumstances you chose DB, whether you chose it beacuse of EXTERNAL FACTORS (like lack of time, or just that you were told to etc.) or whether it was your own personal prefference? Also mention the kind of application you were designing. Was it a DATA-CENTRIC APPLICATION, OR A CONTROL CENTRIC APPLICATION? What kind of model you simulated, and what was the BASIS for your model, whether DETERMINSTIC, PROBABILISTIC, FUZZY, and whether you aimed it for SYMBOLIC COMPUTERS OR FOR SUB-SYMBOLIC COMPUTERS (CONNECTIONISTI C MODEL).

    Waitting for a reply soon,

    Bye.

    Comment

    • r035198x
      MVP
      • Sep 2006
      • 13225

      #17
      See the wiki entry for databases.

      Comment

      • AIProgrammer
        New Member
        • Jul 2008
        • 28

        #18
        Originally posted by r035198x
        See the wiki entry for databases.
        Hello r035198x,
        You probably either didn't read or misinterpreted what I wrote. I meant to ask you why you feel that databases should find place in an expert system like this. Definetely the wikipedia entry for databases doesn't answer this, as my point wasn't related to DB theory, but to expert systems (now this time dont' direct me to the wikipedia entry for Expert systems!!!!!!, beacuse if I ever need to go there, my browser has a SPEED DIAL to www.en.wikipedi a.org). Even in case of expert systems with extremely gigantic number of rules (3.3 MILLION RULES), I found they didn't use databases. (By the way, the person who used to sit right beside me wrote it, and now he left and went somewhere else).

        Please let me know why YOU prefer DB. It helps to know what other people think and do while in R&D.

        Again, waiting for a reply soon.

        Bye.

        Comment

        • r035198x
          MVP
          • Sep 2006
          • 13225

          #19
          How would you implement security for update of rules in the system?
          i.e Suppose the system is used by many doctors and many higher level authority doctors (say research doctors) who need to have acces to change the rules based on their latest research findings?
          Also how would you log the changes made to the rules i.e logging both what the old rule was and what the new rule is together with the user and time when the change was made?
          Then there is the application use itself. People need to be registred to use the application. The number of times that a decision was made by the system and resulted in success also needs to be logged, perhaps to be used to automatically trigger some predefined rule changes as well.

          Hope I'm now more specific ...

          Comment

          • AIProgrammer
            New Member
            • Jul 2008
            • 28

            #20
            Originally posted by r035198x
            How would you implement security for update of rules in the system?
            i.e Suppose the system is used by many doctors and many higher level authority doctors (say research doctors) who need to have acces to change the rules based on their latest research findings?
            Also how would you log the changes made to the rules i.e logging both what the old rule was and what the new rule is together with the user and time when the change was made?
            Then there is the application use itself. People need to be registred to use the application. The number of times that a decision was made by the system and resulted in success also needs to be logged, perhaps to be used to automatically trigger some predefined rule changes as well.

            Hope I'm now more specific ...
            Hello r035198x,

            Thanks for your views on the subject. But I am still of the view that the large overhead DB's cost, during installation, design, and final execution on end-user's computer, doesn't deserve its place.

            As for how would I implement security in my Excel Sheet. I would simply go to Tools>Protectio n>Protect Sheet and Tools>Protectio n>Protect Workbook. When a change is attemped, then password is prompted. One is shared the password with, can Unprotect the sheet and the workbook.

            Now for the people registration part, we can do that very easily within VB 6.0 itself. Afterall, why are all these variables and InputBox for? ( I don't like in-builts, and always design my own, but still it can be used).

            And the rule change is done offline, not as an automated feedback systems. (That is why I asked you which system you were aiming SYMBOLIC OR CONNECTIONIST). That is beacuse the current state of the art in mathematics and R&D in 'shells' is not that advanced that the s/w may tune rules itself. So this problem infact boils down to the problem of security and passwords only, so we have a soultion in excel too.

            I didn't understand why a logging of 'who made WHICH change and WHEN' is of practical use to actual expert system design. Because, the DE-FACTO is : An expert designs the rules, produces the s/w to the end-user. Now if the end-user himself/herself is an expert, then he/she may costumize it as per wish. In general, scientists and R&D people publish their rules, working, research etc. in research papers ans journals, so I don't think that this is actually a problem here.

            Anyways, thanks for you views, but I am still with the rule that 'simplicity rules best'. Expert systems I know have always not even asked for excel. If the expert system is for Multimedia DB Retrieval, then ofcourse a DB will be present for stroing the MM DB itself.

            keep writing and sharing your views.

            Bye.

            Comment

            • r035198x
              MVP
              • Sep 2006
              • 13225

              #21
              For the user registration part, VB alone won't do it. You need a database of registered users which you use to aunthenticate against.

              Anyway, another view I have is that knowledge based systems are better off developed in prolog rather than VB. The language itself is tailor made for them. Rule development and firing is, IMO, much easier and faster to implement in prolog than in VB (apart from the support for more platforms on which to run the software).

              Comment

              • AIProgrammer
                New Member
                • Jul 2008
                • 28

                #22
                Originally posted by r035198x
                For the user registration part, VB alone won't do it. You need a database of registered users which you use to aunthenticate against.

                Anyway, another view I have is that knowledge based systems are better off developed in prolog rather than VB. The language itself is tailor made for them. Rule development and firing is, IMO, much easier and faster to implement in prolog than in VB (apart from the support for more platforms on which to run the software).
                Hello r035198x,

                But if you write rules in PROLOG, then you need to convert them to predicate fom. By the way PROLOG offers no specific advantage over VB, and researchers who actually develop or get expert systems developed by those working under them, generally develop them in languages of GENERAL PURPOSE USE, like C/C++/VB ( these three are according to what I have seen, the most used langauages now-a-days.)

                PROLOG was developed simply beacuse languages NEED TO BE developed, whether they are used or not is a different matter altogether. There are many languages which claim to be SPECIALIZED, but in fact are just a CUT-SHORT VERSION of general programming languages. I am sure you have heard of the famous 'PENDULUM EFFECT' in IT industry, where they keep shifting from one pradigm to another, and from one lang/platform to another. But what is the net effect. Just think, WERE THE PROGRAMMERS OF THE 70'S BETTER, OR WILL THOSE WHO START TO PROGRAM AFTER 2010-2020 WILL BE BETTER. They have so many choices, but still they can't program well. There are literally tens-of-thousands, maybe even lakhs of C/C++ Programmers graduating every year. SO WHY IS THAT WE DON'T SEE THE INNOVATION OF THE 70'S. IF WISH I WERE A PROGRAMMER OF THE 70'S SOMETIMES. I would like to refer to one topic of interest. Read about Sheena. S. Iyenagar's ( An R&D person from Colouombia University) research on how the MUTITUDE OF CHOICES ADVERSELY AFFECT OUR CHOICE. THAT IS, MORE CHOICE MAY SOMETIMES EVEN MEAN A POORER JUDGEMENT THAT LESSER CHOICES.

                And one more thing to be pointed out : the goal of AI is not to create PORTABLE S/W, BUT INTELLIGENT S/W. Further, every program has AI, knowledge and knowledge base, whether you see it that way or not. Even a login prompt is INTELLIGENT TO SOME EXTENT, AND EVEN A CHESS PROGRAM CAN BE 'FOOLER' THAN ONE CAN EVER IMAGINE.

                As for authentication part, they can be issued one of the passwords [ we are speaking on it as if it is really going to be put to a DIABETICS CAMP someday; funny isn't it, but interesting too], and the set of passwords should be so issued that no-one can 'guess' or 'get it known' from somebody else. It should only be OBTAINABLE.

                That could be a soultion, although the level of intelligence or 'CAPABILITY' of any sort doesn't depend upon the TOOLS, but on the underlying mathematical framework.

                will get in touch soon,

                Bye.

                Comment

                • sana sodhal
                  New Member
                  • Jul 2008
                  • 9

                  #23
                  Originally posted by r035198x
                  Site guidelines don't allow exchange of email addresses in the public forums. Please read them and obey them.

                  If you google prolog you'll get lots of information on it and even some free compilers. I suggest you forget about the interface for now and concetrate on your rules and knowledgebase. Reply #10 in this thread has some good starting points (except that I would use a database rather than excel sheet to store my data).

                  Hellow

                  thanx for your reply I like the information which you both are sharing with eachother its very informative.
                  and please I would request to share some ideas about my project.

                  bye

                  Comment

                  • AIProgrammer
                    New Member
                    • Jul 2008
                    • 28

                    #24
                    Originally posted by sana sodhal
                    Hellow

                    thanx for your reply I like the information which you both are sharing with eachother its very informative.
                    and please I would request to share some ideas about my project.

                    bye
                    Hi,

                    For that you need to let know the status quo [put simply, the current status and standing of your work], and theoritical details about your project. Then definitely you may have guidance for your project, without which we can just 'ASSUME" what is being developed. This job of 'ASSUMING' can itself be considered to be a separate project, applying several decision theoritic models for 'ASSUMING'!!!

                    One more thing, though all expert systems share many-a-things, but they do have differences, otherwise there would have been JUST ONE EXPERT SYSTEM IN THE WORLD. So, instead of writing just 'an expert system on diabetes mellitus' (not mellAtus, as you wrote), write what is the level of user data, domain knowledge [knowledge relating to diabetes itself], the rules which are available.

                    Put in a nutshell, it would be:

                    'The more the knowledge, the lesser the imprecision [ confusion if you so prefer], the lesser the choices, and the better the judgement, and hence, better the end-product.'

                    Feel free to ask any sort of queries.

                    Bye.

                    Comment

                    • AIProgrammer
                      New Member
                      • Jul 2008
                      • 28

                      #25
                      Originally posted by sana sodhal
                      Hellow

                      thanx for your reply I like the information which you both are sharing with eachother its very informative.
                      and please I would request to share some ideas about my project.

                      bye
                      Hi sana sodhal,

                      As for your actual coding, you may use any language of this world [ofcourse a 'FORMAL LANGUAGE' [i.e. like C/C++/VB], and not English/French/German etc]. Use the language which you like the most, and would like to develop in. There's nothing any given language can't do. There are languages which don't even supposrt recursion!!!!!! Then how do people manage them??? There's always a way to do things if you really want to do. So, it's not that a particular language will give you an 'ADVANTAGE', it's just a mental satisfaction which programmers get, depending upon how they have programmed in the past.

                      Afterall, all present day computers are the same, and many of us try to make 'models' for better computers, or use them. But till the time that is done [which I beleive is at the least 10 years from now, if at all], you may choose any particular language and arrive at exactly the same results.

                      See your PM [Personal Message], which can be acessed from the top of your page, under 'Network'. You will find there further details.

                      Bye.

                      Comment

                      • sana sodhal
                        New Member
                        • Jul 2008
                        • 9

                        #26
                        Originally posted by AIProgrammer
                        Hi sana sodhal,

                        As for your actual coding, you may use any language of this world [ofcourse a 'FORMAL LANGUAGE' [i.e. like C/C++/VB], and not English/French/German etc]. Use the language which you like the most, and would like to develop in. There's nothing any given language can't do. There are languages which don't even supposrt recursion!!!!!! Then how do people manage them??? There's always a way to do things if you really want to do. So, it's not that a particular language will give you an 'ADVANTAGE', it's just a mental satisfaction which programmers get, depending upon how they have programmed in the past.

                        Afterall, all present day computers are the same, and many of us try to make 'models' for better computers, or use them. But till the time that is done [which I beleive is at the least 10 years from now, if at all], you may choose any particular language and arrive at exactly the same results.

                        See your PM [Personal Message], which can be acessed from the top of your page, under 'Network'. You will find there further details.

                        Bye.

                        Hi

                        can you help me in designing rule base as i've completed my knowledge base but now I m very much confused that how to design the rule base system what to do?
                        waiting for you rply

                        bye

                        Comment

                        • sana sodhal
                          New Member
                          • Jul 2008
                          • 9

                          #27
                          Originally posted by jeffstl
                          Uh huh...

                          So what is the project objective? Do you have a database set up already? Does it require a database?

                          What have you done so far?

                          Are there any specific problems you could maybe start with asking for help on?
                          Hi

                          I eed your help to design the rule base i've comleted knowledge base but now what to do m not finding any for it
                          so guide me

                          bye

                          Comment

                          • blueyuer
                            New Member
                            • Sep 2009
                            • 1

                            #28
                            Hi

                            i am doing a project that almost similar with your, are you done u project??? can lead me to do that??? cause i confused about how to do the rule based.....

                            wait for u reply....

                            Comment

                            • Frinavale
                              Recognized Expert Expert
                              • Oct 2006
                              • 9749

                              #29
                              The experts on this forum are more than happy to help you with any specific programming problems that you are facing; however you cannot expect these volunteers to develop your application or do your homework assignments for you.

                              The first step in developing a system like the one described in this thread requires you to actually gather the system requirements, think about and design the system, and then (nearly the last step) develop the system.

                              You should start by asking your client (or yourself, or your teacher...this being whoever you're developing the system for) what the application should do.

                              Sometimes it helps to write out Use Cases for each component of the system. These use cases just describe how the user interacts with the system. For example:
                              • On the login form the user enters their user name and password, and then clicks the Login Button.
                              • If the system validates the users credentials it displays the main page
                              • If the user fails to provide valid credentials 10 times, the user is locked out of the system



                              Once it's been clearly stated what the system should do it's a good idea to write up a System Requirements Specifications document outlining everything that's expected. This can be used as a contract between you and the client so that the client gets exactly what they asked for....but it's not necessary to write the SRS document if you're pressed for time.

                              From the Use Cases you will be able to draw out fundamental system requirements and design the Classes and functions that are required to make the system work. In the above Use Case it's obvious that the system needs to have a User Class (or something)...th at the User Class has: User Name, Password, and Lock Out members .... that there is a method that validates the user's credentials.... and that there is a requirement that the user must provide valid credentials (user name and password) within 10 tries.

                              You can design all of your classes this way. You can use UML to help describe the classes and show how they interact with one another so that you are clear about how the system works, how the components interact with one another, and what has to be done in order to implement (write the code for) the system.

                              After the system design is complete, then you can start writing the code that implements the design.

                              If you have not properly thought about the system, and at least attempted some sort of design, do not expect the experts to give you any help. The experts here are not going to put more work into designing your application (doing your homework) than you. They are here to give you a helping hand through specific problems....the y are not here to do your work for you.

                              -Moderator Frinny

                              Comment

                              Working...