AnnelineD / TLSketch

0 stars 0 forks source link

Packaging ? #2

Open gl-yziquel opened 3 months ago

gl-yziquel commented 3 months ago

Hi.

I have an interest in inference of language and axioms from analogical data. Having read the beginning of your PhD, it seems to me that, as much as you strive to make planning with subgoals independent of expert input, you still are not considering how the axiom system in which planning occurs may be inferred.

For instance, if we take the classical planning approach to removing boxes until a table with boxes on it is emptied, the graph searching approach would "randomly" remove and readd boxes until the table is emptied. You rely on a predicate language in order to state that removing boxes may be infered as the way forward. Even if expert data is removed, the necessity to formalise the task is not as a predicate language may be inferred. I believe I have something in the vein of inductive logic programming that could potentially determine that an ordering exists as to the number of boxes, which would remove yet one formal input to the planning task.

Anyhow, that was for the context.

As I like to experiment with code, such as yours, I appreciate when the code I download to toy with is packaged in some way or another. Which is why I ask: could you package your python as, say, a hatch/hatchling package ? In order for me to build and install it in one go with python -m build --wheel && cd dist && pip install *.whl ? That would make my life easier.

Also, I'd be very curious how you may conceptualise the link between TLSketch and your investigation of OpenCog Hyperon Metta. In which I also am interested.

Best regards.

G.

AnnelineD commented 3 months ago

Hi G.,

Thanks for showing interest in my master thesis. I indeed did not focus on inferring the predicate language but started from pre-defined PDDL domains. Inferring the axiom system is a very interesting research direction.

Since my code highly depends upon the Tarski library (parsing PDDL domains), and the DLPlan library (generating description logic features from PDDL specification), it might be interesting for you to play around with them separately (on the diagram in the README file, blue-edged squares are steps taken using the DLPlan library, and red-edged squares are steps using the Tarski library). Furthermore, while my code can be used to generate sketches, it does not contain a planner to use the sketches. If you are looking for such a planner, you can have a look at https://zenodo.org/records/6381593 .

That being said, I'll make work of packaging my code before the end of the week.

Regarding OpenCog's MeTTa, I am currently working on translating and using PDDL domains in MeTTa as a user example. Up till now I translated STRIPS-like PDDL files into MeTTa, wrote queries using this translation, and used the MeTTa language to construct transition systems. The link between my master thesis and this MeTTa investigation is merely it's nature in planning, PDDL and constructing transition systems (functionality also contained in TLSketch), but has no further overlap.

Warm regards,

Anneline