From a093dc93e72f72d46ff09254a3927679dd159598 Mon Sep 17 00:00:00 2001 From: Berack96 Date: Thu, 7 Dec 2023 10:23:56 +0100 Subject: [PATCH] Init form Local - Puzzle8 already implemented - Tris started - Empty Main --- .gitignore | 3 + ProgettoImplementativo_A_22-23.pdf | Bin 0 -> 129418 bytes pom.xml | 16 ++ src/main/java/net/berack/upo/ai/Main.java | 8 + .../net/berack/upo/ai/problem1/AStar.java | 159 ++++++++++++ .../net/berack/upo/ai/problem1/Puzzle8.java | 231 ++++++++++++++++++ .../java/net/berack/upo/ai/problem2/Tris.java | 29 +++ 7 files changed, 446 insertions(+) create mode 100644 ProgettoImplementativo_A_22-23.pdf create mode 100644 pom.xml create mode 100644 src/main/java/net/berack/upo/ai/Main.java create mode 100644 src/main/java/net/berack/upo/ai/problem1/AStar.java create mode 100644 src/main/java/net/berack/upo/ai/problem1/Puzzle8.java create mode 100644 src/main/java/net/berack/upo/ai/problem2/Tris.java diff --git a/.gitignore b/.gitignore index 8a30d25..c0e1299 100644 --- a/.gitignore +++ b/.gitignore @@ -396,3 +396,6 @@ FodyWeavers.xsd # JetBrains Rider *.sln.iml + +# CUSTOM +target \ No newline at end of file diff --git a/ProgettoImplementativo_A_22-23.pdf b/ProgettoImplementativo_A_22-23.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d5d91342fab214994bc67f13779ded9068a7be78 GIT binary patch literal 129418 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�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 + + 4.0.0 + + net.berack.upo + upo-ai + 1.0-SNAPSHOT + + + 1.17 + 1.17 + + + \ No newline at end of file diff --git a/src/main/java/net/berack/upo/ai/Main.java b/src/main/java/net/berack/upo/ai/Main.java new file mode 100644 index 0000000..b801ed0 --- /dev/null +++ b/src/main/java/net/berack/upo/ai/Main.java @@ -0,0 +1,8 @@ +package net.berack.upo.ai; + +public class Main { + + public static void main(String[] args) { + + } +} \ No newline at end of file diff --git a/src/main/java/net/berack/upo/ai/problem1/AStar.java b/src/main/java/net/berack/upo/ai/problem1/AStar.java new file mode 100644 index 0000000..6dca0d5 --- /dev/null +++ b/src/main/java/net/berack/upo/ai/problem1/AStar.java @@ -0,0 +1,159 @@ +package net.berack.upo.ai.problem1; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Objects; +import java.util.PriorityQueue; +import java.util.function.BiFunction; +import java.util.function.Function; + +/** + * Una classe che risolve problemi utilizzando l'algoritmo A*. + * @author Berack96 + * @param State la classe degli stati in cui si trova il problema da risolvere + * @param Action la classe di azioni che si possono compiere da uno stato e l'altro + */ +public class AStar { + + private Function actions; + private BiFunction transition; + + private BiFunction heuristic; + private TriFunction cost; + + /** + * Crea una istanza dell'algoritmo A* con una funzione di azioni possibili da compiere dato uno stato + * e una funzione di transizione che dato uno stato permette di raggiungerne un'altro tramite un'azione. + * + * @param actions la funzione che da uno stato permette di vedere le possibili azioni da compiere + * @param transition la funzione di tansizione che ci permette di raggiungere uno stato da un'altro tramite un'azione + */ + public AStar(Function actions, BiFunction transition) { + this.actions = Objects.requireNonNull(actions); + this.transition = Objects.requireNonNull(transition); + + this.cost = (s1,s2, a) -> 1; + this.heuristic = (s1,s2) -> 0; + } + + /** + * Permette di impostare la funzione di costo che indica, facendo un'azione su uno stato e raggiungendone un'altro, quanto devo spendere, ovvero il costo. + * Di default la funzione di costo equivale sempre ad 1 + * @param cost la funzione di costo + * @return se stesso in modo da poter concatenare i vari set (un pò come una factory) + */ + public AStar setCost(TriFunction cost) { + this.cost = Objects.requireNonNull(cost); + return this; + } + + /** + * Permette di impostare una funzione di transizione che indica, facendo un'azione su uno stato, a quale stato possiamo arrivare. + * @param transition la funzione di transizione + * @return se stesso in modo da poter concatenare i vari set (un pò come una factory) + */ + public AStar setTransition(BiFunction transition) { + this.transition = Objects.requireNonNull(transition); + return this; + } + + /** + * Permette di impostare una funzione euristica che indica, prendendo uno stato e uno stato goal, la distanza di costo approssimata per arrivare al goal + * @param heuristic la funzione euristica + * @return se stesso in modo da poter concatenare i vari set (un pò come una factory) + */ + public AStar setHeuristic(BiFunction heuristic) { + this.heuristic = Objects.requireNonNull(heuristic); + return this; + } + + /** + * Permette di impostare una funzione che indica, a partire da uno stato, quali sono le azioni che posso svolgere + * @param actions la funzione di azioni + * @return se stesso in modo da poter concatenare i vari set (un pò come una factory) + */ + public AStar setActions(Function actions) { + this.actions = Objects.requireNonNull(actions); + return this; + } + + /** + * Permette di risolvere il problema dopo aver indicato le varie funzioni. + * In input viene richiesto uno stato iniziale e uno stato goal da raggiungere dallo stato corrente. + * La funzione utilizzata per il raggiungimento dello stato goal è equals(), quindi è richiesto che + * la classe State abbia implementato correttamente la funzione equals(). + * + * @param initial lo stato corrente + * @param goal lo stato da raggiungere + * @return una sequenza di azioni per poter raggiungere lo stato goal oppure null se non è possibile + */ + public List solve(State initial, State goal) { + Objects.requireNonNull(initial); + Objects.requireNonNull(goal); + + NodeState found = null; + var list = new PriorityQueue(); + list.add(new NodeState(null, initial, null, 0)); + + while(list.size() > 0) { + var current = list.poll(); + if(current.state.equals(goal)) { + found = current; + break; + } + + for(var action : this.actions.apply(current.state)) try { + + var next = this.transition.apply(current.state, action); + + var cost = this.cost.apply(current.state, next, action); + var dist = this.heuristic.apply(next, goal); + + list.add(new NodeState(current, next, action, current.cost + cost + dist)); + + } catch (Exception ignore) {} + } + + if(found == null) return null; + + var path = new ArrayList(); + while(found != null) { + path.add(found.action); + found = found.parent; + } + + Collections.reverse(path); + return path; + } + + + /** + * Classe privata per mantenere i dati all'interno della PriorityQueue. + */ + private class NodeState implements Comparable { + NodeState parent; + State state; + Action action; + int cost; + + NodeState(NodeState parent, State state, Action action, int cost) { + this.parent = parent; + this.state = state; + this.action = action; + this.cost = cost; + } + + @Override + public int compareTo(NodeState other) { + return this.cost - other.cost; + } + } + + /** + * Interfaccia privata per poter indicare una TriFunction, ovvero una funzione che accetta in input 3 parametri + */ + @FunctionalInterface private interface TriFunction { + R apply(T t, U u, V v); + } +} diff --git a/src/main/java/net/berack/upo/ai/problem1/Puzzle8.java b/src/main/java/net/berack/upo/ai/problem1/Puzzle8.java new file mode 100644 index 0000000..97be53c --- /dev/null +++ b/src/main/java/net/berack/upo/ai/problem1/Puzzle8.java @@ -0,0 +1,231 @@ +package net.berack.upo.ai.problem1; + +import java.util.Arrays; +import java.util.Collections; +import java.util.Iterator; +import java.util.List; +import java.util.Objects; + +/** + * Classe utilizzata per la rappresentazione del problema delle 8 tessere. + * In essa ci sono dei metodi base per il modello del problema tra cui getter e setter. + * Oltre a questi ci sono dei metodi per la risoluzione del problema sia manuale, + * che automatico tramite l'algoritmo A* + * + * @author Berack96 + */ +public class Puzzle8 implements Iterable { + public static final int LENGTH = 3; + + /** + * Possibili movimenti della tessera "vuota" + */ + public enum Move { + UP, + DOWN, + LEFT, + RIGHT + } + + private int[] puzzle = new int[LENGTH * LENGTH]; + private int blank = 0; + + /** + * Genera una nuova istanza del problema con le tessere posizionate in modo casuale. + */ + public Puzzle8() { + var values = Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8); + Collections.shuffle(values); + + for(var i = 0; i < this.puzzle.length; i++) { + this.puzzle[i] = values.get(i).intValue(); + if(this.puzzle[i] == 0) this.blank = i; + } + } + + /** + * Genera una nuova istanza del problema con le tessere posizionate come il + * problema passato in input e dopo aver eseguito la mossa indicata. + * + * @param original il puzzle di partenza che si vuole copiare + * @param move la mossa da eseguire + * + * @throws UnsupportedOperationException nel caso la mossa non sia disponibile. + */ + public Puzzle8(Puzzle8 original, Move move) { + Arrays.copyOf(original.puzzle, this.puzzle.length); + this.blank = original.blank; + + this.move(move); + } + + /** + * Inizializza il problema con gli interi passati. + * L'array inserito deve essere di 9 valori dato che la matrice è di 3x3. + * I valori saranno posizionati a tre a tre nella matrice, quindi i primi 3 saranno nella + * prima riga, i secondi tre nella seconda e i terzi saranno nella terza riga. + * Nel caso in cui vengano passati meno valori una eccezione verrà sollevata. + * Gli elementi inseriti devono essere UNICI e compresi tra 0 e 8 estremi inclusi. + * + * @param values i valori a cui inizializzare il problema. + * @throws IllegalArgumentException nel caso in cui + */ + public Puzzle8(int...values) { + if(values == null || values.length != LENGTH*LENGTH) + throw new IllegalArgumentException("The size of the array must be " + LENGTH*LENGTH); + + var check = new int[LENGTH * LENGTH]; + Arrays.copyOf(values, values.length); + + for(var i = 0; i < this.puzzle.length; i++) { + var curr = this.puzzle[i]; + var ok = true; + + ok = (curr >= 0 && curr < check.length); + if(ok) { + if(curr == 0) this.blank = i; + + check[curr] += 1; + ok = (check[curr] == 1); + } + + if(!ok) throw new IllegalArgumentException("The input values must be UNIQUE integers between 0 and " + (LENGTH*LENGTH -1) + " inclusive"); + } + } + + + /** + * Indica la grandezza della tavoletta che contiene le tessere. + * Essa è una matrice 3x3. + * + * @see #LENGTH + * @return la grandezza del lato della matrice + */ + public int size() { + return LENGTH; + } + + /** + * Permette di ricevere il valore della tessera posizionata nella zona richiesta. + * La zona è indicata come una matrice 3x3 dove la prima zona si trova nelle coordinate + * 0x0 e l'ultima nella zona 2x2. + * Il valore varia da 1 a 8 ed il valore della tessera "vuota" equivale a 0. + * + * @param x la prima coordinata, i possibili valori sono 0, 1, 2 + * @param y la seconda coordinata, i possibili valori sono 0, 1, 2 + * @return il valore della tessera nelle coordinate selezionate + */ + public int get(int x, int y) { + return puzzle[x * LENGTH + y]; + } + + /** + * Genera un array di mosse disponibili a partire dalla configurazione corrente. + * Questo metodo esiste dato che non tutte le mosse sono disponibili in tutti i casi. + * per esempio se mi trovo nell'angolo in basso a dx potrò fare solo + * le mosse UP e LEFT. + * + * @return un array di mosse disponibili + */ + public Move[] availableMoves() { + return switch(this.blank) { + case 0 -> new Move[] { Move.DOWN, Move.RIGHT }; + case 1 -> new Move[] { Move.DOWN, Move.LEFT, Move.RIGHT }; + case 2 -> new Move[] { Move.DOWN, Move.LEFT }; + case 3 -> new Move[] { Move.UP, Move.DOWN, Move.RIGHT }; + case 4 -> new Move[] { Move.UP, Move.DOWN, Move.LEFT, Move.RIGHT }; + case 5 -> new Move[] { Move.UP, Move.DOWN, Move.LEFT }; + case 6 -> new Move[] { Move.UP, Move.RIGHT }; + case 7 -> new Move[] { Move.UP, Move.LEFT, Move.RIGHT }; + case 8 -> new Move[] { Move.UP, Move.LEFT }; + default -> new Move[] {}; + }; + } + + /** + * Indica se la mossa inserita sia una mossa valida, dato che non tutte le mosse sono disponibili in tutti i casi. + * per esempio se mi trovo nell'angolo in basso a dx potrò fare solo le mosse UP e LEFT. + * @param move la mossa da testare + * @return VERO se la mossa è valida altrimenti falso + */ + public boolean isValidMove(Move move) { + return switch(move) { + case UP -> this.blank >= LENGTH; + case DOWN -> this.blank <= 2*LENGTH - 1; + case LEFT -> this.blank % LENGTH != 0; + case RIGHT -> this.blank % LENGTH != LENGTH - 1; + }; + } + + /** + * Muove la tessera "vuota" in una delle direzioni indicate. + * Essa viene scambiata con una delle tessere adiacenti. + * + * Nota: non tutte le mosse sono disponibili in tutti i casi. + * per esempio se mi trovo nell'angolo in basso a dx potrò fare solo + * le mosse UP e LEFT. + * + * @see #availableMoves() + * @see #isValidMove(Move) + * @see #solve() + * + * @param move + * @throws UnsupportedOperationException nel caso in cui la mossa inserita non sia valida + */ + public void move(Move move) { + if(!this.isValidMove(move)) + throw new UnsupportedOperationException("Move not available"); + + var other = switch(move) { + case UP -> this.blank - LENGTH; + case DOWN -> this.blank + LENGTH; + case LEFT -> this.blank - 1; + case RIGHT -> this.blank + 1; + }; + + this.puzzle[this.blank] = this.puzzle[other]; + this.puzzle[other] = 0; + this.blank = other; + } + + /** + * Usa l'algoritmo A* per la soluzione del problema + * @param goal lo stato goal in cui arrivare + * @return una sequenza di mosse per poter risolvere il problema o null se non risolvibile + */ + public List solve(Puzzle8 goal) { + var aStar = new AStar(Puzzle8::availableMoves, (p, m) -> new Puzzle8(p, m)) + .setHeuristic((p1, p2) -> { + var sum = 0; + var n = p1.puzzle.length; + var index = new int[n]; + + for(var i = 0; i < n; i++) index[p1.puzzle[i]] = i; + for(var i = 0; i < n; i++) { + var curr = p2.puzzle[i]; + var i2 = index[curr]; + + sum += Math.abs((i / LENGTH) - (i2 / LENGTH)) + Math.abs((i % LENGTH) - (i2 % LENGTH)); + } + return sum; + }); + + return aStar.solve(this, Objects.requireNonNull(goal)); + } + + + @Override + public boolean equals(Object obj) { + if(!obj.getClass().isInstance(this)) return false; + return Arrays.equals(((Puzzle8) obj).puzzle, this.puzzle); + } + + @Override + public Iterator iterator() { + return new Iterator() { + int current = 0; + @Override public boolean hasNext() { return current < puzzle.length; } + @Override public Integer next() { return puzzle[current++]; } + }; + } +} diff --git a/src/main/java/net/berack/upo/ai/problem2/Tris.java b/src/main/java/net/berack/upo/ai/problem2/Tris.java new file mode 100644 index 0000000..03816bf --- /dev/null +++ b/src/main/java/net/berack/upo/ai/problem2/Tris.java @@ -0,0 +1,29 @@ +package net.berack.upo.ai.problem2; + +import java.util.Arrays; + +public class Tris { + public static final int LENGTH = 3; + + /** + * Possibili stati delle zone + */ + public enum State { + EMPTY, + VALUE_X, + VALUE_O + } + + private State[] tris = new State[LENGTH * LENGTH]; + + /** + * Crea una nuova istanza del gioco con tutti gli spazi vuoti + */ + public Tris() { + Arrays.fill(tris, State.EMPTY); + } + + public Tris(Tris current, State state, int x, int y) { + + } +}