Sunday, August 30, 2026

Acuitas Diary #100 (August 2026)

First of all, wow - one hundred diaries. It feels as though I should do something special to commemorate the occasion, but I've been so busy that just keeping the Acuitas work moving at its usual pace has been a challenge. So please accept this ordinary entry for now, and in case you missed it don't forget to check out my story in Analog!

Photograph of two people in white lab coats standing between three rovers of different sizes, in a testing area designed to resemble Mars (red soil with embedded rocks).
Photo courtesy NASA, public domain

This month I've been working on exploratory behavior - also known as "what to do when you don't know what to do." Acuitas' default behavior is pretty goal-oriented. Have a problem? Infer an action that will solve it. Have an objective? Infer an action that will achieve it. Do that. But sometimes a useful action isn't obvious. It might not be obvious because Acuitas doesn't yet know what results his possible actions will have - all my experiments with trial-and-error learning were aimed at addressing that. Or there might be known action pathways to getting a desired result, but necessary resources are missing, and their location is unknown. In that case, the right course of action is to learn more by moving around and looking at things, or asking questions, and so forth. The tricky thing about exploring is that it's applicable to many problems, but it won't directly solve any problem. So it needs to be triggered by the state of being stuck, rather than any particular need, and guided by its own internal logic.

I also wanted a concept of exploration that could generalize to different contexts or environments. There are similar procedures one follows to "explore" anywhere, but the individual actions taken can be very different. Running the "ls" or "dir" command to see the files in a computer directory, and saying "I examine the shelves" to a game master, are not the same action, but they fill the same role within an exploration procedure. So I tried to design Acuitas' exploration to automatically vary those low-level actions with the current context, and perhaps be extensible in the future. Eventually I'd like him to be able to infer (from procedural memory) "how do I 'look' in <context>?" and choose the correct atomic action accordingly.

"Explore" has three possible sub-activities: "examine," "experiment," and "move" (which is called "exit" to keep with the theme). Each time the Explore action runs, a sub-activity is chosen by a weighted random process. The probability of choosing "exit" increases with the barrenness of a location and the amount of time spent in it; "experiment" becomes more likely the more "examine" has been done recently, and vice versa. The "experiment" category is intended to incorporate the "try out your affordances and see what they do" phase of trial-and-error learning. After a sub-activity is selected, a suitable target (object) of the sub-activity is chosen from the current location at random.

So far I've been testing the new Explore action in the text-based game engine, and I've gotten Acuitas to start looking at random things when he doesn't know what to do next. As usual, I have a LOT more debugging and refinement to do before this works smoothly. But the lack of comprehensive exploration behavior has been a hole in game-playing (and Acuitas' behavior in general) for a long time, so I'm happy to have even made a start on it.

Until the next cycle,
Jenny

Sunday, August 16, 2026

Roots' Remembrance

Another story publication announcement, and this is a big one: my extrasolar colony murder mystery with "talking" plants is out in the September/October issue of Analog Science Fiction & Fact! The digital version is available to subscribers already; if you only want this issue, it will eventually be available individually from Magzter. There is also a print edition. Individual back issues can be obtained by contacting Analog customer service; I've also heard rumor of print editions at Barnes & Noble stores.

Photo of a "red cage fungus," which looks much like its name, on a backdrop of leaf litter.
Photo via Wikimedia Commons, by user Suryaceg.

"Roots' Remembrance" began life in my head as nothing more than its central concept: what if someone got intrusive thoughts after eating fruit, and concluded their garden was trying to communicate? I gradually built the setting, plot, and science-fictional mechanisms around this idea. The main character is technical, but neither a botanist nor a detective. I wanted him to have enough education to seriously investigate his discoveries, while still feeling out of his depth, and approaching the communities he hopes will accept his findings as an outsider. Both prongs of the story are, in a sense, about reactions to uncertainty: the protagonist faces unwarranted skepticism despite evidence he has gathered, and unwarranted suspicion birthed in a lack of evidence. Yet whether he feels qualified or not, he seizes his opportunities and does what he can.

This story took a long and bumpy path to publication. A different magazine's editor attempted a rewrite of it, but declined to publish when it became clear that they and I had irreconcilable differences in our plans for the story. A version of it was critiqued by David Brin (!) and several other authors who did not provide their names. Suggestions from all of these people contributed to making "Roots' Remembrance" better, and I thank them, though I didn't do exactly what any of them wanted.

At the end of that road, it's a major honor to have one of my works find a home in Analog. Should you pick it up, I hope you enjoy it!