Need feedback on new UI for optimization component Tunny

I am developing an optimization component Tunny.

:fish::fish::fish:

Tunny has various ambitious features such as NSGAII, Bayesian optimization, constraints, multiobjective optimization, optimization persistence, optimization analysis via dashboard, etc.

However, Tunny’s Grasshopper UI is known to have some weak points against Wallacei and others.
That is why I am developing a new UI.

If you are a Tunny user and have an opinion on the new UI, please comment so that I can reflect it in the development.

:fish::fish::fish:

The current development version of Tunny uses Ribbon UI to make it easier to understand, but it is still in the early stages of development.

If you are new to Tunny, please take a look at the documentation site to get an idea of what Tunny can do.

Thank you in advance for your cooperation.

3 Likes

Hi Hiron-san.
I am Jim. Maybe this is an obvious question, but I am a beginner of multi-objectives optimization. Can you tell me more about what you mean by constraints Tunny can do? As my understanding multi-objectives optimization as the name suggests, optimize some objectives, and those objectives has somehow provided/ shaped the constraints to the answer domain already. Constraints from Wallacei for example, the input sliders upper/ lower bound, the objectives’ functions linear domain…, what’s the constraints that you said in this post, Tunny supports but Wallacei does not?

Thanks. Sorry if this question is too beginner…

Hi Jim,

Tunny can set constraints on objective functions. For example, I don’t think Wallacei can handle constraint conditions like setting an objective function to be less than 10.

1 Like

Thanks for replying.

So for example, in Wallacei, we can have objective functions like

  • x + y (1)
  • x + z (2)
  • y + z^2 (3)

x, y, z can come from 3 sliders with its upper bounds, and lower bounds
and try to find minimum of (1) and (2), max of (3) by negative sign


In Tunny we can further set like

  • x + y (1), while x<3, x > 0, y <10
  • x + z (2) , while x + z < 20 … ← I think this is what you meant above. In Wallacei, this value’s upper bound, will be upper bound of x slider and y slider combine
  • y + z^2 (3), while x^2 < 8

and also we attach Tunny optimizer to the slider, the optimizer will compute the constraint of each slider, instead of using the sliders’ upper lower bound?
something like this?

Thanks

Tunny constraints feature the ability to be set regardless of the range of the slider.
For example, you can set constraints such as x+y<10, x+Z>5, y+z^2<0. This feature does not seem to be of great significance when expressed in a mathematical expression like this. However, when you consider that, for example, the results of a structural analysis can be handled with constraints such as keeping stress below 100 MPa, you will feel the difference from the constraints possible with Wallacei.

1 Like

Thanks, this do sounds really good. HUGE appreciate!

A beta version of Tunny has been released.
It is still likely to be buggy, but it is also in a state where it is likely to reflect your feedback, as it is before it is fully fixed.

If you find any bugs, it would be helpful to get your comments.

2 Likes

v1.0.0-beta2 with improved stability has been released.

Hi @hiron , super impressive what you are developing. If I understand correctly Tunny differentiates from tools like Galapagos, Wallacei, or Opossum, in its ability to handle multi-objective optimization, constraints, and optimization persistence, offering greater flexibility for advanced problem-solving.

Though … it seems your audience is small and it deserves more active users. My feedback is, as novice, in this field, it is all a bit overwhelming. Hard to known where to start, let alone judges the results on their merits. Maybe, including some starter YouTube tutorials , along side some basic/medium and advanced examples, would further assist users in learning the tool effectively,

Let me break it down

  1. High Learning Curve for Starters
  • While Tunny’s features (NSGA-II, Bayesian optimization, etc.) are powerful, the steep learning curve for new users, especially those only familiar with Galapagos, can deter adoption.
  • The documentation is turrow, it topic it self is overwhelming beginners who lack foundational knowledge in optimization techniques.
  1. Lack of Guidance in Algorithm Selection
  • Me, and probably most beginners have no clue to choose the right algorithm and settings. As I asume, most do not not fully understand terms used, leading to trial-and-error approaches.
  1. Usability Challenges
  • While the UI provides loads of flexibility, new users might find it difficult to navigate without clear starting points or guidance tailored to their needs and problem context. Especially i you needs someting quick and dirty, but accurate enough. Like initial desion optimzations. Then again, that is not the intended usecase for Tunny.

