Review of Fuzzed project

25 views
Skip to first unread message

Olzhas Rakhimov

unread,
Jul 25, 2017, 1:33:44 AM7/25/17
to D L, scra...@googlegroups.com

​​Dear D L,

Since you seem to be working on web-based solutions
and more familiar with web technologies,
I am wondering what you think of Fuzzed
from technical/implementation perspective.

This project seems to have had a significant effort invested by its developers.
However, the project activity has stopped since 2015.
I think it would be beneficial to the community as a whole to have this project evolving/alive
since I guess it’s unique (the only?) in addressing Fuzzy-logic in open-source.
There are definitely many possibilities for collaboration, cooperation, reuse
between Fuzzed and our projects.

Thanks,
Olzhas Rakhimov

Olzhas Rakhimov

unread,
Jul 29, 2017, 6:57:26 PM7/29/17
to scra...@googlegroups.com

---------- Forwarded message ----------
From: dl <dl6...@gmail.com>
Date: Sat, Jul 29, 2017 at 1:58 PM
Subject: Re: Review of Fuzzed project
To: Olzhas Rakhimov <ol.ra...@gmail.com>


Olzhas

I hesitate as a newcomer to this field to review a package such as FuzzEd.
I have been looking part-time at FuzzEd while at the same time researching/learning other frameworks such as R.

Now I should explain that I am looking at methods for elicitation of data from a corpus of multiple users (domain experts) per (business process) project. Even FuzzEd does not appear to meet this requirement (unless I have missed some point).  Currently single user estimates are submitted and a wider spectrum of expert opinion is needed.

The FuzzEd discussion group seems to be dormant.

I question whether the drag and drop editor in FuzzEd is the optimum way forward.

I share your view (in a recent thread) that GUI's have limited use and that it may be better to use a domain specific language which generates scripts to dynamically create the diagrams.

Other tools I have researched (some proprietary) do not attempt to draw traditional AND/OR gates and instead use simpler graphical notations so that more information can be shown on screen.

Looking again at the FuzzEd wiki ...

https://github.com/troeger/fuzzed/wiki

The developers write here ...

https://github.com/troeger/fuzzed/wiki/InstallationGuide

Help: Why do I need all this? I just want to install my own copy ...
Producing ready-to-use binary versions of FuzzEd is not our primary target, at least until somebody shows interest in that. For most people, using https://fuzzed.org is already good enough.
We may be willing to produce ready-to-use virtual machines for you. Please contact us.

Also the developers write ...

Please note that the Ansible scripts are designed for an Ubuntu 12.04 LTS 32-bit installation. They are most likely to break on anything else.

I do not want to go through the Ansible+Vagrant+VirtualBox installation workflow and I am using Ubuntu 16.04 (soon to be 17.04).

For these reasons I would prefer to not adopt/upgrade FuzzEd and instead adopt a fresh architecture.

...

After much digging around I found one interesting candidate as a delivery platform .. opencpu.org. This provides a link between classical HTML+JS+CSS and R.

The creator of opencpu is Jeroen Ooms.

...

There is also a PDF manual here.

https://opencpu.github.io/server-manual/opencpu-server.pdf

I did experiment with shinyapps which allows R apps to be created as widgets.

In fact I would urge developers to become familiar with both (R being the common factor).

This is an introductory tutorial I followed (duration 2.30 hours).

https://vimeo.com/rstudioinc/review/131218530/212d8a5a7a/#t=0m0s

I was unsure about pros and cons of opencpu vs. shinyapps but this discussion was helpful.

https://www.quora.com/Why-do-R-programmers-use-complicated-OpenCPU-for-web-apps-if-they-have-great-Shiny-platform

In short if more use of HTML UI is expected then opencpu seems to offer advantages over shinyapps.

...

Regarding the input of fuzzy data that is a continuing area of research. But R provides a rich portfolio of packages to explore.  FuzzEd is not unique in this respect.  I found some R fuzzy packages in my search but I need more time to go deeper into them.

...

I see the need for a front end proxy and I envisage laravel5 for this in the pipeline.
This will provide the authentication layers and access to databases (addressing the requirement for security which you raised).

With a blank design canvas I would start from Apache2/PHP on Ubuntu 16.04 and adopt a well used MVC framework such as laravel5. https://laravel.com/ for the front end interface and browser dashboard.

But prepare for a steep learning curve if laravel5 is adopted.

There are many tutorials to help. https://laracasts.com/

...

That is a rather long review which leaves FuzzEd behind and explores other approaches.

I envisage the end deliverable will be a mashup of multiple technologies:

laravel5, opencpu, shinyapps, R .. and some R packages installed. The workflow to produce this on a raw Ubuntu server will be considerable and I envisage using Fabric automation scripts for this, particularly in a headless server in the cloud.

SCRAM will be in the engine room.

I hope this helps in the roadmap.

DL

Olzhas Rakhimov

unread,
Jul 29, 2017, 8:04:51 PM7/29/17
to scra...@googlegroups.com

D L,​

​Thanks for the detailed review. Special thanks for the educational/tutorial links for the packages you mentioned.

I actually don't have access to their website to see how it works.
My Firefox browser is blocking it as insecure,
so I am mostly looking at their core implementation with C++ code.

I should have been clearer in my original email about the uniqueness of Fuzzed.
There are definitely general purpose libraries for fuzzy logic in open-source (just like for Boolean logic) (e.g., https://fuzzylite.org),
but application of it for the risk analysis domain is the challenge that Fuzzed is addressing (I am not aware of other projects w/ this goal).
For example, I can see the work on time-dependent dynamic systems w/ Petri-net simulations in current Fuzzed code-base.
Though, I am not sure how advanced, verified, and validated Fuzzed is.

As you noted, the Fuzzed team don't think producing standalone executable is a priority.
Thanks to it being open source, we/they/anyone could salvage the core and decouple it from their web stack.
At least, we can learn from their core analysis code.

It is just sad to see a heavily-invested, interesting, "unique" open-source project to die out in the field dominated by proprietary products.

Regards,
Olzhas


Reply all
Reply to author
Forward
0 new messages