WO2025136201A1 - Computer-implemented allocation of objects within a confined space - Google Patents
Computer-implemented allocation of objects within a confined space Download PDFInfo
- Publication number
- WO2025136201A1 WO2025136201A1 PCT/SE2024/051098 SE2024051098W WO2025136201A1 WO 2025136201 A1 WO2025136201 A1 WO 2025136201A1 SE 2024051098 W SE2024051098 W SE 2024051098W WO 2025136201 A1 WO2025136201 A1 WO 2025136201A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- space
- objects
- confined
- data
- confined space
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47B—TABLES; DESKS; OFFICE FURNITURE; CABINETS; DRAWERS; GENERAL DETAILS OF FURNITURE
- A47B61/00—Wardrobes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0639—Locating goods or services, e.g. based on physical position of the goods or services within a shopping facility
Definitions
- the space allocation instructions 50 may take into account the space availability data of several confined spaces. Said several confined spaces can be scanned in conjunction to one another, or they could have been prescanned and stored in a device or cloud-based service. The optimized space allocations of a predetermined set could thus be based on a plurality of confined spaces, and space allocation actions can be carried out between the confined spaces of the plurality of confined spaces. Furthermore, the stored space availability data of the plurality of confined spaces can be utilized to quickly allocate a further object whose space occupancy data is acquired at a later time.
- the method 100 further involves, in response to the comparison indicating a suboptimal allocation of the objects 20 within the confined space 10, determining 140 an allocation scheme indicating one or more space optimization actions for arranging the confined space 10 including the objects 20 into one of the optimized space allocations of the predetermined set.
- the method 100 further involves providing 150 space allocation instructions based on the allocation scheme.
- FIG. 3 a computer-implemented method 100 is shown according to an exemplary flowchart. Additional attributes, which are to be described in form and function with more details below, are obtained at 105 as user inputs, or from a cloudbased service 48.
- the space occupancy data and the space availability data are obtained at steps 110 and 120, respectively.
- the datasets pertaining to the space occupancy data and space availability data may be obtained at steps 110, 120, for instance by way of the user 30 using the image capturing device 40.
- the space occupancy data and/or the space availability data are transmitted from a cloud-based service 48, according to the methods of transmitting data mentioned in conjunction with FIG. la.
- the steps 110, 120 of obtaining the space occupancy data and space availability data may include an additional step of identifying the one or more objects in the confined space and/or the dimensionally limiting structures of the confined space (i.e. walls, floors or ceilings), and tagging the corresponding 3D data as one of a wall, floor, ceiling or object.
- the predetermined scene is “optimized” in the sense that the virtual objects confined in the virtual confined space are arranged in a more space efficient manner compared to the prevailing scene. By way of the comparison, it is accordingly possible to establish a relationship between an inadequate (i.e., suboptimal) current arrangement scheme, and a more adequate (i.e., optimal) predetermined arrangement scheme.
- the space availability data and space occupancy data may be stored for future use, for example if the user wishes to further objects or confined spaces to the space occupancy and availability data, respectively.
- the image capturing device 40 is further configured to determine, at step 140, the allocation scheme.
- the allocation scheme indicates one or more space optimization actions for arranging the objects in the confined space.
- the term “space occupancy data” should be understood as involving a virtual representation of a space that an object physically holds.
- the term “space availability data” should be understood as involving a virtual representation of an available space inside a confined space into which an object can be physically arranged.
- the virtual representations may be in the form of data stored in a respective data structure in a memory, such as lists, hash tables, sets, and the like. Having a structural arrangement of the space occupancy data and space availability data may enable comparisons to be conducted between the respective data structures.
- the space availability data is seen as a bin, and the space occupancy data to be items of different sizes/dimensions that may fit inside the bin.
- Comparing at 130 and determining at 140 an allocation scheme in response to the comparison indicating a suboptimal allocation may involve applying one or more data comparison methods.
- the data comparison methods may be one or more of indexbased mapping, key-value pair mapping, iterative comparison, hashing, equality comparison and custom comparison functions.
- a suboptimal allocation indicates that the prevailing scene is different from the one or more optimized space allocations in the predetermined set.
- the indication of a suboptimal allocation may be conditioned by a failure to meet a predefined similarity threshold value.
- the predefined similarity threshold may be determined by machinelearning algorithms, statistical methods, or be predefined by an external user.
- the predefined similarity threshold value may be collected at any step of the method of the present disclosure according to the aforementioned communication methods.
- the predefined similarity threshold value may be calculated by a user device, or at a remote location, such as by a cloud-computing service.
- the predefined similarity threshold value may be formerly determined by the optimized space allocation database manager previously mentioned.
- the predefined similarity threshold value may indicate a degree of minimum required similarity between the prevailing scene and the one or more optimized space allocations.
- the degree of minimum required similarity may be a number or a percentage of objects in the prevailing scene being placed according to the corresponding placements of the one or more optimized space allocations.
- the predefined similarity threshold value could take several factors into account. For example, it could be the case that the placement of objects in the prevailing scene is different from the placement of objects in one or more of the optimized space allocations. It could also be the case that the predefined similarity threshold favors a certain optimized space arrangement that has been associated with further information.
- the prevailing scene must reach a second predefined similarity threshold specifically when compared to the favored optimized space arrangement, the second predefined similarity threshold being higher than the first predefined similarity threshold. It could further be the case that the predefined similarity threshold is not met if any objects are placed outside of the confined space in the prevailing scene.
- the predetermined set may include one or more optimized space allocations. What this means is that different optimized space allocations may be better suited for different scenarios or contexts, such as different types of objects, spaces, or other attributes. Determining 140 the allocation scheme may be based on one or more of these attributes which have been obtained at step 105.
- the attributes are seasonal attributes.
- the seasonal attributes may be obtained from calendar data.
- the seasonal attributes may be determined by taking into account that seasonally dependent items are to be placed corresponding to the current season. For example, footballs or tennis rackets may be placed in an easily accessible place if the current season is summer or spring, and a less accessible place if the current season is winter. This is due to the fact that it is arguably more likely that football or tennis be played during the summer season.
- larger jackets may be placed in an easily accessible place if the current season is winter, and a less accessible place during the other seasons. This is due to the fact that it is typically colder during winter compared to summer seasons, which may necessitate warmer clothing.
- the attributes are geographical attributes.
- the geographical attributes could be a set of coordinates, or the name of location such as a city name. Such a location could, for example, be in the vicinity of specific geographical entities such as lakes or mountains. There could also be an increased risks associated with the geographical location, such as tornadoes or earthquakes.
- the allocation scheme may be determined by taking into account that no mountains are in the vicinity of the user, and that mountaineering gear should be placed in a less accessible part of the confined space.
- heavy objects could be arranged in a lower portion of the confined space, so that they don’t risk falling on someone during an earthquake.
- the attributes are life-situation based attributes.
- the lifesituation based attributes could be user age, disabilities, the presence of children, the presence of pets, or any other useful information that regards the specific needs of the user pertaining to life-situation based attributes. For example, if there is a presence of pets, shoes or tennis balls could be arranged such that they are not accessible to the pet, and if there is a presence of children sharp objects could be arranged such that they are not accessible to the child.
- Another alternative life-situation based attribute could be the necessity of using furniture, having functions other than as a storage area, as a storage area.
- a dining table could be used for both dining and working from home. The allocation scheme may then be based on a type of purpose of the object, such as dining/working objects and what to arrange on the table when used as a dining area or work area, respectively.
- the attributes are time-based attributes such as the time of day or time to or from a certain event. For example, if the allocation scheme is determined late at night, the user might not want to spend too much time rearranging the objects, and the allocation scheme may thus incorporate a time-based attribute which leads to fewer possible space allocation instructions being recommended.
- the attributes are weather-based attributes.
- the weather-based attributes could be temperature, risk of rain or snowfall, humidity, light exposure, or the prevalence of airborne allergenic material. For example, if there is a high amount of pollen in the area, as indicated by weather reports, the allocation scheme may base the arrangement of medicine on a need for easy access. In a further example, if there is heavy risk of rain for the coming weeks, the allocation scheme may be determined by taking into account that rain jackets should be easily accessible.
- the attributes are proximity -based attributes.
- the proximity based attributes can include distance between space occupancy data calculated from location values of the space occupancy or space availability data. The comparison of space occupancy data and space availability data can thus take into account that space occupancy data of similar objects are mapped in close proximity to each other in the space availability data.
- the attributes are priority -based attributes.
- the priority-based attributes can include a prioritization order list that indicates in what order the objects are to be moved, such as an object that is to be stored close to a back wall of a closet should be moved first, and object to be hidden, such as a gift wrapping, should be stored further back and moved secondly.
- the attributes are usage-based attributes.
- the usage-based attributes may be based on a predicted future usage.
- the prediction may be determined by recent inputs, predicted body changes, or predicted future interests. For example, if young users’ body is predicted to increase in length, the space allocation instructions may include removal of such items.
- the program could also take into account recent trends and recommend the removal of items that are predicted to go out of fashion based on such trends.
- the prediction may be determined by a machine-learning algorithm.
- Determining the allocation scheme may involve mapping the space occupancy data of the objects to the space availability data of the confined space such that a representation of said space occupied by the objects is assigned to a representation of said available space within the confined space.
- the space occupancy data is mapped to the space availability data in order to map at least some objects to the confined space.
- a mapping of space occupancy data may be understood as a movement of an object from a first location (within or outside of the confined space) to a second location inside the confined space.
- the mapping is performed by applying a packing algorithm until a convergence criterion is reached.
- the packing algorithm may be an intelligent 3D packing algorithm.
- the packing algorithm may be based on exploration-based algorithms, such as one or more of Rapidly exploring Random Tree algorithm (RRT), RRT*, Real-Time RRT* (RT-RRT*), RRT*-Smart, Dijkstra’s algorithm, First Fit (FF), Next Fit (NF), Best Fit (BF), Worst Fit (WF), Next Fit Decreasing (NFD), First Fit Decreasing (FFD), Guillotine Cutting and Shelf Algorithm, Heuristic Algorithm, Bin Packing Algorithm, Circle Packing Algorithm, hybrid algorithms, or the like.
- the packing algorithm may in some examples be a recursive function.
- mappings By performing mappings according to the above-explained approaches, several technical benefits may be offered, including efficient utilization of computational resources, reduced memory consumption, improved locality of reference, scalability, fault tolerance, easier debugging, and potential for incremental sorting. These benefits make mappings a more efficient and adaptable approach to sorting, particularly for large datasets or systems with limited memory resources. This may be advantageous for certain confined spaces and objects being associated with larger number of collisions.
- the memory chip 320 stores the computer program product 310 which is programmed with computer program code (instructions) that when loaded into a processor device, will perform a method, for instance the method 100 explained with reference to FIG. 2 or FIG. 3.
- the USB stick 300 is arranged to be connected to and read by a reading device for loading the instructions into the processor device.
- a computer-readable medium can also be other mediums such as compact discs, digital video discs, hard drives or other memory technologies commonly used.
- the computer program code (instructions) can also be downloaded from the computer-readable medium via a wireless interface to be loaded into the processing device.
- the computerized system 200 may include at least one computing device having the processor device 230.
- a system bus 240 may provide an interface for system components including, but not limited to, the memories 235 and the processor devices 230.
- the processor device 230 may include any number of hardware components for conducting data or signal processing or for executing computer code stored in the memories.
- the processor device 230 may, for example, include a general-purpose processor, an application specific processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit containing processing components, a group of distributed processing components, a group of distributed computers configured for processing, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
- the processor device 230 may further include computer executable code that controls operation of the programmable device.
- the system bus 240 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of bus architectures.
- the memories 235 may be one or more devices for storing data and/or computer code for completing or facilitating methods described herein.
- the memories 235 may include database components, object code components, script components, or other types of information structure for supporting the various activities herein. Any distributed or local memory device may be utilized with the systems and methods of this description.
- the memories 235 may be communicably connected to the processor device 230 (e.g., via a circuit or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein.
- the memories may include non-volatile memories (e.g., read-only memory (ROM), erasable programmable read-only memories (EPROM), electrically erasable programmable readonly memories (EEPROM), etc.), and volatile memories (e.g., random-access memory (RAM)), or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a computer or other machine with a processor device.
- a basic input/output system (BIOS) may be stored in the non-volatile memories and can include the basic routines that help to transfer information between elements within the computer system.
- the computerized system 200 may interact with network devices 260 via the I/O interfaces 250, or the I/O ports 255. Through the network devices 260, the computerized system 200 may interact with a network. Through the network, the computerized system 200 may be logically connected to remote computers. Through the network, the serverside platform 210 may communicate with the client-side platform 220, as described above.
- the networks with which the computerized system 200 may interact include, but are not limited to, a local area network (LAN), a wide area network (WAN), and other networks.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A computer-implemented method (100) of arranging objects (20) in a confined space by obtaining (110; 120) space availability data and space occupancy data indicating dimensions of the confined space and objects respectively, and comparing (130) the prevailing scene to a predetermined set comprising one or more optimized space allocations, the optimized space allocations indicating a more optimized way of arranging the confined space (10). Upon the comparison indicating a suboptimal arrangement of the objects (20) within the confined space (10) the method further involves determining (140) an allocation scheme and providing (150) space allocation instructions to a user based on said allocation scheme.
Description
COMPUTER-IMPLEMENTED ALLOCATION OF OBJECTS WITHIN A
CONFINED SPACE
TECHNICAL FIELD
The present invention relates to a computer-implemented method for allocation of objects within a confined space. The present invention also relates to an associated computerized system, storage medium and computer program product.
BACKGROUND
Storage space arrangement has always been a challenge, especially when dealing with frequently changing or diverse assortments of objects. Conventional storage solutions often fail to provide a desired arrangement when it comes to reorganizing the interior of storage spaces, such as wardrobes.
While there are various prior art methods available for arranging objects in storage spaces, these approaches fall short in adequately addressing the complexities associated with storage space arrangement, leading to inefficient usage of space and difficulties in locating and accessing stored objects. The prior art in storage space arrangement primarily focuses on static arrangements and predetermined configurations for objects within a storage space. Traditional solutions offer strategies for organizing objects based on their sizes, types, or categories. For instance, some systems suggest using designated shelves or compartments for specific object categories, such as shoes, garments, and accessories. However, these static arrangements often become impractical when the storage space needs to be reorganized due to changing needs or evolving inventory. Furthermore, existing methods lack adaptability to the dynamic nature of storage spaces. Most prior art solutions do not account for the varying sizes and shapes of objects, as well as the potential need for frequent rearrangements to accommodate new acquisitions or seasonal changes. This limitation results in poor space utilization and frequent frustration for users who must engage in trial-and-error rearrangements to fit their objects within the existing storage configuration.
Therefore, there is a need for an innovative approach that enables users to easily and effectively reorganize their storage spaces while accommodating diverse object
assortments and maximizing space utilization. To this end, the present inventors are presenting improvements herein that seek to eliminate, or at least mitigate, one or more of the above-mentioned deficiencies of the prior art.
SUMMARY
The present invention seeks to mitigate, alleviate eliminate or circumvent one or more of the above identified deficiencies in the art and disadvantages singly or in any combination by providing in a first aspect a computer-implemented method for providing space allocation instructions for a plurality of objects which are to be placed in a confined space. The method comprises the steps of: obtaining space availability data and space occupancy data, wherein the space availability data is indicative of available space in the confined space and the space occupancy data is indicative of space occupied by objects, comparing the obtained space availability data and the obtained space occupancy data to corresponding space availability data and space occupancy data of a predetermined set comprising one or more optimized space allocations, in response to the comparison indicating a suboptimal allocation of objects within the confined space, determining an allocation scheme indicating one or more space optimization actions for arranging the confined space including the objects into one of the optimized space allocations of the predetermined set, and providing instructions to a user based on the allocation scheme. This provides a more versatile and efficient way of arranging items in a confined space, as the instructions are based on a large amount of possible arrangements wherein the most optimal arrangement found is provided to a user.
In one or more embodiments, the allocation scheme is determined by mapping the space occupancy data of the objects to the space availability data of the confined space such that a representation of the space occupied by the objects is assigned to a representation of the available space within the confined space.
In one or more embodiments, the mapping is performed by applying a packing algorithm until a convergence criterion is reached.
In one or more embodiments, the convergence criterion is determined by the one or more optimized space allocations of the predetermined set to which the obtained space availability data and space occupancy data are compared.
In one or more embodiments, the comparison indicates the suboptimal allocation upon a difference between the space availability data of the confined space and the space availability data of one of the optimized space allocations, and a difference between the space occupancy data of the objects and the space occupancy data of one of the optimized space allocations, respectively, exceeding a predefined similarity threshold value. These embodiments yield a more versatile way of determining an allocation scheme.
In one or more embodiments, the objects comprise a storage structure removably attachable to an interior of the confined space.
In one or more embodiments, the objects comprise one or more garments, accessories, recreational products, household products, sports equipment, and home furnishing accessories such as vases and tablecloths. As such, a large number of different types of objects may be arranged in the confined space according to the method.
In one or more embodiments, at least some of the plurality of objects from which the space occupancy data is obtained are arranged in the confined space
In one or more embodiments, at least some of the plurality of objects from which the space occupancy data is obtained are arranged outside the confined space.
In one or more embodiments, the confined space is a wardrobe, a closet, a chest, an armoire, a chifforobe or a cabinet. The computer-implemented method thus becomes more versatile as a large amount of different confined spaces can be handled without prior knowledge of their dimensions.
In one or more embodiments, the space occupancy data and/or the space availability data is obtained through scanning of the objects or the confined space, respectively.
In one or more embodiments, the space availability data and/or the space occupancy data is obtained through the retrieval of a 3D model of the objects or the confined space, respectively.
In one or more embodiments, the space occupancy data and/or the space availability data is obtained through the retrieval of a 3D model of the objects or the confined space, respectively.
In one or more embodiments, the space allocation instructions comprise recommendations for physically carrying out said space optimization actions of the confined space.
In one or more embodiments, the method comprises providing the space allocation instructions as visual or auditory cues through a user interface.
In one or more embodiments, the space optimization actions comprise one or more: switching between objects, removals of objects, replacements of objects, reposition of objects, consolidation or repacking of objects, rearrangements of objects, and additions of new objects.
In one or more embodiments, determining the allocation scheme is further based on one or more: seasonal attributes, geographical attributes, life-situation based attributes, proximity-based attributes, time-based attributes, object attributes, usagebased attributes, priority based attributes, and weather-based attributes. The allocations schemes are thereby more adapted to the needs of a specific user or use case.
In a second aspect, a computerized system is provided. The computerized system comprises a processor configured to perform the functionality of the method according to the first aspect.
In a third aspect, a non-transitory computer-readable storage medium is provided. The computer-readable storage medium comprises instructions, which when executed by one or more processors of a computerized system, cause the processor to perform the functionality of the method according to any one of the embodiments.
In a fourth aspect, a computer program product is provided. The computer program product comprises computer code for performing the method according to the first aspect or any of the embodiments being dependent thereon when the computer program code is executed by a processing device.
Further advantageous features of the invention are elaborated in embodiments disclosed herein. In addition, advantageous features of the invention are defined in the dependent claims. All references to "a/an/the [element, device, component, means, step,
etc.]" are to be interpreted openly as referring to at least one instance of the element, device, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.
BRIEF DESCRIPTION OF THE DRAWINGS
These and other aspects, features and advantages of which the invention is capable of will be apparent and elucidated from the following description of embodiments of the present invention, reference being made to the accompanying drawings in which:
FIG. la depicts an exemplary arrangement of a confined space with objects inside and outside of the confined space.
FIG. lb depicts exemplary space allocation instructions according to an allocation scheme.
FIG. 2 depicts an exemplary schematic flowchart diagram for providing space allocation instructions for a plurality of objects within a confined space, according to one example.
FIG. 3 depicts an exemplary schematic flowchart diagram for providing space allocation instructions for a plurality of objects within a confined space, according to one example.
FIG. 4 depicts an exemplary schematic view of a non-transitory computer- readable storage medium.
FIG. 5 depicts a block diagram of a computerized system according to one embodiment.
DETAILED DESCRIPTION
The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which currently preferred embodiments of the invention are shown. This invention can, however, be embodied in many different forms and should as such not be interpreted as limited to the embodiments set forth
herein. These embodiments are provided for thoroughness and completeness, and to fully convey the scope of the invention to the skilled person.
With reference to FIG. la, an exemplary arrangement of a confined space 10 with objects 20 inside and outside of the confined space 10 is illustrated. The confined space 10 is in this figure depicted in the physical world, i.e., having physical features with respect to the surroundings of a user 30. The confined space 10 could be any dimensionally limited space in which a plurality of objects can be stored. For example, a confined space may be a wardrobe, a closet, a chest, an armoire or a chifforobe. In other examples the confined space 10 may be industrial use spaces such as containers or ship holds, a room with a specific use such as a walk-in closet, bathroom, attics or wine cellar, a window or a table or other furniture with an alternative use besides a storage capacity. Objects, such as the objects 20, that are to be stored in an interior 12 of the confined space 10 or optionally at an area defined by the confined space 10, could be any objects that are usually confined within the associated confined space 10. Examples are garments, accessories, recreational products, household products, sports equipment, home furnishing accessories such as vases, tablecloths, and/or storage structures removably attachable to an interior 12 of the confined space 10. The household products may be any products typically used in a household setting, such as candles, light bulbs, mats, tables, bedding, electrical products, books, or the like. These aforementioned examples shall in no way be construed as limiting to the scope of the present disclosure, and the person skilled in the art could envision other examples of confined spaces or objects stored therein.
The confined space 10 can be located in a home or office environment, or in another suitable environment. The confined space 10 includes a plurality of objects 20a- r. A further item 20s is located outside of the confined space 10. In this example the user 30, which can be any person utilizing a confined space to store objects, is unable to place the object 20s inside the confined space 10, as there is no space for the object 20s. This is due to an inefficient use of the space. One or more operations are required to create a more optimized arrangement. Providing such an optimized arrangement is enabled thanks to the contents of the present disclosure. Space occupancy data of the object 20s is obtained. Moreover, space occupancy data of the objects 20a-20r is
obtained. In addition, space availability data of the confined space 10 is obtained. The space availability data of the confined space 10 and the space occupancy data of the objects 20a-s can be obtained by capturing one or more images of the confined space 10 and the objects 20a-s.
The obtained space availability data and space occupancy data are to be compared to space availability data and space occupancy data of a predetermined set, according to methods that will be later described, in order to determine whether or not the prevailing arrangement may need improving. The predetermined set comprises one or more optimized space allocations. The optimized space allocations may be stored in a database, and obtained by the user according to any of the below mentioned communication methods. The optimized space allocations contain space occupancy data and space availability pertaining to objects known to the remote database manager.
The space availability data and space occupancy data may be transmitted from a cloud-based service implemented using any techniques known in the art, such as Amazon Web Services, Google Cloud Platform, Microsoft Azure, DigitalOcean, IBM Bluemix or Alibaba Cloud. Alternatively, a mobile computing device can transmit the space availability data and/or space occupancy data to the cloud-based service, where space allocation schemes may be generated. For these embodiments the mobile computing device comprises means for communication therewith. Such communication means may involve any conventional long-range or short-range communication standards known in the art. As mere examples, communication standards may involve techniques based on W-CDMA/HSPA, GSM, UTRAN, LTE, LTE-A, wireless RF standards based on IEEE 802.11, IEEE 802.15, ZigBee, WirelessHART, WiFi, Bluetooth®, BLE, RFID, WLAN, MQTT loT, CoAP, DDS, NFC, AMQP, LoRaWAN, RFID, Z-Wave, Sigfox, Thread, or EnOcean.
The objects 20a-20j may be structurally attachable objects and objects 20k-s may be freely moveable objects. Structurally attachable objects are objects that have been in some way attached to the confined space 10. For example they may be attached to rails or bolts that are fixed in the confined space 10. Examples of structurally attachable objects could be shelves, hanging bars, or baskets. As such, the structurally attachable objects may be necessary to enable the placement of certain objects. For
example, hangers may be hung up on an attachable bar, or boxes may be placed on attachable shelves. Some of the freely movable objects may be placed inside the confined space 10 and some other of the freely movable objects may be placed outside the confined space 10. However, it shall be understood that the structurally attachable objects can be arranged inside the confined space 10 (unless, for example, a structurally attachable object is recommended to be stored elsewhere for a certain time period). As will be apparent following the present disclosure, object rearrangement instructions may be provided even for the structurally attachable objects.
In this very example the user 30 is wearing a pair of AR glasses that represent an image capturing device 40. In other examples, the image capturing device 40 may be another device capable of capturing images, including but not limited to a smartphone, tablet, digital camera, smart glasses, body cameras, 360-degree cameras, wearable action cameras, VR headset, and so forth.
Obtaining the space occupancy data and the space availability data can be caused by capturing still or moving images of the objects 20a-s and/or the confined space 10. Optionally, the obtaining of the space occupancy data and the space availability data may include a step of performing image identification in order to identify the objects 20a-s. The image identification may be carried out by one or more computerized controllers of the image capturing device 40. Alternatively, the image identification may be carried out by a cloud-service being in communication with the image capturing device 40. The image identification may involve comparisons with image models in a pre-stored database. The image identification may involve applying any machine learning-based algorithm, such as neural networks, support vector machines, K-nearest neighbors, and the like. The image identification may additionally or alternatively involve applying statistical methods known to the persons skilled in the art of image analysis, such as histograms, principal component analysis, scale-invariant feature transform, and the like.
The image capturing device 40 may comprise a camera unit. The camera unit may be arranged in the image capturing device 40 such that it can acquire still or moving images or (live) video streams of physical surroundings. Alternatively, the camera unit may be a separate camera unit that is independently movable with respect to
the image capturing device 40. In this embodiment, the camera unit and the image capturing device 40 are configured to be able to communicate with each other using, for instance, any of the previously mentioned communication standards. To this end, the image capturing device 40 does not necessarily require movement in order to capture video content.
The image capturing device 40 may comprise a user interface. The user interface may be configured to receive one or more inputs from one or more different input sources through the user interface. The user 30 of the image capturing device 40 may execute different functions by interacting with or manipulating a computer program via the user interface. The user interface may be any type of human-computer interface known in the art, such as either one or a combination of a graphical user interface, speech-to-text interface, touch interface, textual interface, command line interface, gesture-based interface, or any similar type of interface technology appropriately configured for providing instructions through a user interface. Turning now to FIG. lb, where an allocation scheme has been determined, according to methods that will be further elaborated upon later in this disclosure. The allocation scheme indicates one or more space optimization actions for rearrangement of the confined space 10. Based on the allocation scheme, space allocation instructions 50 are provided to the user 30, in this example via a mobile computing device 42. The confined space is in this figure depicted in the virtual world, i.e., having virtual features as defined by computerized instructions displayed by the mobile computing device 42. The space allocation instructions 50 are instructions virtually provided to the user, such that these instructions can subsequently be followed in order to physically carry and move objects. Performing the space allocation instructions 50 will thus result in a more optimized space allocation of the confined space 10 shown in FIG. la. Accordingly, a goal of the present disclosure is to enable a transformation from a (non-optimized) confined space 10 as shown in FIG. la into a more optimized confined space, as depicted in FIG. lb, through following of the space allocation instructions 50.
The mobile computing device 42 could be any commercially available computing device such as a smartphone, webcam, laptop, or tablet. Alternatively, the
allocation scheme may be provided to the user by the image capturing device 40 shown and explained with reference to FIG. la.
A user interface of the mobile computing device 42 may be used to relay the space allocation instructions 50 to the user 30. The space allocation instructions 50 can include auditory and/or visual cues for the user. The visual cues may be presented through the user interface by means of a display 46, and the auditory cues may be presented by means of a speaker 44, or any other device capable of transmitting sound such as headphones. The auditory means may be external to the mobile computing device 42, with the mobile computing device 42 comprising means for transmitting signals to the external auditory means. The space allocation instructions 50 may alternatively or additionally be transmitted to another device where the space allocation instructions 50 may be displayed, or to a cloud-based service to which the user 30 has access. The techniques used for transmitting the space allocation instructions 50 can be any one of the techniques which have been previously described. Techniques for displaying the space allocation instructions 50 may be based on any known rendering technology. Rendering technologies include, but are not limited to direct volume rendering, isosurface extraction, rasterization, ray casting, ray tracing, ray marching, path tracing, to name a few. In an embodiment not shown here, the space allocation instructions may be relayed to the user from the image capturing device 40 via one or more intermittent devices, such as the cloud-based service previously described.
The space allocation instructions 50 are based on the determined allocation scheme which indicates one or more space optimization actions. Some exemplary space optimization actions may be switches, removals, replacements, repositions, consolidation or repackaging, rearrangements, and additions of new objects. Switches involve the repositioning of two objects with one another. Removals involve the removal of any object from the confined space 10. For example, unnecessary shelves or bars may be removed from the confined space 10 to improve space utilization. Replacements can include removing one object and adding a replacement object. For example, a different shelf, bar or hanger may be better suited in a certain position than the current shelf, bar or hanger. Repositioning of objects could include rotating the object along any of its axes or positioning said object at a different location with respect
to the confined space 10. Consolidation or repackaging of objects can include combining a set of objects into a single object, thus potentially decreasing their combined size and corresponding space occupancy data. For example, shirts can be folded together, boxes can be stacked on top of each other, etc. Additions of objects can include further objects being placed into the confined space 10 to improve efficacy. For example, further shelves, bars or hangers can be added to the confined space 10. Further space allocation instructions 50 may include a selection of one or more objects to be donated, sold or thrown away, etc.
In a further embodiment, the space allocation instructions 50 may take into account the space availability data of several confined spaces. Said several confined spaces can be scanned in conjunction to one another, or they could have been prescanned and stored in a device or cloud-based service. The optimized space allocations of a predetermined set could thus be based on a plurality of confined spaces, and space allocation actions can be carried out between the confined spaces of the plurality of confined spaces. Furthermore, the stored space availability data of the plurality of confined spaces can be utilized to quickly allocate a further object whose space occupancy data is acquired at a later time. By way of example, if the user has previously scanned a plurality of confined spaces and wants to arrange a new object into the stored confined spaces, the user may scan only the new object to provide new space occupancy data. The procedure may then be repeated with the additional space occupancy data relating to the new object, and new space allocation instructions 50 based on new allocation schemes may be provided to the user to allocate the new object. The space availability data of the confined spaces is then updated to correspond with the newly placed object.
With further reference to FIG. 2, a computer-implemented method 100 is generally shown according to one example. The steps of the method 100 may be implemented by one or more devices of a computerized system, such as the image capturing device 40 or the mobile computing device 42. The method 100 is for providing space allocation instructions for a plurality of objects 20 within a confined space 10. The method 100 involves obtaining 110 space availability data being indicative of available space within the confined space 10. The method 100 further
involves obtaining 120 space occupancy data being indicative of space occupied by the objects 20. The method 100 further involves comparing 130 the obtained space availability data and the obtained space occupancy data to corresponding space availability data and space occupancy data of a predetermined set comprising one or more optimized space allocations. The method 100 further involves, in response to the comparison indicating a suboptimal allocation of the objects 20 within the confined space 10, determining 140 an allocation scheme indicating one or more space optimization actions for arranging the confined space 10 including the objects 20 into one of the optimized space allocations of the predetermined set. The method 100 further involves providing 150 space allocation instructions based on the allocation scheme.
Moving to FIG. 3, a computer-implemented method 100 is shown according to an exemplary flowchart. Additional attributes, which are to be described in form and function with more details below, are obtained at 105 as user inputs, or from a cloudbased service 48.
The space occupancy data and the space availability data are obtained at steps 110 and 120, respectively. The datasets pertaining to the space occupancy data and space availability data may be obtained at steps 110, 120, for instance by way of the user 30 using the image capturing device 40. In an alternative embodiment, the space occupancy data and/or the space availability data are transmitted from a cloud-based service 48, according to the methods of transmitting data mentioned in conjunction with FIG. la. In one embodiment, the steps 110, 120 of obtaining the space occupancy data and space availability data may include an additional step of identifying the one or more objects in the confined space and/or the dimensionally limiting structures of the confined space (i.e. walls, floors or ceilings), and tagging the corresponding 3D data as one of a wall, floor, ceiling or object. Identifying and tagging the one or more objects may involve performing on-the-fly meshing of the environment in at least near realtime. This can be achieved by the user 30 using the camera unit of the image capturing device 40 to acquire an image of the physical environment, and simultaneously (potentially with some delay) tagging the acquired 3D data of the physical entities. Identifying and tagging the one or more physical entities may, for instance, involve tagging surfaces or polygons thereof, or alternatively each point in a 3D point cloud.
The tagged 3D data will consequently be associated with an entity type. Means for identifying and tagging the 3D data of the one or more physical entities may e.g. involve using any known systems or programs that allow access to detailed depth information as gathered by a 3D capture technology (e.g. any of previously mentioned 3D capture technologies). For instance, software APIs such as Apple’s ARKit or RealityKit framework may be used for this purpose.
At step 130, the obtained space availability data and the obtained space occupancy data are compared to corresponding space availability data and space occupancy data of a predetermined set comprising one or more optimized space allocations. The corresponding size and location values of the predetermined set are already known. This means that data of a prevailing scene is directly compared against data of a predetermined scene with known values.
The predetermined scene is “optimized” in the sense that the virtual objects confined in the virtual confined space are arranged in a more space efficient manner compared to the prevailing scene. By way of the comparison, it is accordingly possible to establish a relationship between an inadequate (i.e., suboptimal) current arrangement scheme, and a more adequate (i.e., optimal) predetermined arrangement scheme. At 135, the space availability data and space occupancy data may be stored for future use, for example if the user wishes to further objects or confined spaces to the space occupancy and availability data, respectively.
Upon the comparison at 130 indicating a suboptimal allocation of the objects within the confined space, the image capturing device 40 is further configured to determine, at step 140, the allocation scheme. The allocation scheme indicates one or more space optimization actions for arranging the objects in the confined space.
For purposes of the present disclosure, the term “space occupancy data” should be understood as involving a virtual representation of a space that an object physically holds. Moreover, the term “space availability data” should be understood as involving a virtual representation of an available space inside a confined space into which an object can be physically arranged. The virtual representations may be in the form of data stored in a respective data structure in a memory, such as lists, hash tables, sets, and the like. Having a structural arrangement of the space occupancy data and space availability
data may enable comparisons to be conducted between the respective data structures. One possible interpretation is that the space availability data is seen as a bin, and the space occupancy data to be items of different sizes/dimensions that may fit inside the bin.
Comparing at 130 and determining at 140 an allocation scheme in response to the comparison indicating a suboptimal allocation may involve applying one or more data comparison methods. The data comparison methods may be one or more of indexbased mapping, key-value pair mapping, iterative comparison, hashing, equality comparison and custom comparison functions.
A suboptimal allocation indicates that the prevailing scene is different from the one or more optimized space allocations in the predetermined set. The indication of a suboptimal allocation may be conditioned by a failure to meet a predefined similarity threshold value. The predefined similarity threshold may be determined by machinelearning algorithms, statistical methods, or be predefined by an external user. The predefined similarity threshold value may be collected at any step of the method of the present disclosure according to the aforementioned communication methods. The predefined similarity threshold value may be calculated by a user device, or at a remote location, such as by a cloud-computing service. The predefined similarity threshold value may be formerly determined by the optimized space allocation database manager previously mentioned. The predefined similarity threshold value may indicate a degree of minimum required similarity between the prevailing scene and the one or more optimized space allocations. The degree of minimum required similarity may be a number or a percentage of objects in the prevailing scene being placed according to the corresponding placements of the one or more optimized space allocations. The predefined similarity threshold value could take several factors into account. For example, it could be the case that the placement of objects in the prevailing scene is different from the placement of objects in one or more of the optimized space allocations. It could also be the case that the predefined similarity threshold favors a certain optimized space arrangement that has been associated with further information. In this case, the prevailing scene must reach a second predefined similarity threshold specifically when compared to the favored optimized space arrangement, the second
predefined similarity threshold being higher than the first predefined similarity threshold. It could further be the case that the predefined similarity threshold is not met if any objects are placed outside of the confined space in the prevailing scene.
The predetermined set may include one or more optimized space allocations. What this means is that different optimized space allocations may be better suited for different scenarios or contexts, such as different types of objects, spaces, or other attributes. Determining 140 the allocation scheme may be based on one or more of these attributes which have been obtained at step 105.
In some examples, the attributes are seasonal attributes. The seasonal attributes may be obtained from calendar data. The seasonal attributes may be determined by taking into account that seasonally dependent items are to be placed corresponding to the current season. For example, footballs or tennis rackets may be placed in an easily accessible place if the current season is summer or spring, and a less accessible place if the current season is winter. This is due to the fact that it is arguably more likely that football or tennis be played during the summer season. In another example, larger jackets may be placed in an easily accessible place if the current season is winter, and a less accessible place during the other seasons. This is due to the fact that it is typically colder during winter compared to summer seasons, which may necessitate warmer clothing.
In some examples, the attributes are geographical attributes. The geographical attributes could be a set of coordinates, or the name of location such as a city name. Such a location could, for example, be in the vicinity of specific geographical entities such as lakes or mountains. There could also be an increased risks associated with the geographical location, such as tornadoes or earthquakes. As an example, the allocation scheme may be determined by taking into account that no mountains are in the vicinity of the user, and that mountaineering gear should be placed in a less accessible part of the confined space. As another example, heavy objects could be arranged in a lower portion of the confined space, so that they don’t risk falling on someone during an earthquake.
In some examples, the attributes are life-situation based attributes. The lifesituation based attributes could be user age, disabilities, the presence of children, the
presence of pets, or any other useful information that regards the specific needs of the user pertaining to life-situation based attributes. For example, if there is a presence of pets, shoes or tennis balls could be arranged such that they are not accessible to the pet, and if there is a presence of children sharp objects could be arranged such that they are not accessible to the child. Another alternative life-situation based attribute could be the necessity of using furniture, having functions other than as a storage area, as a storage area. By way of example, a dining table could be used for both dining and working from home. The allocation scheme may then be based on a type of purpose of the object, such as dining/working objects and what to arrange on the table when used as a dining area or work area, respectively.
In some examples, the attributes are time-based attributes such as the time of day or time to or from a certain event. For example, if the allocation scheme is determined late at night, the user might not want to spend too much time rearranging the objects, and the allocation scheme may thus incorporate a time-based attribute which leads to fewer possible space allocation instructions being recommended.
In some examples, the attributes are weather-based attributes. The weather-based attributes could be temperature, risk of rain or snowfall, humidity, light exposure, or the prevalence of airborne allergenic material. For example, if there is a high amount of pollen in the area, as indicated by weather reports, the allocation scheme may base the arrangement of medicine on a need for easy access. In a further example, if there is heavy risk of rain for the coming weeks, the allocation scheme may be determined by taking into account that rain jackets should be easily accessible.
In some examples, the attributes are proximity -based attributes. For example, the proximity based attributes can include distance between space occupancy data calculated from location values of the space occupancy or space availability data. The comparison of space occupancy data and space availability data can thus take into account that space occupancy data of similar objects are mapped in close proximity to each other in the space availability data.
In some examples, the attributes are priority -based attributes. For example, the priority-based attributes can include a prioritization order list that indicates in what order the objects are to be moved, such as an object that is to be stored close to a back
wall of a closet should be moved first, and object to be hidden, such as a gift wrapping, should be stored further back and moved secondly.
In some examples, the attributes are usage-based attributes. The usage-based attributes may be based on a predicted future usage. The prediction may be determined by recent inputs, predicted body changes, or predicted future interests. For example, if young users’ body is predicted to increase in length, the space allocation instructions may include removal of such items. The program could also take into account recent trends and recommend the removal of items that are predicted to go out of fashion based on such trends. The prediction may be determined by a machine-learning algorithm.
In some examples, the attributes are object attributes. The object attributes could include properties of the objects that in various ways influence how they can or should be arranged in the confined space. In non-limiting examples, the object attributes may be a weight attribute, a shape attribute, a durability attribute, a flexibility attribute, a smell attribute, an absorption attribute, a visibility attribute, a material composition attribute, a color attribute, a stackability attribute, an ease-of-cleaning attribute, an electrical attribute, a safety attribute, or the like. The weight attribute may indicate that certain items, such as books or bulky sweaters, should be placed on lower shelves to prevent strain on upper shelves and/or closet rods. The size attribute may utilize adjustable shelving to accommodate items of varying heights. The shape attribute may use bins or baskets of irregularly shaped items like scarves or other accessories. The durability attribute may indicate that e.g. delicate glassware should be stored in padded containers or on shelves with soft liners. The flexibility attribute may indicate that certain clothes or the like should have sufficient space between them to allow for air circulations to e.g. prevent wrinkles and maintain freshness. The smell attribute may indicate that scented items, e.g. perfumes, should be stored away from clothing to prevent unwanted scent transfer. The absorption attribute may indicate that items sensitive to moisture, e.g. leather goods, should be stored in breathable fabrics and/or garment bags. The visibility attribute may indicate the need for clear storage containers or open-front bins to easily identify contents. The material composition attribute may indicate that e.g. delicate fabrics should be hung on padded hangers for an increased shape perseverance. The color attribute may indicate an aesthetically pleasing
arrangement of items. The stackability attribute may utilize stackable storage bins for items such as shoes or folded clothing. The ease-of-cleaning attribute may opt for easily removable storage solutions for an associated ease of cleaning. The electrical attribute may indicate that certain electrical objects be stored nearby a charging station for electronic devices, thereby ensuring that they are easily accessible for charging purposes. The safety attribute may indicate a safer storage location of potentially hazardous items, such as cleaning supplies or sharp objects, such as in locked cabinets or shelves located at higher heights.
The additional attributes as discussed above can be obtained through user inputs, for instance retrieved from an internet service or cloud-based service. The retrieval may be a request for checking what the weather is, checking what time it is, looking up how many people live in the home with the confined space, and so forth. Since the allocation scheme now has been defined, the user 30 is provided with options for rearranging the prevailing scene into a more optimized scene. The allocation scheme thus indicates one or more space optimization actions for arranging the confined space including the objects 20 into one of the optimized space allocations of the predetermined set.
Determining the allocation scheme may involve mapping the space occupancy data of the objects to the space availability data of the confined space such that a representation of said space occupied by the objects is assigned to a representation of said available space within the confined space. Specifically, the space occupancy data is mapped to the space availability data in order to map at least some objects to the confined space. For purposes of elucidation, a mapping of space occupancy data may be understood as a movement of an object from a first location (within or outside of the confined space) to a second location inside the confined space.
In some examples, the mapping is performed by applying a packing algorithm until a convergence criterion is reached. The packing algorithm may be an intelligent 3D packing algorithm. The packing algorithm may be based on exploration-based algorithms, such as one or more of Rapidly exploring Random Tree algorithm (RRT), RRT*, Real-Time RRT* (RT-RRT*), RRT*-Smart, Dijkstra’s algorithm, First Fit (FF), Next Fit (NF), Best Fit (BF), Worst Fit (WF), Next Fit Decreasing (NFD), First Fit Decreasing (FFD), Guillotine Cutting and Shelf Algorithm, Heuristic Algorithm, Bin
Packing Algorithm, Circle Packing Algorithm, hybrid algorithms, or the like. The packing algorithm may in some examples be a recursive function.
By performing mappings according to the above-explained approaches, several technical benefits may be offered, including efficient utilization of computational resources, reduced memory consumption, improved locality of reference, scalability, fault tolerance, easier debugging, and potential for incremental sorting. These benefits make mappings a more efficient and adaptable approach to sorting, particularly for large datasets or systems with limited memory resources. This may be advantageous for certain confined spaces and objects being associated with larger number of collisions.
The convergence criterion may be determined by the one or more optimized space allocations of the predetermined set to which the obtained space availability data and space occupancy data are compared. To this end, the convergence criterion may be reached upon parts of the space occupancy data being assigned to parts of the space availability data not currently being occupied by other parts of the space occupancy data. The number of assigned parts may vary depending on what optimized space allocation the obtained space availability data and space occupancy data are compared to. The number of assigned parts may be a predetermined number of mappings, a maximum allowable convergence time, and/or a maximum allowable resource utilization. The convergence criterion may also be based on one or more of the attributes as discussed above for the optimized space allocation(s). In some examples, upon reaching the convergence criterion, the mapping is halted. As an example, this is done by comparing the current arrangement to the predetermined set, according to the techniques mentioned earlier (e.g. using the predefined similarity threshold value).
At step 150, the allocation scheme comprising the space allocation instructions are provided to the user 30, for example through the mobile computing device 42 or the image capturing device 40 of the user 30. In one embodiment the space allocation instructions comprise recommendations for physically carrying out the space optimization actions of the confined space. The user thus receives space allocation instructions for how to arrange the confined space to conform to an optimized space arrangement.
Another optional embodiment can be seen at step 160, where the image capturing device 40 communicates with the cloud-based service 48 to perform some of the steps of the method 100. The cloud-based service 48 can input further data to the mobile computing device prior to step 130.
With reference to FIG. 4, a schematic illustration of a (non-transitory) computer- readable (storage) medium 300 is shown according to one exemplary embodiment. The computer-readable medium 300 may be associated with or connected to the system 200 as described herein, and is capable of storing a computer program product 310. The computer-readable medium 300 in the disclosed embodiment is a memory stick, such as a Universal Serial Bus (USB) stick. The USB stick 300 comprises a housing 330 having an interface, such as a connector 340, and a memory chip 320. In the disclosed embodiment, the memory chip 320 is a flash memory, i.e., a non-volatile data storage that can be electrically erased and re-programmed. The memory chip 320 stores the computer program product 310 which is programmed with computer program code (instructions) that when loaded into a processor device, will perform a method, for instance the method 100 explained with reference to FIG. 2 or FIG. 3. The USB stick 300 is arranged to be connected to and read by a reading device for loading the instructions into the processor device. It should be noted that a computer-readable medium can also be other mediums such as compact discs, digital video discs, hard drives or other memory technologies commonly used. The computer program code (instructions) can also be downloaded from the computer-readable medium via a wireless interface to be loaded into the processing device.
In FIG. 5, an exemplary computerized system 200 is shown. The computerized system 200 may be employed for implementing one or more of the functionalities as previously described in this disclosure. The computerized system 200 may include a number of units known to the skilled person for implementing the functionalities as described in the present disclosure. The computerized system 200 may comprise one or more computing units capable of including firmware, hardware, and/or executing software instructions to implement the functionality described herein. The computerized system 200 may comprise one or more processor devices (may also be referred to as a control unit) 230, one or more memories 235 and one or more buses 240. The processor
devices 230 may be included in the computing devices 222a-e and the cloud-based computing resource 212, respectively. The computerized system 200 may include at least one computing device having the processor device 230. A system bus 240 may provide an interface for system components including, but not limited to, the memories 235 and the processor devices 230. The processor device 230 may include any number of hardware components for conducting data or signal processing or for executing computer code stored in the memories. The processor device 230 may, for example, include a general-purpose processor, an application specific processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit containing processing components, a group of distributed processing components, a group of distributed computers configured for processing, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. The processor device 230 may further include computer executable code that controls operation of the programmable device.
The system bus 240 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of bus architectures. The memories 235 may be one or more devices for storing data and/or computer code for completing or facilitating methods described herein. The memories 235 may include database components, object code components, script components, or other types of information structure for supporting the various activities herein. Any distributed or local memory device may be utilized with the systems and methods of this description. The memories 235 may be communicably connected to the processor device 230 (e.g., via a circuit or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein. The memories may include non-volatile memories (e.g., read-only memory (ROM), erasable programmable read-only memories (EPROM), electrically erasable programmable readonly memories (EEPROM), etc.), and volatile memories (e.g., random-access memory (RAM)), or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be
accessed by a computer or other machine with a processor device. A basic input/output system (BIOS) may be stored in the non-volatile memories and can include the basic routines that help to transfer information between elements within the computer system.
A storage 245 may be operably connected to the computerized system 200 via, for example, I/O interfaces (e.g., card, device) 250 and I/O ports 255. The storage 245 can include, but is not limited to, devices like a magnetic disk drive, a solid state drive, an optical drive, a flash memory card, a memory stick, etc. The storage 245 may also include a cloud-based server implemented using any commonly known cloudcomputing platform, as in conjunction to FIG. la. The storage 245 or memory 235 can store an operating system that controls and allocates resources of the computerized system 200.
The computerized system 200 may interact with network devices 260 via the I/O interfaces 250, or the I/O ports 255. Through the network devices 260, the computerized system 200 may interact with a network. Through the network, the computerized system 200 may be logically connected to remote computers. Through the network, the serverside platform 210 may communicate with the client-side platform 220, as described above. The networks with which the computerized system 200 may interact include, but are not limited to, a local area network (LAN), a wide area network (WAN), and other networks.
Claims
1. A computer-implemented method (100) for providing space allocation instructions for a plurality of objects (20) within a confined space (10), the method comprising: obtaining (110) space availability data being indicative of available space within the confined space (10); obtaining (120) space occupancy data being indicative of space occupied by the objects (20); comparing (130) the obtained space availability data and the obtained space occupancy data to corresponding space availability data and space occupancy data of a predetermined set comprising one or more optimized space allocations; in response to the comparison indicating a suboptimal allocation of the objects (20) within the confined space (10), determining (140) an allocation scheme indicating one or more space optimization actions for arranging the confined space (10) including the objects (20) into one of the optimized space allocations of the predetermined set; and providing (150) space allocation instructions (50) based on the allocation scheme.
2. The method of claim 1, wherein the allocation scheme is determined by mapping the space occupancy data of the objects (20) to the space availability data of the confined space (10) such that a representation of said space occupied by the objects (20) is assigned to a representation of said available space within the confined space (10).
3. The method of claim 2, wherein the mapping is performed by applying a packing algorithm until a convergence criterion is reached.
4. The method of claim 3, wherein the convergence criterion is determined by the one or more optimized space allocations of the predetermined set to which the obtained space availability data and space occupancy data are compared.
5. The method of any preceding claim, wherein the comparison indicates the suboptimal allocation upon a difference between the space availability data of the confined space (10) and the space availability data of one of the optimized space allocations, and a difference between the space occupancy data of the objects (20) and the space occupancy data of one of the optimized space allocations, respectively, exceeding a predefined similarity threshold value.
6. The method of any preceding claim, wherein the objects (20) comprise a storage structure removably attachable to an interior (12) of the confined space (10).
7. The method of any preceding claim, wherein the objects (20) comprise one or more: garments, accessories, recreational products, household products, and sports equipment.
8. The method of any preceding claim, wherein at least some of the plurality of objects (20) from which the space occupancy data is obtained are arranged in the confined space (10).
9. The method of any preceding claim, wherein at least some of the plurality of objects (20) from which the space occupancy data is obtained are outside of the confined space (10).
10. The method of any preceding claim, wherein the confined space (10) is a wardrobe, closet, chest, armoire, chifforobe or a cabinet.
11. The method of any preceding claim, wherein the space occupancy data and/or the space availability data is obtained through scanning of the objects (20) or the confined space (10), respectively.
12. The method of any preceding claim, wherein the space occupancy data and/or the space availability data is obtained through the retrieval of a 3D model of the objects (20) or the confined space (10), respectively.
13. The method of any preceding claim, wherein the space allocation instructions (50) are provided as visual or auditory cues through a user interface.
14. The method of any preceding claim, wherein the space allocation instructions (50) comprise recommendations for physically carrying out said space optimization actions of the confined space (10).
15. The method of claim 14, wherein the space optimization actions are one or more: switches between objects (20), removals of objects (20), replacements of objects (20), consolidation or repackaging of objects (20), rearrangements of objects (20), and rearrangements of objects (20), and additions of new objects (20).
16. The method of any preceding claim, wherein determining the allocation scheme is further based on one or more: seasonal attributes, geographical attributes,
life-situation based attributes, proximity-based attributes, time-based attributes, weather-based attributes, object attributes, priority-based attributes, and usage-based attributes.
17. A computerized system (200) comprising a processor (230) configured to perform the functionality of the method (100) of any one of claims 1-16.
18. A non-transitory computer-readable storage medium (300) comprising instructions, which when executed by one or more processors (230) of a computerized system (200), cause the processor (230) to perform the functionality of the method (100) of any one of claims 1-16.
19. A computer program product comprising computer code for performing the functionality of the method (100) of any one of claims 1-16.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE2351500-0 | 2023-12-22 | ||
| SE2351500 | 2023-12-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025136201A1 true WO2025136201A1 (en) | 2025-06-26 |
Family
ID=96138702
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/SE2024/051098 Pending WO2025136201A1 (en) | 2023-12-22 | 2024-12-18 | Computer-implemented allocation of objects within a confined space |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025136201A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160180193A1 (en) * | 2014-12-22 | 2016-06-23 | Amazon Technologies, Inc. | Image-based complementary item selection |
| US20200090404A1 (en) * | 2018-09-13 | 2020-03-19 | International Business Machines Corporation | Augmentation of item dimensions based on derived storage locations for online and physical shopping |
| US20200372445A1 (en) * | 2019-05-23 | 2020-11-26 | International Business Machines Corporation | Generating recommendations based on storage availability |
| CN113221309A (en) * | 2020-01-21 | 2021-08-06 | 阿里巴巴集团控股有限公司 | Article display method and device, electronic equipment and storage medium |
| CN114722442A (en) * | 2022-06-08 | 2022-07-08 | 广东三维家信息科技有限公司 | Cabinet layout method and device, computer equipment and storage medium |
-
2024
- 2024-12-18 WO PCT/SE2024/051098 patent/WO2025136201A1/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160180193A1 (en) * | 2014-12-22 | 2016-06-23 | Amazon Technologies, Inc. | Image-based complementary item selection |
| US20200090404A1 (en) * | 2018-09-13 | 2020-03-19 | International Business Machines Corporation | Augmentation of item dimensions based on derived storage locations for online and physical shopping |
| US20200372445A1 (en) * | 2019-05-23 | 2020-11-26 | International Business Machines Corporation | Generating recommendations based on storage availability |
| CN113221309A (en) * | 2020-01-21 | 2021-08-06 | 阿里巴巴集团控股有限公司 | Article display method and device, electronic equipment and storage medium |
| CN114722442A (en) * | 2022-06-08 | 2022-07-08 | 广东三维家信息科技有限公司 | Cabinet layout method and device, computer equipment and storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI664394B (en) | Prompting method and apparatus | |
| US20180211208A1 (en) | Systems and methods for monitoring home inventory | |
| CN106980485A (en) | A kind of Intelligent clothes cabinet system and its management method | |
| JP6132940B1 (en) | How to track the location of stored items | |
| US11421929B2 (en) | Food management system | |
| JP2013168132A (en) | Commodity retrieval device, method and program | |
| US12067684B2 (en) | Method, device and computer program product for manipulating virtual bounding volumes | |
| CN103823553A (en) | Method for enhancing real display of scenes behind surface | |
| KR102372283B1 (en) | Method of Providing Virtual Space Construction Service and Service Providing Server Used Therein | |
| CN113269828B (en) | Item search method, device, air conditioner and storage medium | |
| WO2023142611A1 (en) | Method and apparatus for decorating virtual room, and device, medium and program product | |
| CN112381606B (en) | Household article recommendation method and device, electronic equipment and storage medium | |
| CN108960359A (en) | Personal belongings management method and system | |
| CN106871571A (en) | A kind of refrigerator that shopping prompting is carried out according to storage principle condition | |
| KR102019299B1 (en) | Home styling server and a system comprising the same, and a method for processing image for the home styling | |
| JP7287509B2 (en) | Method and apparatus for displaying item information in current space and media | |
| WO2025136201A1 (en) | Computer-implemented allocation of objects within a confined space | |
| CN113988989A (en) | Intelligent recommendation method and system suitable for imported furniture and storage medium | |
| JP2017037455A (en) | Information processing apparatus, information processing method, and program | |
| CN108804534A (en) | Information recommendation method and system | |
| JP2004326437A (en) | Article management system and article management method | |
| CN116977787A (en) | Training scenario generation method, device, electronic device and readable storage medium | |
| KR20100137900A (en) | Interior service system and method using virtual environment | |
| CN116869430A (en) | Sharp object handling method and robot | |
| JP2023037447A (en) | Life support system, life support method, and life support program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24908406 Country of ref document: EP Kind code of ref document: A1 |