Now that your AI UX testing agents are moving inside a grid, it’s time to visualize them in action. Mesa provides a built-in browser-based viewer to help simulate and debug user flows.
Step 1: Create the Visual Server
In server.py
, set up the visualization:
from mesa.visualization.modules import CanvasGrid
from mesa.visualization.ModularVisualization import ModularServer
from mesa.visualization.UserParam import UserSettableParameter
from model import UXModel
from agent import UserAgent
def agent_portrayal(agent):
portrayal = {
"Shape": "circle",
"Color": "blue",
"Filled": "true",
"r": 0.5
}
return portrayal
grid = CanvasGrid(agent_portrayal, 10, 10, 500, 500)
server = ModularServer(
UXModel,
[grid],
"AI UX Testing - User Simulation",
{"num_agents": 5, "width": 10, "height": 10}
)
Step 2: Launch the Visualization
Update your run.py
to use the server:
from server import server
server.port = 8521
server.launch()
Run the app:
python run.py
This will open a new tab in your browser at http://127.0.0.1:8521
where you can see the agents move in real time during your AI UX testing simulation.
Understanding the Output
Each circle on the grid represents a user navigating your app. This is a simplified UX simulation, but it’s foundational for more complex actions like clicking buttons, filling out forms, or getting stuck on steps—coming in the next tutorials.
Customize the Behavior
Want to test user frustration? Try:
- Adding “error” zones in the grid
- Changing movement patterns when agents hit a boundary
- Simulating dwell time or delays
Up Next: Simulating Real Tasks
Tomorrow, we’ll simulate real user tasks like logging in or clicking through a signup process using rewards and reinforcement learning.
Tag: #AIUXTesting #PythonVisualization #UXSim