Robert has moved into a new house. He has a number N of boxes from
his previous home. Each box bi has a volume vi. He must fit those boxes
in 2 rooms of the house and is not allowed to put any box outside of
those two rooms yet. The volume of the room1 is V1 and the volume of the
room2 is V2. The total volume of the boxes (v1+…+vn) is greater than
V1+V2. So, He is not going to be able to fit all the boxes, but he wants
to maximize the numbers of boxes in the 2 rooms (or minimize the
boxes left outside of the rooms). He is an expert in robotics and got 2
robotic agents that can do the moving for them. The agents can move
around the 2 rooms and the house, they can detect the boxes and their
size with their sensors and can get them and place them in the rooms.
The
successor function embedded in the software that controls the agents
has been defined to pick up boxes at random and place them in any of the
rooms also at random until there is no more space in the rooms. You
need to define a new successor function by using an algorithm we have
covered in class and hand the implementation to Robert, so he can insert
it in the software that control the robots.
- Explain why the robots are not doing a good job when choosing the boxes at random
- What kind of agents are in the system? Why?
- Formulate the problem in detail. Describe well the possible states. (Draw a generic tree)
- Define the kind of environment Robert is dealing with (continuos? , deterministic?…..
- Define the PEAS.
- According
to the problem, the goal formulation and the states define an algorithm
that implements the successor function. (Choose one of the algorithms
we saw in class). - Implement the pseudocode algorithm in a
high-level language. (Java, C++, Python, C) . Pay attention to the data
structure you choose to keep the states the function is going through. - Comment the complexity, the completeness and the results of the algorithm.
Submit just one file with all the info (code included).


0 comments