Suggestions

To bridge the gap for beginners, consider implementing features that guide users more intuitively:

  1. Smart Guidance
  • Introduce a “Smart Starter Mode” to analyze the user’s problem setup and recommend appropriate optimization methods, algorithms, and settings. Not sure how that could work, but I imaging as follows:
    • Analyze the problem’s structure (e.g., number of objectives, presence of constraints).
    • Suggest an algorithm with pre-configured settings that align with the problem’s complexity and goals.
    • Provide a brief explanation of why the chosen algorithm is suitable. Maybe the likes of AI can be implemented for thsis reasoning??
  1. Interactive Tutorials and Tooltips
  • Include guided walkthroughs or interactive tooltips that explain:
    • What each algorithm does. I know, RTFM, but who does :wink:
    • When to use specific algorithms (e.g., Bayesian optimization for small data, NSGA-II for multi-objective problems).
    • Common pitfalls and how to avoid them.
  • Use layperson-friendly language as hover text/tooltips.
  1. Preset Templates
  • Offer a library of pre-configured templates for common optimization tasks. Users can modify these templates as they grow more confident. Provide access to examples from other users or case studies. Allow users to import and adapt these examples to their own needs. I think how Eddy3d does this is nice, where the is a ’ template’ node to insert template scripts directly inside gh. And the same exmples have a video tutorial to explain the what and hows
  1. Dashboard-Integrated Feedback
  • As users adjust settings or inputs, the UI could offer real-time feedback:
    • Highlight potential issues (e.g., “Your dataset may be too small for this algorithm”, or “computation length exceeds 1 hours”, "suggest to lower this value, result deviates 1% but keeps RAM/CPU load low).
    • Suggest tweaks to improve performance.
    • Show expected outcomes based on chosen settings.

2 Likes

Thanks @crz_06. The breakdown comments are very helpful.
First I agree with all of your comments.

Since Tunny had been less than version 1 (i.e., a development version), my first goal was to enhance the functionality, and I valued feedback from the team who could speak directly with me.
However, Tunny will soon be officially released, version 1.0. Therefore, I wanted to focus on making it easier for a wider range of people to use from now on.

I was raising this question to see where to start, but I would like to begin by addressing your suggestion.
Adding Tooltip and enriching the website are the bare minimum, but the stater mode you mentioned may be very good for beginners.(Not RTFM :wink:)
As a trial, I am implementing an AUTO Sampler in the new Tunny that automatically selects a method, and I would like to enhance such functions.

For example, it may be very useful to create a custom GPT for Tunny in ChatGPT so that it can be referenced from Tunny.
I don’t know how far it can go technically, but it would be nice to have LLM tell us in a conversational way.

Had the same thought of a custom gpt but removed that sentence as i figured it too much of a stretch, haha

1 Like

Hi @crz_06

Now that I’ve released the RC version of Tunny v1, I’re updating our documentation accordingly. I’ve created a NotebookLM instance with the latest documentation aligned with v1.
This now allows you to ask AI questions about how to use Tunny effectively.
Please give it a try if you’re interested!

1 Like

i will do so in the coming weeks. I’ve seem the updates on linkedin, and it’s amazing what you’ve build. Looking forward to test it

1 Like

I see a Tunny.LicenseManager plugin being installed together with Tunny: may I ask if you are planning to keep releasing it as free plugin in the future, or have different plans?

@inno
The free version without a license is called the community version, and the only difference in functionality will be the number of samplers that can be used.

Most of the paid features were added to v1, and most of the same features as in past versions are available in the v1 free version (community version).

1 Like