Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Lukas
Hi i made some benchmarks with the pellet reasoner and everything greater than 200 individuals processed as batch at the same time with a simple in_date_range SWRL-rule, will increase the duration of the reasoning process. To reason over 1000 individuals with a batch size of 200 i need around 14 secs, if i took a batch size of 500, it take 18 secs, and it never ends if i want to reason over 1000 individuals at the same time. An as a side note, add an option for the reasoner to enlarge the maximum memory, please. I edited the lib-files manually and add 20gb instead of only 2g. Any ideas whats wrong with your pellet implementation?
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Jiba
Administrator
Hi,

Thank you for reporting this problem. Does it occur only with Owlready, or also when calling Pellet from command line or Java?

How did you increased the maximum memory? Is it in the Java command-line, with -X... option? Owlready uses -Xmx2000M but I can add an option for modifying the value.

Jiba
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Taha
Hello Jiba

I'm using Pellet reasoner in my python script, I'm running an experiment to measure the reasoner time needed to make reasoning on the ontology compared with ontology's data (Individuals and data properties). But I actually don't know what is the time needed by reasoner to make its process. Is there a way to do that? I activated the debug option in the pellet reasoner function, but the time randomly changes every time the reasoner runs.

Is it a fixed time? or it is depends on the size of data inserted into the ontology?


Regards,
Taha
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Jiba
Administrator
Hi,

Reasoning time increases with the size of the ontology (usually faster than the size, e.g. exponentially), and its complexity (e.g. an ontology without "or" and "not" is usually easier to deal with).

You can use the "time" Python module to measure the time. If there is huge variation, you may run it several times and compute the mean.

Jiba
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Taha
Thanks Jiba for your response

I'm enabling debug mode with reasoner function, 'debug= True', to print the time of reasoning, does it make difference?

Yes, I had to run reasoner several times to get a a mean time.

Regards.

From: Jiba [via Owlready] <ml+[hidden email]>
Sent: Thursday, December 12, 2019 12:32:58 PM
To: Taha <[hidden email]>
Subject: Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals
 
Hi,

Reasoning time increases with the size of the ontology (usually faster than the size, e.g. exponentially), and its complexity (e.g. an ontology without "or" and "not" is usually easier to deal with).

You can use the "time" Python module to measure the time. If there is huge variation, you may run it several times and compute the mean.

Jiba


To unsubscribe from Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals, click here.
NAML
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Jiba
Administrator
Hi,

I think the duration shown with debug=True is more accurate, because it considers only the time taken by Pellet, and not the time taken by Owlready2 for preparing the ontology and reading the results.

Jiba
Reply | Threaded
Open this post in threaded view
|

Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals

Taha
Thanks a lot Jiba.

From: Jiba [via Owlready] <ml+[hidden email]>
Sent: Thursday, December 12, 2019 12:44:12 PM
To: Taha <[hidden email]>
Subject: Re: Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals
 
Hi,

I think the duration shown with debug=True is more accurate, because it considers only the time taken by Pellet, and not the time taken by Owlready2 for preparing the ontology and reading the results.

Jiba


To unsubscribe from Pellet Reasoner with SWRL-rules unreasonable long reasoning duration at inference on individuals, click here.
NAML