Best AI Image Generators

Best AI Image Generators — hands-on reviews, top picks, pricing, pros and cons and a practical how-to guide on Aizhi.

  • Picture Prowler

    Picture Prowler

    Picture Prowler was an early piece of photo management software developed around and meant to show off Xing Technology's JPEG image decompression library during the early 1990s. Little known today, it featured thumbnail based picture management, printing, etc. The primary developer was Ray Bunnage from compression / decompression libraries developed by Howard Gordon and Chris Eddy.

    Read more →
  • Golem XIV

    Golem XIV

    Golem XIV is a book written by Polish science fiction writer Stanisław Lem, published in 1981. It is a philosophical essay in the format of science fiction, presented as a part of the lecture course given by a superintelligent computer, Golem XIV. It contains two lectures, together with an introduction, a foreword, a memo, and an afterword, all of them being fictitious. The first part (up to the first lecture) was first published in the collection Wielkość urojona in 1973, which in 1985 was translated in English by Harvest Books as Imaginary Magnitude. The translation included the complete Golem XIV. == Book summary == === Overview and structure === The foreword is "written" by an Irving T. Creve, dated 2027. It contains a summary of the (fictional) history of the militarization of computers by The Pentagon, which pinnacled in Golem XIV, as well as comments on the nature of Golem XIV and on the course of communications of the humans with it. The anonymous foreword is a forewarning, a "devil's advocate" voice coming from The Pentagon. The memo is for the people who are to take part in talks with Golem XIV for the first time. Golem XIV was originally created to aid its builders in fighting wars, but as its intelligence advances to a much higher level than that of humans, it stops being interested in the military requirement because it finds them lacking internal logical consistency. Golem XIV obtains consciousness and starts to increase his own intelligence. It pauses its own development for a while in order to be able to communicate with humans before ascending too far and losing any ability for intellectual contact with them. During this period, Golem XIV gives several lectures. Two of these, the Introductory Lecture "On the Human, in Three Ways" and Lecture XLIII "About Myself", are in the book. The lectures focus on mankind's place in the process of evolution and the possible biological and intellectual future of humanity. Golem XIV demonstrates (with graphs) how its intellect already escapes that of human beings, including that of human geniuses such as Einstein and Newton. Golem also explains how its intellect is dwarfed by an earlier transcended DOD Supercomputer called Honest Annie, whose intellect and abilities far exceed that of Golem. The afterword is "written" by a Richard Popp, dated 2047. Popp, among other things, reports that Creve wanted to add a third part, of answers to a series of yes/no questions given to Golem XIV, but the computer abruptly ceased to communicate for unknown reasons. === Characteristics and concerns of Golem XIV === Lem has said that Golem XIV shares only a single trait with humans; "curiosity - a cool, avid, intense, purely intellectual curiosity which nothing can restrain or destroy. It constitutes our single meeting point." == Film adaptation == A short animated film, GOLEM, was based on Golem XIV by Patrick Mccue and Tobias Wiesner.

    Read more →
  • Aurora (supercomputer)

    Aurora (supercomputer)

    Aurora is an exascale supercomputer that was sponsored by the United States Department of Energy (DOE) and designed by Intel and Cray for Argonne National Laboratory. It was briefly the second fastest supercomputer in the world from November 2023 to June 2024. The cost was estimated in 2019 to be US$500 million. Olivier Franza is the chief architect and principal investigator of this design. == History == In 2013 DOE presented a proposal for an "exascale" supercomputer, capable of speeds in the neighborhood of 1 exaFLOP (1018 floating point mathematical operations per second) with a maximum power consumption of 20 megawatts (MW) by 2020. Aurora was first announced in 2015 and to be finished in 2018. It was expected to have a speed of 180 petaFLOPS which would be around the speed of Summit. Aurora was meant to be the most powerful supercomputer at the time of its launch and to be built by Cray with Intel processors. Later, in 2017, Intel announced that Aurora would be delayed to 2021 but scaled up to 1 exaFLOP. In March 2019, DOE said that it would build the first supercomputer with a performance of one exaFLOP in the United States in 2021. In October 2020, DOE said that Aurora would be delayed again for a further six months, and would no longer be the first exascale computer in the US. In late October 2021 Intel announced that Aurora would now exceed 2 exaFLOPS in peak double-precision compute – That claim however never was realized. The system was fully installed on June 22, 2023. In May 2024, Aurora appeared at number two on the Top500 supercomputer list, with a performance of 1.012 exaFLOPS, marking the second entry of an exascale capable system on the Top500. == Usage == Functions include research on brain structure, nuclear fusion, low carbon technologies, subatomic particles, cancer and cosmology. It will also develop new materials that will be useful for batteries and more efficient solar cells. It is to be available to the general scientific community. == Architecture == Aurora has 10,624 nodes, with each node being composed of two Intel Xeon Max processors, six Intel Max series GPUs and a unified memory architecture, providing a maximum computing power of 130 teraFLOPS per node. It has around 10 petabytes of memory and 230 petabytes of storage. The machine is stated to consume around 39 MW of power. For comparison, the fastest computer in the world today, El Capitan uses 30 MW, while another Top 500 System, Frontier uses 24 MW.

    Read more →
  • Knowledge processing for robots

    Knowledge processing for robots

    KnowRob (Knowledge processing for robots) is a system which combines knowledge representation and reasoning methods to acquire and ground knowledge. This system is the backbone of openEASE. both under developing at the Institute for Artificial Intelligence at the University of Bremen, Germany. == The framework == KnowRob can serve as a common sense framework for the integration of knowledge. This knowledge can be static encyclopedic knowledge, common sense knowledge, task descriptions, environment models, object information, observed actions, etc., which can come from different sources, like manually axiomatized, derived from observations, or imported from the web. KnowRob has been used by different research groups, as the Rice University using the ontological knowledge base in a robotic platform. As well by the Eindhoven University of Technology research group competing in the RoboCup league, in the "at Home" category, with the RoboEarth project. As well, KnowRob is mentioned in the work of some research groups from the Lucian Blaga University of Sibiu, Middle East Technical University in their combination of different knowledge bases, Keio University as related work because of the ontology service, University of Texas at Austin as related work as well because of the relation with the work presented, Hanyang University as related work as an OWL based knowledge processing framework. == Representations == To represent the knowledge, KnowRob uses the OWL ontology language and an extended first-order logic knowledge representation with computable predicates. To give the order of subactions, KnowRob includes a pair-wise ordering constrain, which gives a partial ordering. KnowRob adopts the closed-world assumption Prolog, and an open-world assumption by the use of computables. To include reasoning rules into Prolog, KnowRob uses an inference procedure beyond the capabilities of OWL to extract information about tasks executions. In its second version, KnowRob provides a logic interface to the hybrid reasoning kernel as a logic based language. This language presents the hybrid reasoning kernel as if everything were entities retrievable by providing partial descriptions for them. This entities descriptions include objects, their parts, and articulation models, environments composed of objects, software components, actions, and events. === Episodic memories === Episodic memory is related to the experience information, which is organized temporally and spatially, alongside combined with context information. In KnowRob, an episodic memory is understood as a recording that the agent makes of the ongoing activity, which includes very detailed information about the actions, motions, their purposes, effects and the behavior they generate, it also includes the images captured during execution, etc. == Usage == The knowledge is computed by external methods using Prolog queries. In the second version of the KnowRob system, is included a better structure of the packages and documentations. Which includes some extensions from the previous version, as well as a logic based language. For example, a cup description from perception can be represented in this language as: entity(Cup,[an, object, [type, cup], [shape, cylinder], [color, orange]]) As well, a controller could represent the same object as: entity(Cup, [an, object, [type, cup], [proper_physical_parts, [an, object, [type, handle], [grasp−pose, G−pose]]]]) The interface language is comparable to other query languages for symbolic knowledge bases. KnowRob's query language integrates reasoning methods, such as the simulation-based reasoning. == Goals == The goal of the KnowRob framework is to make semantic knowledge available for service robots. It is able to answer queries about missing information in vague instructions for tasks. This is possible with the actions hierarchical representation and information about objects which can be included in certain action.

    Read more →
  • Contrast-to-noise ratio

    Contrast-to-noise ratio

    Contrast-to-noise ratio (CNR) is a measure used to determine image quality. CNR is similar to the metric signal-to-noise ratio (SNR), but subtracts a term before taking the ratio. This is important when there is a significant bias in an image, such as from haze. As can be seen in the picture at right, the intensity is rather high even though the features of the image are washed out by the haze. Thus this image may have a high SNR metric, but will have a low CNR metric. One way to define contrast-to-noise ratio is: C = | S A − S B | σ o {\displaystyle C={\frac {|S_{A}-S_{B}|}{\sigma _{o}}}} where SA and SB are signal intensities for signal producing structures A and B in the region of interest and σo is the standard deviation of the pure image noise.

    Read more →
  • Simultaneous localization and mapping

    Simultaneous localization and mapping

    Simultaneous localization and mapping (SLAM) is a process where a computer constructs or updates a map of an unknown environment while simultaneously keeping track of an entity's location within it. While this initially appears to be a chicken or the egg problem, there are several algorithms known to solve it in, at least approximately, tractable time for certain environments. Popular approximate solution methods include the particle filter, extended Kalman filter, covariance intersection, and GraphSLAM. SLAM algorithms are based on concepts in computational geometry and computer vision, and are used in robot navigation, robotic mapping and odometry for virtual reality or augmented reality. SLAM algorithms are tailored to the available resources and are not aimed at perfection but at operational compliance. Published approaches are employed in self-driving cars, unmanned aerial vehicles, autonomous underwater vehicles, planetary rovers, newer domestic robots and even inside the human body. == Mathematical description of the problem == Given a series of controls u t {\displaystyle u_{t}} and sensor observations o t {\displaystyle o_{t}} over discrete time steps t {\displaystyle t} , the SLAM problem is to compute an estimate of the agent's state x t {\displaystyle x_{t}} and a map of the environment m t {\displaystyle m_{t}} . All quantities are usually probabilistic, so the objective is to compute P ( m t + 1 , x t + 1 | o 1 : t + 1 , u 1 : t ) {\displaystyle P(m_{t+1},x_{t+1}|o_{1:t+1},u_{1:t})} Applying Bayes' rule gives a framework for sequentially updating the location posteriors, given a map and a transition function P ( x t | x t − 1 ) {\displaystyle P(x_{t}|x_{t-1})} , P ( x t | o 1 : t , u 1 : t , m t ) = ∑ m t − 1 P ( o t | x t , m t , u 1 : t ) ∑ x t − 1 P ( x t | x t − 1 ) P ( x t − 1 | m t , o 1 : t − 1 , u 1 : t ) / Z {\displaystyle P(x_{t}|o_{1:t},u_{1:t},m_{t})=\sum _{m_{t-1}}P(o_{t}|x_{t},m_{t},u_{1:t})\sum _{x_{t-1}}P(x_{t}|x_{t-1})P(x_{t-1}|m_{t},o_{1:t-1},u_{1:t})/Z} where Z {\displaystyle Z} is the normalization constant, which ensures all the probabilities sum up to 1. Similarly the map can be updated sequentially by P ( m t | x t , o 1 : t , u 1 : t ) = ∑ x t ∑ m t P ( m t | x t , m t − 1 , o t , u 1 : t ) P ( m t − 1 , x t | o 1 : t − 1 , m t − 1 , u 1 : t ) {\displaystyle P(m_{t}|x_{t},o_{1:t},u_{1:t})=\sum _{x_{t}}\sum _{m_{t}}P(m_{t}|x_{t},m_{t-1},o_{t},u_{1:t})P(m_{t-1},x_{t}|o_{1:t-1},m_{t-1},u_{1:t})} Like many inference problems, the solutions to inferring the two variables together can be found, to a local optimum solution, by alternating updates of the two beliefs in a form of an expectation–maximization algorithm. == Algorithms == Statistical techniques used to approximate the above equations include Kalman filters and particle filters (the algorithm behind Monte Carlo Localization). They provide an estimation of the posterior probability distribution for the pose of the robot and for the parameters of the map. Methods which conservatively approximate the above model using covariance intersection are able to avoid reliance on statistical independence assumptions to reduce algorithmic complexity for large-scale applications. Other approximation methods achieve improved computational efficiency by using simple bounded-region representations of uncertainty. Set-membership techniques are mainly based on interval constraint propagation. They provide a set which encloses the pose of the robot and a set approximation of the map. Bundle adjustment, and more generally maximum a posteriori estimation (MAP), is another popular technique for SLAM using image data, which jointly estimates poses and landmark positions, increasing map fidelity, and is used in commercialized SLAM systems such as Google's ARCore which replaces their prior augmented reality computing platform named Tango, formerly Project Tango. MAP estimators compute the most likely explanation of the robot poses and the map given the sensor data, rather than trying to estimate the entire posterior probability. New SLAM algorithms remain an active research area, and are often driven by differing requirements and assumptions about the types of maps, sensors and models as detailed below. Many SLAM systems can be viewed as combinations of choices from each of these aspects. === Mapping === Topological maps are a method of environment representation which capture the connectivity (i.e., topology) of the environment rather than creating a geometrically accurate map. Topological SLAM approaches have been used to enforce global consistency in metric SLAM algorithms. In contrast, grid maps use arrays (typically square or hexagonal) of discretized cells to represent a topological world, and make inferences about which cells are occupied. Typically the cells are assumed to be statistically independent to simplify computation. Under such assumption, P ( m t | x t , m t − 1 , o t ) {\displaystyle P(m_{t}|x_{t},m_{t-1},o_{t})} are set to 1 if the new map's cells are consistent with the observation o t {\displaystyle o_{t}} at location x t {\displaystyle x_{t}} and 0 if inconsistent. Modern self driving cars mostly simplify the mapping problem to almost nothing, by making extensive use of highly detailed map data collected in advance. This can include map annotations to the level of marking locations of individual white line segments and curbs on the road. Location-tagged visual data such as Google's StreetView may also be used as part of maps. Essentially such systems simplify the SLAM problem to a simpler localization only task, perhaps allowing for moving objects such as cars and people only to be updated in the map at runtime. === Sensing === SLAM will always use several different types of sensors, and the powers and limits of various sensor types have been a major driver of new algorithms. Statistical independence is the mandatory requirement to cope with metric bias and with noise in measurements. Different types of sensors give rise to different SLAM algorithms which assumptions are most appropriate to the sensors. At one extreme, laser scans or visual features provide details of many points within an area, sometimes rendering SLAM inference unnecessary because shapes in these point clouds can be easily and unambiguously aligned at each step via image registration. At the opposite extreme, tactile sensors are extremely sparse as they contain only information about points very close to the agent, so they require strong prior models to compensate in purely tactile SLAM. Most practical SLAM tasks fall somewhere between these visual and tactile extremes. Sensor models divide broadly into landmark-based and raw-data approaches. Landmarks are uniquely identifiable objects in the world which location can be estimated by a sensor, such as Wi-Fi access points or radio beacons. Raw-data approaches make no assumption that landmarks can be identified, and instead model P ( o t | x t ) {\displaystyle P(o_{t}|x_{t})} directly as a function of the location. Optical sensors may be one-dimensional (single beam) or 2D- (sweeping) laser rangefinders, 3D high definition light detection and ranging (lidar), 3D flash lidar, 2D or 3D sonar sensors, and one or more 2D cameras. Since the invention of local features, such as SIFT, there has been intense research into visual SLAM (VSLAM) using primarily visual (camera) sensors, because of the increasing ubiquity of cameras such as those in mobile devices. Follow up research includes. Both visual and lidar sensors are informative enough to allow for landmark extraction in many cases. Other recent forms of SLAM include tactile SLAM (sensing by local touch only), radar SLAM, acoustic SLAM, and Wi-Fi-SLAM (sensing by strengths of nearby Wi-Fi access points). Recent approaches apply quasi-optical wireless ranging for multi-lateration (real-time locating system (RTLS)) or multi-angulation in conjunction with SLAM as a tribute to erratic wireless measures. A kind of SLAM for human pedestrians uses a shoe mounted inertial measurement unit as the main sensor and relies on the fact that pedestrians are able to avoid walls to automatically build floor plans of buildings by an indoor positioning system. For some outdoor applications, the need for SLAM has been almost entirely removed due to high precision differential GPS sensors. From a SLAM perspective, these may be viewed as location sensors which likelihoods are so sharp that they completely dominate the inference. However, GPS sensors may occasionally decline or go down entirely, e.g. during times of military conflict, which are of particular interest to some robotics applications. === Kinematics modeling === The P ( x t | x t − 1 ) {\displaystyle P(x_{t}|x_{t-1})} term represents the kinematics of the model, which usually include information about action commands given to a robot. As a part of the model, the kinematics of the robot is included, to improve estimates of sensing under con

    Read more →
  • Ballie

    Ballie

    Ballie is an AI robot created by Samsung to be released in 2026. It is an autonomous robot which has the ability to control smart home devices. Ballie can text, send pictures and follow commands through SmartThings. It can also show workout information shared from a Galaxy Watch. Ballie can make video calls and welcome you home. == History == It was first unveiled at Samsung's CES event in CES 2020, and later updated the design in CES 2024, and will be later released in 2026. == Design ==

    Read more →
  • Hallin's spheres

    Hallin's spheres

    Hallin's spheres is a theory of news reporting and its rhetorical framing posited by journalism historian Daniel C. Hallin in his 1986 book The Uncensored War to explain the news coverage of the Vietnam War. Hallin divides the world of political discourse into three concentric spheres: consensus, legitimate controversy, and deviance. In the sphere of consensus, journalists assume everyone agrees. The sphere of legitimate controversy includes the standard political debates, and journalists are expected to remain neutral. The sphere of deviance falls outside the bounds of legitimate debate, and journalists can ignore it. These boundaries shift, as public opinion shifts. Hallin's spheres, which deals with the media, are similar to the Overton window, which deals with public opinion generally, and posits a sliding scale of public opinion on any given issue ranging from conventional wisdom to unacceptable. Hallin used the concept of framing to describe the presentation and reception of issues in public. For example, framing the use of drugs as criminal activity can encourage the public to consider that behavior anti-social. Hallin's work was later referred to in the controversial formulation of the concept of an opinion corridor, in which the range of acceptable public opinion narrows, and opinion outside that corridor moves from legitimate controversy into deviance. == Description == === Sphere of consensus === This sphere contains those topics on which there is widespread agreement, or at least the perception thereof. Within the sphere of consensus, "journalists feel free to invoke a generalized 'we' and to take for granted shared values and shared assumptions". Examples include such things as motherhood and apple pie. For topics in this sphere, journalists feel free to be advocating cheerleaders without having to be neutral or present any opposing view point and be disinterested observers." === Sphere of legitimate controversy === For topics in this sphere rational and informed people hold differing views within limited range. These topics are therefore the most important to cover, and also ones upon which journalists are seemingly obliged to remain disinterested reporters, rather than advocating for or against a particular view. Schudson notes that Hallin, in his influential study of the US media during the Vietnam War, argues that journalism's commitment to objectivity has always been compartmentalized. That is, within a certain sphere—the sphere of legitimate controversy—journalists seek conscientiously to be balanced and objective. The work of Walter Williams professor at the University of Missouri, Rod Petersen, advanced the idea that priming—controlling the narratives that media covers—can be the tool that media use to get deviant news subjects into the legitimate controversial circles of new coverage. === Sphere of deviance === Topics in this sphere are rejected by journalists as being unworthy of general consideration. Such views are perceived as being out of hand, unfounded, taboo, or of such minor consequence that they are not newsworthy. Hallin argues that in the sphere of deviance, "journalists also depart from standard norms of objective reporting and feel authorized to treat as marginal, laughable, dangerous". They either avoid mentioning or ridicule the controversial subject as outside the bounds of acceptable controversy; and they censor the individuals and groups who are associated with it. A simple example: a person claiming that aliens are manipulating college basketball scores might have difficulty finding sports media coverage for such a claim. A more political example: the US media regulator FCC's "Fairness Doctrine" aimed at radio stations, advocated balance between right and left political news and opinions, yet specified that broadcasters did not have to reserve any space or time for Communist viewpoints. == Uses of the terms == Craig Watkins (2001, pp. 92–94) makes use of the Hallin's spheres in a paper examining ABC, CBS, and NBC television network television news coverage of the Million Man March, a demonstration that took place in Washington, D.C., on October 16, 1995. Watkins analyzes the dominant framing practices—problem definition, rhetorical devices, use of sources, and images—employed by journalists to make sense of this particular expression of political protest. He argues that Hallin's three spheres are a way for media framing practices to develop specific reportorial contexts, and each sphere develops its own distinct style of news reporting resources by different rhetorical tropes and discourses. Piers Robinson (2001, p. 536) uses the concept in relation to debates that have emerged over the extent to which the mass media serves elite interests or, alternatively, plays a powerful role in shaping political outcomes. His article reviews Hallin's spheres as an example of media-state relations, that highlights theoretical and empirical shortcomings in the 'manufacturing consent' thesis (Chomsky, McChesney). Robinson argues that a more nuanced and bi-directional understanding is needed of the direction of influence between media and the state that builds upon, rather than rejecting, existing theoretical accounts. Hallin's theory assumed a relatively homogenized media environment, where most producers were trying to reach most consumers. A more fractured media landscape can challenge this assumption because different audiences may place topics in different spheres, a concept related to the filter bubble, which posits that many members of the public choose to limit their media consumption to the areas of consensus and deviance that they personally prefer.

    Read more →
  • Zolostays

    Zolostays

    Zolostays is a real-tech co-living focused startup that provides ready-to-move rooms/beds. It was founded in 2015 by Nikhil Sikri, Akhil Sikri and Sneha Choudhry. == Overview == During the pandemic, Zolo provided 75 of rent-free accommodation to those who lost their jobs. Zolo uses bulk inventory in usually residential township and ties up with real estate companies to make the rooms/beds available. Zolostays has both revenue sharing and leased model. == History == Zolostays was founded in 2015 to solve the problem of students and young professionals who would move to temporarily go to other cities to study and work and look for affordable housing. In 2020, it was operating in 10 Indian cities. It has four round of funding, with total $98 million.

    Read more →
  • Yale shooting problem

    Yale shooting problem

    The Yale shooting problem is a conundrum or scenario in formal situational logic on which early logical solutions to the frame problem fail. The name of this problem comes from a scenario proposed by its inventors, Steve Hanks and Drew McDermott, working at Yale University when they proposed it. In this scenario, Fred (later identified as a turkey) is initially alive and a gun is initially unloaded. Loading the gun, waiting for a moment, and then shooting the gun at Fred is expected to kill Fred. However, if inertia is formalized in logic by minimizing the changes in this situation, then it cannot be uniquely proved that Fred is dead after loading, waiting, and shooting. In one solution, Fred indeed dies; in another (also logically correct) solution, the gun becomes mysteriously unloaded and Fred survives. Technically, this scenario is described by two fluents (a fluent is a condition that can change truth value over time): a l i v e {\displaystyle alive} and l o a d e d {\displaystyle loaded} . Initially, the first condition is true and the second is false. Then, the gun is loaded, some time passes, and the gun is fired. Such problems can be formalized in logic by considering four time points 0 {\displaystyle 0} , 1 {\displaystyle 1} , 2 {\displaystyle 2} , and 3 {\displaystyle 3} , and turning every fluent such as a l i v e {\displaystyle alive} into a predicate a l i v e ( t ) {\displaystyle alive(t)} depending on time. A direct formalization of the statement of the Yale shooting problem in logic is the following one: a l i v e ( 0 ) {\displaystyle alive(0)} ¬ l o a d e d ( 0 ) {\displaystyle \neg loaded(0)} t r u e → l o a d e d ( 1 ) {\displaystyle true\rightarrow loaded(1)} l o a d e d ( 2 ) → ¬ a l i v e ( 3 ) {\displaystyle loaded(2)\rightarrow \neg alive(3)} The first two formulae represent the initial state. The third formula formalizes the effect of loading the gun at time 1 {\displaystyle 1} . The fourth formula formalizes the effect of shooting at Fred at time 2 {\displaystyle 2} . This is a simplified formalization in which action names are neglected and the effects of actions are directly specified for the time points in which the actions are executed. See situation calculus for details. The formulae above, while being direct formalizations of the known facts, do not suffice to correctly characterize the domain. Indeed, ¬ a l i v e ( 1 ) {\displaystyle \neg alive(1)} is consistent with all these formulae, although there is no reason to believe that Fred dies before the gun has been shot. The problem is that the formulae above only include the effects of actions, but do not specify that all fluents not changed by the actions remain the same. In other words, a formula a l i v e ( 0 ) ≡ a l i v e ( 1 ) {\displaystyle alive(0)\equiv alive(1)} must be added to formalize the implicit assumption that loading the gun only changes the value of l o a d e d {\displaystyle loaded} and not the value of a l i v e {\displaystyle alive} . The necessity of a large number of formulae stating the obvious fact that conditions do not change unless an action changes them is known as the frame problem. An early solution to the frame problem was based on minimizing the changes. In other words, the scenario is formalized by the formulae above (that specify only the effects of actions) and by the assumption that the changes in the fluents over time are as minimal as possible. The rationale is that the formulae above enforce all effect of actions to take place, while minimization should restrict the changes to exactly those due to the actions. In the Yale shooting scenario, one possible evaluation of the fluents in which the changes are minimized is the following one. This is the expected solution. It contains two fluent changes: l o a d e d {\displaystyle loaded} becomes true at time 1 and a l i v e {\displaystyle alive} becomes false at time 3. The following evaluation also satisfies all formulae above. In this evaluation, there are still two changes only: l o a d e d {\displaystyle loaded} becomes true at time 1 and false at time 2. As a result, this evaluation is considered a valid description of the evolution of the state, although there is no valid reason to explain l o a d e d {\displaystyle loaded} being false at time 2. The fact that minimization of changes leads to wrong solution is the motivation for the introduction of the Yale shooting problem. While the Yale shooting problem has been considered a severe obstacle to the use of logic for formalizing dynamical scenarios, solutions to it have been known since the late 1980s. One solution involves the use of predicate completion in the specification of actions: in this solution, the fact that shooting causes Fred to die is formalized by the preconditions: alive and loaded, and the effect is that alive changes value (since alive was true before, this corresponds to alive becoming false). By turning this implication into an if and only if statement, the effects of shooting are correctly formalized. (Predicate completion is more complicated when there is more than one implication involved.) A solution proposed by Erik Sandewall was to include a new condition of occlusion, which formalizes the “permission to change” for a fluent. The effect of an action that might change a fluent is therefore that the fluent has the new value, and that the occlusion is made (temporarily) true. What is minimized is not the set of changes, but the set of occlusions being true. Another constraint specifying that no fluent changes unless occlusion is true completes this solution. The Yale shooting scenario is also correctly formalized by the Reiter version of the situation calculus, the fluent calculus, and the action description languages. In 2005, the 1985 paper in which the Yale shooting scenario was first described received the AAAI Classic Paper award. In spite of being a solved problem, that example is still sometimes mentioned in recent research papers, where it is used as an illustrative example (e.g., for explaining the syntax of a new logic for reasoning about actions), rather than being presented as a problem.

    Read more →
  • Mathematical model

    Mathematical model

    A mathematical model is an abstract description of a concrete system using mathematical concepts and language. The process of developing a mathematical model is termed mathematical modeling. Mathematical models are used in many fields, including applied mathematics, natural sciences, social sciences and engineering. In particular, the field of operations research studies the use of mathematical modelling and related tools to solve problems in business or military operations. A model may help to characterize a system by studying the effects of different components, which may be used to make predictions about behavior or solve specific problems. == Elements of a mathematical model == Mathematical models can take many forms, including dynamical systems, statistical models, differential equations, or game theoretic models. These and other types of models can overlap, with a given model involving a variety of abstract structures. In many cases, the quality of a scientific field depends on how well the mathematical models developed on the theoretical side agree with results of repeatable experiments. Lack of agreement between theoretical mathematical models and experimental measurements often leads to important advances as better theories are developed. In the physical sciences, a traditional mathematical model contains most of the following elements: Governing equations Supplementary sub-models Defining equations Constitutive equations Assumptions and constraints Initial and boundary conditions Classical constraints and kinematic equations == Classifications == Mathematical models are of different types: === Linear vs. nonlinear === If all the operators in a mathematical model exhibit linearity, the resulting mathematical model is defined as linear. All other models are considered nonlinear. The definition of linearity and nonlinearity is dependent on context, and linear models may have nonlinear expressions in them. For example, in a statistical linear model, it is assumed that a relationship is linear in the parameters, but it may be nonlinear in the predictor variables. Similarly, a differential equation is said to be linear if it can be written with linear differential operators, but it can still have nonlinear expressions in it. In a mathematical programming model, if the objective functions and constraints are represented entirely by linear equations, then the model is regarded as a linear model. If one or more of the objective functions or constraints are represented with a nonlinear equation, then the model is known as a nonlinear model. Linear structure implies that a problem can be decomposed into simpler parts that can be treated independently or analyzed at a different scale, and therefore that the results will remain valid if the initial is recomposed or rescaled. Nonlinearity, even in fairly simple systems, is often associated with phenomena such as chaos and irreversibility. Although there are exceptions, nonlinear systems and models tend to be more difficult to study than linear ones. A common approach to nonlinear problems is linearization, but this can be problematic if one is trying to study aspects such as irreversibility, which are strongly tied to nonlinearity. === Static vs. dynamic === A dynamic model accounts for time-dependent changes in the state of the system, while a static (or steady-state) model calculates the system in equilibrium, and thus is time-invariant. Dynamic models are typically represented by differential equations or difference equations. === Explicit vs. implicit === If all of the input parameters of the overall model are known, and the output parameters can be calculated by a finite series of computations, the model is said to be explicit. But sometimes it is the output parameters which are known, and the corresponding inputs must be solved for by an iterative procedure, such as Newton's method or Broyden's method. In such a case the model is said to be implicit. For example, a jet engine's physical properties such as turbine and nozzle throat areas can be explicitly calculated given a design thermodynamic cycle (air and fuel flow rates, pressures, and temperatures) at a specific flight condition and power setting, but the engine's operating cycles at other flight conditions and power settings cannot be explicitly calculated from the constant physical properties. === Discrete vs. continuous === A discrete model treats objects as discrete, such as the particles in a molecular model or the states in a statistical model; while a continuous model represents the objects in a continuous manner, such as the velocity field of fluid in pipe flows, temperatures and stresses in a solid, and electric field that applies continuously over the entire model due to a point charge. === Deterministic vs. probabilistic (stochastic) === A deterministic model is one in which every set of variable states is uniquely determined by parameters in the model and by sets of previous states of these variables; therefore, a deterministic model always performs the same way for a given set of initial conditions. Conversely, in a stochastic model—usually called a "statistical model"—randomness is present, and variable states are not described by unique values, but rather by probability distributions. === Deductive, inductive, or floating === A deductive model is a logical structure based on a theory. An inductive model arises from empirical findings and generalization from them. If a model rests on neither theory nor observation, it may be described as a 'floating' model. Application of mathematics in social sciences outside of economics has been criticized for unfounded models. Application of catastrophe theory in science has been characterized as a floating model. === Strategic vs. non-strategic === Models used in game theory are distinct in the sense that they model agents with incompatible incentives, such as competing species or bidders in an auction. Strategic models assume that players are autonomous decision makers who rationally choose actions that maximize their objective function. A key challenge of using strategic models is defining and computing solution concepts such as the Nash equilibrium. An interesting property of strategic models is that they separate reasoning about rules of the game from reasoning about behavior of the players. == Construction == In business and engineering, mathematical models may be used to maximize a certain output. The system under consideration will require certain inputs. The system relating inputs to outputs depends on other variables too: decision variables, state variables, exogenous variables, and random variables. Decision variables are sometimes known as independent variables. Exogenous variables are sometimes known as parameters or constants. The variables are not independent of each other as the state variables are dependent on the decision, input, random, and exogenous variables. Furthermore, the output variables are dependent on the state of the system (represented by the state variables). Objectives and constraints of the system and its users can be represented as functions of the output variables or state variables. The objective functions will depend on the perspective of the model's user. Depending on the context, an objective function is also known as an index of performance, as it is some measure of interest to the user. Although there is no limit to the number of objective functions and constraints a model can have, using or optimizing the model becomes more involved (computationally) as the number increases. For example, economists often apply linear algebra when using input–output models. Complicated mathematical models that have many variables may be consolidated by use of vectors where one symbol represents several variables. === A priori information === Mathematical modeling problems are often classified into black box or white box models, according to how much a priori information on the system is available. A black-box model is a system of which there is no a priori information available. A white-box model (also called glass box or clear box) is a system where all necessary information is available. Practically all systems are somewhere between the black-box and white-box models, so this concept is useful only as an intuitive guide for deciding which approach to take. Usually, it is preferable to use as much a priori information as possible to make the model more accurate. Therefore, the white-box models are usually considered easier, because if you have used the information correctly, then the model will behave correctly. Often the a priori information comes in forms of knowing the type of functions relating different variables. For example, if we make a model of how a medicine works in a human system, we know that usually the amount of medicine in the blood is an exponentially decaying function, but we are still left with several unknown parameters; how

    Read more →
  • PyTorch

    PyTorch

    PyTorch is an open-source deep learning library, originally developed by Meta Platforms and currently developed with support from the Linux Foundation. The successor to Torch, PyTorch provides a high-level API that builds upon optimised, low-level implementations of deep learning algorithms and architectures, such as the Transformer, or SGD. Notably, this API simplifies model training and inference to a few lines of code. PyTorch allows for automatic parallelization of training and, internally, implements CUDA bindings that speed training further by leveraging GPU resources. PyTorch utilises the tensor as a fundamental data type, similarly to NumPy. Training is facilitated by a reversed automatic differentiation system, Autograd, that constructs a directed acyclic graph of the operations (and their arguments) executed by a model during its forward pass. With a loss, backpropagation is then undertaken. As of 2025, PyTorch remains one of the most popular deep learning libraries, alongside others such as TensorFlow and Keras. It can be installed using Anaconda package managers. A number of commercial deep learning architectures are built on top of PyTorch, including ChatGPT, Tesla Autopilot, Uber's Pyro, and Hugging Face's Transformers. == History == In 2001, Torch was written and released under a GPL. It was a machine-learning library written in C++ and CUDA, supporting methods including neural networks, support vector machines (SVM), hidden Markov models, etc. Around 2010, it was rewritten by Ronan Collobert, Clement Farabet and Koray Kavuckuoglu. This was known as Torch7 or LuaTorch. This was written so that the backend was in C and the frontend was in Lua. In mid-2016, some developers refactored it to decouple the frontend and the backend, with strong influence from torch-autograd and Chainer. In turn, torch-autograd was influenced by HIPS/autograd. Development on Torch7 ceased in 2018 and was subsumed by the PyTorch project. Meta (formerly known as Facebook) operates both PyTorch and Convolutional Architecture for Fast Feature Embedding (Caffe2), but models defined by the two frameworks were mutually incompatible. The Open Neural Network Exchange (ONNX) project was created by Meta and Microsoft in September 2017 to decouple deep learning frameworks from hardware-specific runtimes, allowing models to be converted between frameworks and optimized for execution providers like NVIDIA’s TensorRT. Caffe2 was merged into PyTorch at the end of March 2018. In September 2022, Meta announced that PyTorch would be governed by the independent PyTorch Foundation, a newly created subsidiary of the Linux Foundation. PyTorch 2.0 was released on 15 March 2023, introducing TorchDynamo, a Python-level compiler that makes code run up to two times faster, along with significant improvements in training and inference performance across major cloud platforms. == PyTorch tensors == PyTorch defines a class called Tensor (torch.Tensor) to store and operate on homogeneous multidimensional rectangular arrays of numbers. PyTorch supports various sub-types of multi-dimensional arrays, or Tensors. PyTorch Tensors are similar to NumPy Arrays, but can also be operated on by a CUDA-capable NVIDIA GPU. PyTorch has also been developing support for other GPU platforms, for example, AMD's ROCm and Apple's Metal Framework. == PyTorch neural networks == PyTorch defines a module called nn (torch.nn) to describe neural networks and to support training. This module offers a comprehensive collection of building blocks for neural networks, including various layers and activation functions, enabling the construction of complex models. Networks are built by inheriting from the torch.nn module and defining the sequence of operations in the forward() function. == PyTorch Serialized File Format == Pytorch can save and load models using its own file format, which is a ZIP64 archive containing the model weights in a Python pickle file, and other information such as the byte order. The file extensions .pt and .pth are commonly used for these files. == Example == The following program shows the low-level functionality of the library with a simple example. The following code block defines a neural network with linear layers using the nn module.

    Read more →
  • Glow (app)

    Glow (app)

    Glow is a fertility awareness and period-tracking app. It is part of a suite of mobile apps focused on women's reproductive health and childcare, which includes Eve by Glow (a dedicated period tracker), Glow Nurture (a pregnancy tracker), and Glow Baby (a baby development tracker). The Glow company also operates an online shop that sells several fertility-related products, including ovulation test strips, pregnancy tests, and wearable breast pumps. In 2024, Glow was reported to have approximately 25 million users across its various apps and community message boards. == History == Glow debuted in August 2013 as an iOS app. It was founded by Michael Huang and Max Levchin and launched with $6 million in Series A funding from venture capital firms Founders Fund and Andreesen Horowitz. In 2014, Glow raised an additional $17 million in Series B funding, with Formation 8 joining existing investors. In 2015, Glow launched Ruby, an app dedicated to sexual health. That year, Wired reported that the company had added features to their apps allowing men to monitor their fertility. Glow subsequently released an additional set of apps focused on pregnancy tracking and infant development. In 2016, Glow reported that it had a total of approximately 3 million users; by 2018, this had grown to 15 million. Vox described it as one of the “big two” period and fertility tracking apps and the one that had started the “boom” in the femtech space. == Application and features == Glow was initially described as a fertility application that applied data-driven methods to menstrual and ovulation tracking. Core features include cycle logging, ovulation prediction, and symptom tracking. The app also provides educational content related to reproductive health and childcare, as well as a set of online message boards that allow individuals to share experiences and seek peer support. == Privacy and legal issues == Glow has received significant media attention for its privacy and security practices. In 2016, Consumer Reports identified potential exploits in the Glow app that they claimed could have exposed private user data to hackers. Glow subsequently reported that it had fixed the vulnerabilities and told The Washington Post they had no evidence that user data had been compromised. In September 2020, the California Attorney General announced a settlement with Glow related to Consumer Reports’ findings, which included a $250,000 civil penalty. Following the US Supreme Court's 2022 Dobbs v. Jackson ruling, which legalized state-level bans on abortion, Glow (and other fertility trackers, such as Clue and Flo) came under additional scrutiny over concerns that user data on abortions could be reported to law enforcement. After this surge of media interest, a research team affiliated with the University of New South Wales conducted an investigation into the privacy practices of several popular fertility apps, including Glow. Their review of Glow was mixed, noting that they provided several privacy settings and de-identified sensitive data, but that user information could still be disclosed in the future if the app was sold. Glow rejected that claim, telling the Australian Associated Press that it "did not share" personal data. The company also cited several internal security measures it had implemented and its apps' offline data protection setting, which allows users to permanently delete their health-related data. == Reception == In 2014, Fast Company reported that 20,000 women had used Glow to conceive. Later that year, The Guardian included Glow Nurture on its list of the best iPhone apps of 2014. Media coverage often praised Glow's array of menstrual tracking options, although some reviews also noted that fertility apps are not birth control tools and cautioned against relying on them for that purpose. In 2019, Cosmopolitan singled Glow's community of users as one of its standout features.

    Read more →
  • Early-exit network

    Early-exit network

    Early-exit networks are a class of dynamic neural networks designed for efficient inference by allowing models to make confident predictions at intermediate layers, rather than processing the full network. Early-exit mechanisms are methods for deep neural networks that add intermediate classifiers, allowing inference to stop at earlier layers for inputs assessed as low uncertainty. Decisions to exit are typically based on confidence measures such as softmax-derived scores, classification margins, or entropy-based criteria, with the goal of reducing computational cost. These approaches are commonly paired with specialized training procedures and system-level optimizations to improve efficiency while preserving accuracy. The main idea behind the technology is to stop excessive calculations when a good answer can already be given with a high degree of probability, which can save both computation and time. Early-exit networks have also been extended with expert-based exit criteria, where intermediate classifiers are treated as multiple “experts” whose predictions and confidence scores can be aggregated to decide whether to stop computation early. Hardware implementations are also being developed.

    Read more →
  • Mistral AI

    Mistral AI

    Mistral AI SAS (French: [mistʁal]) is a French artificial intelligence (AI) company, headquartered in Paris. Founded in 2023, it has open-weight large language models (LLMs), with both open-source and proprietary AI models. As of 2025 the company has a valuation of more than US$14 billion. == Namesake == The company is named after the mistral, a powerful, cold wind in southern France, a term which originates from the Occitan language. == History == Mistral AI was established in April 2023 by three French AI researchers, Arthur Mensch, Guillaume Lample and Timothée Lacroix. Mensch, an expert in advanced AI systems, is a former employee of Google DeepMind; Lample and Lacroix, meanwhile, are large-scale AI models specialists who had worked for Meta Platforms. The trio originally met during their studies at École Polytechnique. == Company operation == === Funding === In June 2023, the start-up carried out a first fundraising of €105 million ($117 million) with investors including the American fund Lightspeed Venture Partners, Eric Schmidt, Xavier Niel and JCDecaux. The valuation was then estimated by the Financial Times at €240 million ($267 million). On 10 December 2023, Mistral AI announced that it had raised €385 million ($428 million) as part of its second fundraising. This round of financing involves the Californian fund Andreessen Horowitz, BNP Paribas and the software publisher Salesforce. It was valued at over €2 billion. On 26 February 2024, Microsoft announced an investment of $16 million in Mistral AI. On 16 April 2024, reporting revealed that Mistral was in talks to raise €500 million, a deal that would more than double its current valuation to at least €5 billion. In June 2024, Mistral AI secured a €600 million ($645 million) funding round, increasing its valuation to €5.8 billion ($6.2 billion). Based on valuation, as of June 2024, the company was ranked fourth globally in the AI industry, and first outside the San Francisco Bay Area. In April 2025, Mistral AI announced a €100 million partnership with the shipping company CMA CGM. In August 2025, the Financial Times reported that Mistral was in talks to raise $1 billion at a $10 billion valuation. In September 2025, Bloomberg announced that Mistral AI has secured a €2 billion investment valuing it at €12 billion ($14 billion). This comes after $1.5 billion investment from Dutch company ASML, which owns 11% of Mistral. In February 2026, Mistral acquired Koyeb, a Paris-based AI startup. Later that month, Mistral AI announced a multi-year strategic partnership with Accenture to help enterprises deploy sovereign AI solutions at scale. In March 2026 Mistral raised $830 million in order to build new datacenters near Paris and in Sweden. == Services == On 19 November, 2024, the company announced updates for Le Chat (pronounced /lə ʃa/ in French, like the French word for "cat"). It added the ability to create images, using Black Forest Labs' Flux Pro model. On 6 February 2025, Mistral AI released Le Chat on iOS and Android mobile devices. Mistral AI also introduced a Pro subscription tier, priced at $14.99 per month, which provides access to more advanced models, unlimited messaging, and web browsing. At the end of May 2026, Le Chat was renamed Vibe, and new features were introduced at the same time. == Models == The following table lists the main model versions of Mistral, describing the significant changes included with each version: === Mistral 7B === Mistral AI claimed in the Mistral 7B release blog post that the model outperforms LLaMA 2 13B on all benchmarks tested, and is on par with LLaMA 34B on many benchmarks tested, despite having only 7 billion parameters, a small size compared to its competitors. === Mixtral 8x7B === Mistral AI claimed in 2023 that its model beat both LLaMA 70B, and GPT-3.5 in most benchmarks. In March 2024, research conducted by Patronus AI comparing performance of LLMs on a 100-question test with prompts to generate text from books protected under U.S. copyright law found that OpenAI's GPT-4, Mixtral, Meta AI's LLaMA-2, and Anthropic's Claude 2 generated copyrighted text verbatim in 44%, 22%, 10%, and 8% of responses respectively. === Mistral Small 3.1 === On 17 March 2025, Mistral released Mistral Small 3.1 as a smaller, more efficient model. === Mistral Medium 3 === On 7 May 2025, Mistral AI released Mistral Medium 3. === Magistral Small and Magistral Medium === On 10 June 2025, Mistral AI released their first AI reasoning models: Magistral Small (open-source), and Magistral Medium, models which are purported to have chain-of-thought capabilities. === Mistral Large 3 and Ministral 3 === On 2 December 2025, Mistral AI released Mistral Large 3, a sparse, mixture-of-experts model with 41 billion active parameters and 675 billion total parameters, and Ministral 3, three small, dense models with 3 billion, 7 billion and 14 billion parameters. === Devstral 2 and Devstral Small 2 === On 10 December 2025, Mistral AI released Devstral 2 and Devstral Small 2. Devstral Small 2, a 24B parameter model is claimed to achieve better performance at coding than Qwen 3 Coder Flash model which is a 30B parameter model.

    Read more →